From 7e0811ec56dbe7eba92757c7697aac78b7b1ff1c Mon Sep 17 00:00:00 2001 From: me-no-dev Date: Sun, 13 Nov 2016 17:23:44 +0200 Subject: [PATCH] Update tools to latest IDF --- libraries/WiFi/src/WiFiGeneric.cpp | 1 - libraries/Wire/src/Wire.cpp | 1 + platform.txt | 4 +- tools/sdk/bin/bootloader.bin | Bin 4192 -> 4144 bytes tools/sdk/include/bt/bt.h | 19 +- tools/sdk/include/config/sdkconfig.h | 4 + tools/sdk/include/driver/driver/gpio.h | 473 ++- tools/sdk/include/driver/driver/ledc.h | 330 +- tools/sdk/include/driver/driver/uart.h | 763 ++++ tools/sdk/include/esp32/esp_attr.h | 9 +- tools/sdk/include/esp32/esp_crosscore_int.h | 42 + tools/sdk/include/esp32/esp_deepsleep.h | 36 +- tools/sdk/include/esp32/esp_err.h | 7 + .../sdk/include/esp32/esp_flash_data_types.h | 106 + tools/sdk/include/esp32/esp_system.h | 9 +- tools/sdk/include/esp32/esp_wifi.h | 292 +- tools/sdk/include/esp32/esp_wifi_internal.h | 42 +- tools/sdk/include/esp32/esp_wifi_types.h | 4 +- tools/sdk/include/esp32/soc/dport_reg.h | 5 + tools/sdk/include/esp32/soc/frc_timer_reg.h | 49 + tools/sdk/include/esp32/soc/rmt_struct.h | 7 +- tools/sdk/include/esp32/soc/rtc_cntl_reg.h | 3 + tools/sdk/include/esp32/soc/soc.h | 9 +- tools/sdk/include/esp32/soc/uart_reg.h | 4 +- .../freertos/freertos/FreeRTOSConfig.h | 2 +- .../sdk/include/freertos/freertos/portable.h | 8 + tools/sdk/include/freertos/freertos/ringbuf.h | 50 +- tools/sdk/include/log/esp_log.h | 97 +- tools/sdk/include/lwip/lwipopts.h | 80 +- tools/sdk/include/lwip/port/lwipopts.h | 80 +- tools/sdk/include/nvs_flash/nvs.h | 65 +- tools/sdk/include/nvs_flash/nvs_flash.h | 2 + tools/sdk/include/spi_flash/esp_partition.h | 242 ++ tools/sdk/include/spi_flash/esp_spi_flash.h | 108 +- .../sdk/include/tcpip_adapter/tcpip_adapter.h | 4 +- tools/sdk/include/wpa_supplicant/byteswap.h | 65 + tools/sdk/include/wpa_supplicant/crypto/aes.h | 27 + .../sdk/include/wpa_supplicant/crypto/aes_i.h | 131 + .../include/wpa_supplicant/crypto/aes_wrap.h | 48 + .../include/wpa_supplicant/crypto/base64.h | 23 + .../include/wpa_supplicant/crypto/common.h | 481 +++ .../include/wpa_supplicant/crypto/crypto.h | 471 +++ .../include/wpa_supplicant/crypto/dh_group5.h | 23 + .../include/wpa_supplicant/crypto/dh_groups.h | 32 + .../include/wpa_supplicant/crypto/includes.h | 65 + tools/sdk/include/wpa_supplicant/crypto/md5.h | 35 + .../sdk/include/wpa_supplicant/crypto/md5_i.h | 29 + .../include/wpa_supplicant/crypto/random.h | 34 + .../sdk/include/wpa_supplicant/crypto/sha1.h | 33 + .../include/wpa_supplicant/crypto/sha1_i.h | 29 + .../include/wpa_supplicant/crypto/sha256.h | 27 + tools/sdk/include/wpa_supplicant/endian.h | 229 ++ tools/sdk/include/wpa_supplicant/os.h | 286 ++ .../include/wpa_supplicant/wpa/ap_config.h | 544 +++ tools/sdk/include/wpa_supplicant/wpa/common.h | 324 ++ tools/sdk/include/wpa_supplicant/wpa/defs.h | 307 ++ .../include/wpa_supplicant/wpa/eapol_common.h | 71 + .../sdk/include/wpa_supplicant/wpa/hostapd.h | 312 ++ .../wpa_supplicant/wpa/ieee80211_crypto.h | 226 ++ .../wpa_supplicant/wpa/ieee802_11_defs.h | 607 +++ .../include/wpa_supplicant/wpa/ieee802_1x.h | 64 + .../sdk/include/wpa_supplicant/wpa/includes.h | 31 + tools/sdk/include/wpa_supplicant/wpa/list.h | 101 + .../sdk/include/wpa_supplicant/wpa/sta_info.h | 194 + .../wpa_supplicant/wpa/state_machine.h | 138 + tools/sdk/include/wpa_supplicant/wpa/wpa.h | 193 + .../sdk/include/wpa_supplicant/wpa/wpa_auth.h | 292 ++ .../include/wpa_supplicant/wpa/wpa_auth_i.h | 234 ++ .../include/wpa_supplicant/wpa/wpa_auth_ie.h | 50 + .../include/wpa_supplicant/wpa/wpa_common.h | 332 ++ .../include/wpa_supplicant/wpa/wpa_debug.h | 193 + tools/sdk/include/wpa_supplicant/wpa/wpa_i.h | 89 + tools/sdk/include/wpa_supplicant/wpa/wpa_ie.h | 56 + tools/sdk/include/wpa_supplicant/wpa/wpabuf.h | 168 + .../include/wpa_supplicant/wpa/wpas_glue.h | 31 + .../wpa_supplicant/wpa2/eap_peer/eap.h | 24 + .../wpa_supplicant/wpa2/eap_peer/eap_common.h | 23 + .../wpa_supplicant/wpa2/eap_peer/eap_config.h | 220 ++ .../wpa_supplicant/wpa2/eap_peer/eap_defs.h | 92 + .../wpa_supplicant/wpa2/eap_peer/eap_i.h | 88 + .../wpa_supplicant/wpa2/eap_peer/eap_tls.h | 25 + .../wpa2/eap_peer/eap_tls_common.h | 131 + .../include/wpa_supplicant/wpa2/tls/asn1.h | 66 + .../include/wpa_supplicant/wpa2/tls/bignum.h | 38 + .../wpa_supplicant/wpa2/tls/libtommath.h | 3443 +++++++++++++++++ .../include/wpa_supplicant/wpa2/tls/pkcs1.h | 22 + .../include/wpa_supplicant/wpa2/tls/pkcs5.h | 16 + .../include/wpa_supplicant/wpa2/tls/pkcs8.h | 16 + .../sdk/include/wpa_supplicant/wpa2/tls/rsa.h | 23 + .../sdk/include/wpa_supplicant/wpa2/tls/tls.h | 537 +++ .../wpa_supplicant/wpa2/tls/tlsv1_client.h | 54 + .../wpa_supplicant/wpa2/tls/tlsv1_client_i.h | 84 + .../wpa_supplicant/wpa2/tls/tlsv1_common.h | 261 ++ .../wpa_supplicant/wpa2/tls/tlsv1_cred.h | 40 + .../wpa_supplicant/wpa2/tls/tlsv1_record.h | 71 + .../wpa_supplicant/wpa2/tls/tlsv1_server.h | 48 + .../wpa_supplicant/wpa2/tls/tlsv1_server_i.h | 71 + .../include/wpa_supplicant/wpa2/tls/x509v3.h | 123 + .../wpa_supplicant/wpa2/utils/base64.h | 17 + .../wpa_supplicant/wpa2/utils/ext_password.h | 33 + .../wpa2/utils/ext_password_i.h | 23 + tools/sdk/include/xtensa-debug-module/eri.h | 31 + tools/sdk/include/xtensa-debug-module/trax.h | 62 + .../xtensa-debug-module/xtensa-debug-module.h | 75 + tools/sdk/ld/esp32.common.ld | 46 +- tools/sdk/lib/libbt.a | Bin 2080 -> 2080 bytes tools/sdk/lib/libcoexist.a | Bin 0 -> 1910 bytes tools/sdk/lib/libcore.a | Bin 37280 -> 37232 bytes tools/sdk/lib/libcrypto.a | Bin 129180 -> 0 bytes tools/sdk/lib/libdriver.a | Bin 106846 -> 278402 bytes tools/sdk/lib/libesp32.a | Bin 268170 -> 282052 bytes tools/sdk/lib/libexpat.a | Bin 1250788 -> 1250788 bytes tools/sdk/lib/libfreertos.a | Bin 524286 -> 555488 bytes tools/sdk/lib/libjson.a | Bin 209284 -> 209284 bytes tools/sdk/lib/liblog.a | Bin 21206 -> 21234 bytes tools/sdk/lib/liblwip.a | Bin 1780652 -> 1779860 bytes tools/sdk/lib/libmbedtls.a | Bin 3457746 -> 3457858 bytes tools/sdk/lib/libnet80211.a | Bin 551050 -> 552480 bytes tools/sdk/lib/libnewlib.a | Bin 67082 -> 77676 bytes tools/sdk/lib/libnghttp.a | Bin 1537150 -> 1537150 bytes tools/sdk/lib/libnvs_flash.a | Bin 627592 -> 632798 bytes tools/sdk/lib/libopenssl.a | Bin 0 -> 273216 bytes tools/sdk/lib/libphy.a | Bin 85192 -> 327010 bytes tools/sdk/lib/libpp.a | Bin 277312 -> 278476 bytes tools/sdk/lib/librtc.a | Bin 108990 -> 322822 bytes tools/sdk/lib/libspi_flash.a | Bin 26768 -> 89448 bytes tools/sdk/lib/libtcpip_adapter.a | Bin 60586 -> 60626 bytes tools/sdk/lib/libvfs.a | Bin 67222 -> 68086 bytes tools/sdk/lib/libwpa.a | Bin 137394 -> 137394 bytes tools/sdk/lib/libwpa_supplicant.a | Bin 0 -> 388324 bytes tools/sdk/lib/libxtensa-debug-module.a | Bin 0 -> 12062 bytes 131 files changed, 14619 insertions(+), 766 deletions(-) create mode 100644 tools/sdk/include/driver/driver/uart.h create mode 100644 tools/sdk/include/esp32/esp_crosscore_int.h create mode 100644 tools/sdk/include/esp32/esp_flash_data_types.h create mode 100644 tools/sdk/include/esp32/soc/frc_timer_reg.h create mode 100644 tools/sdk/include/spi_flash/esp_partition.h create mode 100644 tools/sdk/include/wpa_supplicant/byteswap.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/aes.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/aes_i.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/aes_wrap.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/base64.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/common.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/crypto.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/dh_group5.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/dh_groups.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/includes.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/md5.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/md5_i.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/random.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/sha1.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/sha1_i.h create mode 100644 tools/sdk/include/wpa_supplicant/crypto/sha256.h create mode 100644 tools/sdk/include/wpa_supplicant/endian.h create mode 100644 tools/sdk/include/wpa_supplicant/os.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/ap_config.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/defs.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/eapol_common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/hostapd.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/ieee80211_crypto.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/ieee802_11_defs.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/ieee802_1x.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/includes.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/list.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/sta_info.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/state_machine.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_auth.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_auth_i.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_auth_ie.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_debug.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_i.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpa_ie.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpabuf.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa/wpas_glue.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_config.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_defs.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_i.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls_common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/asn1.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/bignum.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/libtommath.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs1.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs5.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs8.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/rsa.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tls.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client_i.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_common.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_cred.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_record.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server_i.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/tls/x509v3.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/utils/base64.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password.h create mode 100644 tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password_i.h create mode 100644 tools/sdk/include/xtensa-debug-module/eri.h create mode 100644 tools/sdk/include/xtensa-debug-module/trax.h create mode 100644 tools/sdk/include/xtensa-debug-module/xtensa-debug-module.h create mode 100644 tools/sdk/lib/libcoexist.a delete mode 100644 tools/sdk/lib/libcrypto.a create mode 100644 tools/sdk/lib/libopenssl.a mode change 100755 => 100644 tools/sdk/lib/libphy.a mode change 100755 => 100644 tools/sdk/lib/librtc.a create mode 100644 tools/sdk/lib/libwpa_supplicant.a create mode 100644 tools/sdk/lib/libxtensa-debug-module.a diff --git a/libraries/WiFi/src/WiFiGeneric.cpp b/libraries/WiFi/src/WiFiGeneric.cpp index 9cd2fd32..39646586 100644 --- a/libraries/WiFi/src/WiFiGeneric.cpp +++ b/libraries/WiFi/src/WiFiGeneric.cpp @@ -290,7 +290,6 @@ void initWiFi() { wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); nvs_flash_init(); - system_init(); tcpip_adapter_init(); esp_event_loop_init(WiFiGenericClass::_eventCallback, NULL); esp_wifi_init(&cfg); diff --git a/libraries/Wire/src/Wire.cpp b/libraries/Wire/src/Wire.cpp index 08934e8d..9ea46500 100644 --- a/libraries/Wire/src/Wire.cpp +++ b/libraries/Wire/src/Wire.cpp @@ -29,6 +29,7 @@ extern "C" { #include "esp32-hal-i2c.h" #include "Wire.h" +#include "Arduino.h" TwoWire::TwoWire(uint8_t bus_num) :num(bus_num & 1) diff --git a/platform.txt b/platform.txt index 5eb4509f..3d21a581 100644 --- a/platform.txt +++ b/platform.txt @@ -13,7 +13,7 @@ compiler.warning_flags.all=-Wall -Wextra compiler.path={runtime.tools.xtensa-esp32-elf-gcc.path}/bin/ compiler.sdk.path={runtime.platform.path}/tools/sdk -compiler.cpreprocessor.flags=-DESP_PLATFORM -DMBEDTLS_CONFIG_FILE='"mbedtls/esp_config.h"' -DHAVE_CONFIG_H "-I{compiler.sdk.path}/include/config" "-I{compiler.sdk.path}/include/bt" "-I{compiler.sdk.path}/include/driver" "-I{compiler.sdk.path}/include/esp32" "-I{compiler.sdk.path}/include/freertos" "-I{compiler.sdk.path}/include/log" "-I{compiler.sdk.path}/include/vfs" "-I{compiler.sdk.path}/include/newlib" "-I{compiler.sdk.path}/include/nvs_flash" "-I{compiler.sdk.path}/include/spi_flash" "-I{compiler.sdk.path}/include/tcpip_adapter" "-I{compiler.sdk.path}/include/expat" "-I{compiler.sdk.path}/include/json" "-I{compiler.sdk.path}/include/mbedtls" "-I{compiler.sdk.path}/include/nghttp" "-I{compiler.sdk.path}/include/lwip" +compiler.cpreprocessor.flags=-DESP_PLATFORM -DMBEDTLS_CONFIG_FILE='"mbedtls/esp_config.h"' -DHAVE_CONFIG_H "-I{compiler.sdk.path}/include/config" "-I{compiler.sdk.path}/include/bt" "-I{compiler.sdk.path}/include/driver" "-I{compiler.sdk.path}/include/esp32" "-I{compiler.sdk.path}/include/freertos" "-I{compiler.sdk.path}/include/log" "-I{compiler.sdk.path}/include/vfs" "-I{compiler.sdk.path}/include/newlib" "-I{compiler.sdk.path}/include/nvs_flash" "-I{compiler.sdk.path}/include/spi_flash" "-I{compiler.sdk.path}/include/tcpip_adapter" "-I{compiler.sdk.path}/include/xtensa-debug-module" "-I{compiler.sdk.path}/include/wpa_supplicant" "-I{compiler.sdk.path}/include/expat" "-I{compiler.sdk.path}/include/json" "-I{compiler.sdk.path}/include/mbedtls" "-I{compiler.sdk.path}/include/nghttp" "-I{compiler.sdk.path}/include/lwip" compiler.c.cmd=xtensa-esp32-elf-gcc compiler.c.flags=-c {compiler.warning_flags} -Os -g3 -Wpointer-arith -Wno-error=unused-function -Wno-error=unused-but-set-variable -Wno-error=unused-variable -ffunction-sections -fdata-sections -mlongcalls -nostdlib -MMD -std=gnu99 -fstrict-volatile-bitfields @@ -26,7 +26,7 @@ compiler.S.flags=-c -g3 -x assembler-with-cpp -MMD -mlongcalls compiler.c.elf.cmd=xtensa-esp32-elf-gcc compiler.c.elf.flags="-L{compiler.sdk.path}/lib" "-L{compiler.sdk.path}/ld" -nostdlib -T esp32_out.ld -T esp32.common.ld -T esp32.rom.ld -T esp32.peripherals.ld -u call_user_start_cpu0 -Wl,--gc-sections -Wl,-static -Wl,--undefined=uxTopUsedPriority -compiler.c.elf.libs=-lgcc -lc -lm -lhal -lcore -lnet80211 -lphy -lrtc -lpp -lwpa -lsmartconfig -lbtdm_app -lbt -ldriver -lesp32 -lcrypto -lexpat -lfreertos -ljson -llog -llwip -lmbedtls -lnghttp -lnvs_flash -lspi_flash -ltcpip_adapter -lnewlib -lvfs +compiler.c.elf.libs=-lbt -lbtdm_app -lc -lcoexist -lcore -ldriver -lesp32 -lexpat -lfreertos -lg -lhal -ljson -llog -llwip -lm -lmbedtls -lnet80211 -lnewlib -lnghttp -lnvs_flash -lopenssl -lphy -lpp -lrtc -lsmartconfig -lspi_flash -ltcpip_adapter -lvfs -lwpa -lwpa_supplicant -lxtensa-debug-module compiler.as.cmd=xtensa-esp32-elf-as diff --git a/tools/sdk/bin/bootloader.bin b/tools/sdk/bin/bootloader.bin index c0e6d1c1e45b6af1ff03d6711653f7ef4a48f88b..ebe87e3cf38ee28a3eb9aeefa090057f381eed1a 100644 GIT binary patch delta 2439 zcmYLLe^3sss%Pf>14Y1Qi&}=pPctq)E=^NJ_K=%{Zl2 zd-rgn5lP3(Rwq!L?p?B#+=RxXwu2a^tQylvr5Td8K_^B+xzV(y#Y~uSi0{3=@9sfw zX77E!pYQkc`F{7k@7?aCd|tMHX%!zUM~0R{V2O7Hf0gZLg=t5g-``XwV$}! zf6j_+yAHE$g=j!H^!qUzKBSCUJHkQqGl2{4N(&k*Zem?^e*bLyPS#fDYV)`x=ZJI6 zVid6A9Y$)Nl(~R30J2F4)Ud`?vOL??;%Yl+a%{KkQ>tJ7TE_kb7RQ>h0Qw$>b|d#@ zHY%ffasLlX>RjAv5ZzTKQc@0nl^9nME(ZDU%><+Q@ zr>}qTpl7@zdGdH?aLL=Ul_CF8LHIUy!lg%-xjI}h;co4 zP(_zj6+fiBZ~PTiux;6aFDc)Nen<2!J=F`F(&I?&=W~-xQQtTl5R%ihpc{V-i~+%S zjd7LaBn^GSnu~-~3mS38KBxNU6i-7&;Y@!pr*-8}duWW+2mR;2DIKN7e3OR~vFb}> zA|6!)d$w>%$*~uOwW};1+$f2jU`1S=$V+HfxW8pU#4%9n53273@D(uEISnU2f&T=q z8khTuQcpqU3sfJZ_@Y^vQwG(c;bgId|2R*J-*gSC69$%?=jQqL0C$~6^*1R_m}EYt z$G|#P!4Hx5tHvU}_gKz{y!VMjEObe^XD=2*LrR`wt(f|QvemI_v2O>+9HM#$#lKJv zI#!pY8UXn*)nB5x-PGl3okB)SZb4`ZYHk%$+mSjf$6lcNK8jydt~+wWp{)k=4Au8g z{A`*PS0C`ISK;I;0x}F~IYcCDW?9MRKz`Y-_4L3Zn-?KDF1wQQ&i7@!8xs0H}suVKwslJ@z zN6bvE#JH6eRCiG<0p?NBDb7bUIYmPMW@?el2RF1Hm`kW`4^u3f)PC3bf$cad31JAqO zD_Nx3;25#x@`3VNwSO9=yQubEQ2CnZcL|;*lggwsJFIoH_)=?YLR$wFZ~9lA@8750 zHj1V^kUmZH8wCH&EV|)}P^rBa_oC!&61oLhMIjloJ|p@^1pmd%LZvqd-|;<`zy$H{ zcER^nnF9@$z^A12?+|OSNM5kM1Lh73M>biTUuJ=EQu^0)JiBy^DACL{;SWI76_fG% zV8BFPoi{qc;3uxZ+SjNphh8oc{UX7?F+wnToWTe6vKqmCfaNp_zGaa2F45m5`1E`p zmuWX_%dTUjR*h`4Ahh>Q{B{_?M*f8QW_8(r@j37Y1pHfA&AOcU9C&dxG9old_$WAi z)hP*zoFV!df)4{E@n(4L9>X@L(|rbR*5g6j_leiM&}p)fgxXoGg=k9=A4mrp2|HuI zB>F1^zceqB`YJt3nhi=EC;AbBpNDAS41NU^`yB-tr+Q(}dmPc95Zne}k3(8JZ=H2; z;MI)g4i?={@Q>2rmH0)|`hU1^CM@w@;a?naGOyu2K;)vhygp$3zBt`bibTB4^(<;A zy_#WqKtmNlq!9+k_X4n+d##;r34716^Q{w161L*pd|Ja(Hgc&YjG zW#n(Viu^;p$e+!xw@xEJf0^KqoBOPw2|rNoWv%hvVUekwB{FiSSY+Q$PIphU0a41- zr9wVgc$uud2LBymaqDO Lu|d37gfjmJfL06{ delta 2531 zcmYjTe^gWV760ZXh9tacPOFsiW4wf91%?|417)=)j3QEIwda&>u75PHaT}-Y!8tbO zu}i+r3L>Y9S$}|7UtWC@qih7-#wa)+wz$*5HrI8>a29#Ac~oe}>Q72p!@v z+l5h+c9LH{$!|o-M=A#lBBFzy%&aP|g{c}p*|RVyOvx4+jqI_MKl}m@yPfn9@2RS& zxCQ)YGyKdt>Cg`GYeLKNw0SAiZKNWkhLZX>oIAUCxpiwdZ!9Fkrrl>}t#p4RZRwP* z6U9wN-KOBjyk5>#G-u*5K5L=dGdF09Y_isFe2|Zy6MN|v1P?wQi}r34@0up?dD^_A z+4QuTKEQi=`kHyyx|N+m+mDW1y4`=dGjXtMZ(zl#>lM2sdOyY+BA2Y6_ut2d)(LxM z@}kyd&!S)DLu(;{nA=wexJk4baIFE)JkpeCYp_~KXChGzHOywwQXct2mM8T4qQVqx z%`Yfg?x;+rWSLfBb=1QzNJJ?iM^5v@15U7ye3wuO!I-VDD1-Ie)MSz9NEGnkRX%J= z%xCqGXAgRZPdgJs?~v6A)(`Yl@fYv3TEd^s8pUg9~g!&abbbvp7VTe+ZKj4)fN z;MF3f_TtY4r!h@}X}@6fmyvJU@2T)!L_}qp!f4FM3)%LX>^pJ`g6m0Zo5`yc$>UP= zC8qT=dOR{>&kd>Pb?7;!9b)wPj7pJj$D_elIqa&&FDWviPhv#0WLH((>(8&+`W^P< zGOLFWNs*ihY0GO8?M1@i>#&g^TEX97EzdCR8AijpR)Ay@Jky_`m*aq)5&A6_0!RIo zUczps?Pj!NiJVFP*tA4{h@hT)Gg|6dO#T$po?`TSOMLgAo%s#5=Y+;N4plVh_#OKD zE7eP`9SnQXP2>|DY8}aH6ZW^m%bo~Tvt$hTi7FQSh_7~BtxFDL@<*BW2%`^S5^U~h zBlA`fcy@#1(NdQD7cf5<@SaBILriO7w8>y5Pw89P%(RV+eho3VOb&y-mL>98@O>_q zNzlmZ5Gos)c3+6mb%r$NIrGo4YOlAezNn0V}iSLPL2h>fiKR_psz~%u>p@tWw0_CbQ^S zw7zZzV6CNf7x&v(<+4n8Wu=8hI>eF?OT)8uMkV?g8rVypE*h_(0UdA^*TLrGvsg7>cw~`^e#rd>$ zE=`YOv@k^{Fk{SCU_U$n&z$tz`c9?k5Q6Ogd)G`mnXow{Rked1Cew@+Kl{P5xQlTr5eq+IKkHI}DBWTGkEOCw(l@nI#oq zFti1F2@%&6j;SW$iEmdl;N;pQxXxD_P(?KY>jXHq^M;sC;OcgX^Md|s0aG3Z*{^v) z3!R8OzM>>F%)>XfR7k{inuoV90(cs^MGT82ZX+Eeb(ATPuvd25jthpDU0!7{ydx_{J}B) zsJIStsZ5c+RRR*sz9x}xHx-e0~#^h zLZlL>J3x|~Kjm~ccXgudfN)IEb3vO07r3hfLD + +#define UART_FIFO_LEN (128) /*< Length of the hardware FIFO buffers */ +#define UART_INTR_MASK 0x1ff +#define UART_LINE_INV_MASK (0x3f << 19) +#define UART_BITRATE_MAX 5000000 +#define UART_PIN_NO_CHANGE (-1) + +#define UART_INVERSE_DISABLE (0x0) /*!< Disable UART signal inverse*/ +#define UART_INVERSE_RXD (UART_RXD_INV_M) /*!< UART RXD input inverse*/ +#define UART_INVERSE_CTS (UART_CTS_INV_M) /*!< UART CTS input inverse*/ +#define UART_INVERSE_TXD (UART_TXD_INV_M) /*!< UART TXD output inverse*/ +#define UART_INVERSE_RTS (UART_RTS_INV_M) /*!< UART RTS output inverse*/ + +typedef enum { + UART_DATA_5_BITS = 0x0, /*!< word length: 5bits*/ + UART_DATA_6_BITS = 0x1, /*!< word length: 6bits*/ + UART_DATA_7_BITS = 0x2, /*!< word length: 7bits*/ + UART_DATA_8_BITS = 0x3, /*!< word length: 8bits*/ + UART_DATA_BITS_MAX = 0X4, +} uart_word_length_t; + +typedef enum { + UART_STOP_BITS_1 = 0x1, /*!< stop bit: 1bit*/ + UART_STOP_BITS_1_5 = 0x2, /*!< stop bit: 1.5bits*/ + UART_STOP_BITS_2 = 0x3, /*!< stop bit: 2bits*/ + UART_STOP_BITS_MAX = 0x4, +} uart_stop_bits_t; + +typedef enum { + UART_NUM_0 = 0x0, /*!< UART base address 0x3ff40000*/ + UART_NUM_1 = 0x1, /*!< UART base address 0x3ff50000*/ + UART_NUM_2 = 0x2, /*!< UART base address 0x3ff6E000*/ + UART_NUM_MAX, +} uart_port_t; + +typedef enum { + UART_PARITY_DISABLE = 0x0, /*!< Disable UART parity*/ + UART_PARITY_EVEN = 0x10, /*!< Enable UART even parity*/ + UART_PARITY_ODD = 0x11 /*!< Enable UART odd parity*/ +} uart_parity_t; + +typedef enum { + UART_HW_FLOWCTRL_DISABLE = 0x0, /*!< disable hardware flow control*/ + UART_HW_FLOWCTRL_RTS = 0x1, /*!< enable RX hardware flow control (rts)*/ + UART_HW_FLOWCTRL_CTS = 0x2, /*!< enable TX hardware flow control (cts)*/ + UART_HW_FLOWCTRL_CTS_RTS = 0x3, /*!< enable hardware flow control*/ + UART_HW_FLOWCTRL_MAX = 0x4, +} uart_hw_flowcontrol_t; + +typedef struct { + int baud_rate; /*!< UART baudrate*/ + uart_word_length_t data_bits; /*!< UART byte size*/ + uart_parity_t parity; /*!< UART parity mode*/ + uart_stop_bits_t stop_bits; /*!< UART stop bits*/ + uart_hw_flowcontrol_t flow_ctrl; /*!< UART HW flow control mode(cts/rts)*/ + uint8_t rx_flow_ctrl_thresh ; /*!< UART HW RTS threshold*/ +} uart_config_t; + +typedef struct { + uint32_t intr_enable_mask; /*!< UART interrupt enable mask, choose from UART_XXXX_INT_ENA_M under UART_INT_ENA_REG(i), connect with bit-or operator*/ + uint8_t rx_timeout_thresh; /*!< UART timeout interrupt threshold(unit: time of sending one byte)*/ + uint8_t txfifo_empty_intr_thresh; /*!< UART TX empty interrupt threshold.*/ + uint8_t rxfifo_full_thresh; /*!< UART RX full interrupt threshold.*/ +} uart_intr_config_t; + +typedef enum { + UART_DATA, /*!< UART data event*/ + UART_BREAK, /*!< UART break event*/ + UART_BUFFER_FULL, /*!< UART RX buffer full event*/ + UART_FIFO_OVF, /*!< UART FIFO overflow event*/ + UART_FRAME_ERR, /*!< UART RX frame error event*/ + UART_PARITY_ERR, /*!< UART RX parity event*/ + UART_DATA_BREAK, /*!< UART TX data and break event*/ + UART_EVENT_MAX, /*!< UART event max index*/ +} uart_event_type_t; + +typedef struct { + uart_event_type_t type; /*!< UART event type */ + size_t size; /*!< UART data size for UART_DATA event*/ +} uart_event_t; + +/** + * @brief Set UART data bits. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param data_bit UART data bits + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_word_length(uart_port_t uart_num, uart_word_length_t data_bit); + +/** + * @brief Get UART data bits. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success, result will be put in (*data_bit) + */ +esp_err_t uart_get_word_length(uart_port_t uart_num, uart_word_length_t* data_bit); + +/** + * @brief Set UART stop bits. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param bit_num UART stop bits + * + * @return + * - ESP_OK Success + * - ESP_FAIL Fail + */ +esp_err_t uart_set_stop_bits(uart_port_t uart_no, uart_stop_bits_t bit_num); + +/** + * @brief Set UART stop bits. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success, result will be put in (*stop_bit) + */ +esp_err_t uart_get_stop_bits(uart_port_t uart_num, uart_stop_bits_t* stop_bit); + +/** + * @brief Set UART parity. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param parity_mode the enum of uart parity configuration + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success + */ +esp_err_t uart_set_parity(uart_port_t uart_no, uart_parity_t parity_mode); + +/** + * @brief Get UART parity mode. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success, result will be put in (*parity_mode) + * + */ +esp_err_t uart_get_parity(uart_port_t uart_num, uart_parity_t* parity_mode); + +/** + * @brief Set UART baud rate. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param baud_rate UART baud-rate. + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success + */ +esp_err_t uart_set_baudrate(uart_port_t uart_no, uint32_t baud_rate); + +/** + * @brief Get UART bit-rate. + * + * @param uart_no: UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success, result will be put in (*baudrate) + * + */ +esp_err_t uart_get_baudrate(uart_port_t uart_num, uint32_t* baudrate); + +/** + * @brief Set UART line inverse mode + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param inverse_mask Choose the wires that need to be inversed. + * + * (inverse_mask should be chosen from UART_INVERSE_RXD/UART_INVERSE_TXD/UART_INVERSE_RTS/UART_INVERSE_CTS, combine with OR-OPERATION) + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_line_inverse(uart_port_t uart_no, uint32_t inverse_mask); + +/** + * @brief Set hardware flow control. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param flow_ctrl Hardware flow control mode + * + * @param rx_thresh Threshold of Hardware RX flow control(0 ~ UART_FIFO_LEN) + * + * Only when UART_HW_FLOWCTRL_RTS is set , will the rx_thresh value be set. + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_hw_flow_ctrl(uart_port_t uart_no, uart_hw_flowcontrol_t flow_ctrl, uint8_t rx_thresh); + +/** + * @brief Get hardware flow control mode + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_FAIL Parameter error + * - ESP_OK Success, result will be put in (*flow_ctrl) + */ +esp_err_t uart_get_hw_flow_ctrl(uart_port_t uart_num, uart_hw_flowcontrol_t* flow_ctrl); + +/** + * @brief Clear UART interrupt status + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param clr_mask Bit mask of the status that to be cleared. + * + * (enable_mask should be chosen from the fields of register UART_INT_CLR_REG) + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_clear_intr_status(uart_port_t uart_num, uint32_t clr_mask); + +/** + * @brief Set UART interrupt enable + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param enable_mask Bit mask of the enable bits. + * + * (enable_mask should be chosen from the fields of register UART_INT_ENA_REG) + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_enable_intr_mask(uart_port_t uart_num, uint32_t enable_mask); + +/** + * @brief Clear UART interrupt enable bits + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param disable_mask Bit mask of the disable bits. + * + * (disable_mask should be chosen from the fields of register UART_INT_ENA_REG) + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_disable_intr_mask(uart_port_t uart_num, uint32_t disable_mask); + + +/** + * @brief Enable UART RX interrupt(RX_FULL & RX_TIMEOUT INTERRUPT) + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_enable_rx_intr(uart_port_t uart_num); + +/** + * @brief Disable UART RX interrupt(RX_FULL & RX_TIMEOUT INTERRUPT) + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_disable_rx_intr(uart_port_t uart_num); + +/** + * @brief Disable UART TX interrupt(RX_FULL & RX_TIMEOUT INTERRUPT) + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_disable_tx_intr(uart_port_t uart_num); + +/** + * @brief Enable UART TX interrupt(RX_FULL & RX_TIMEOUT INTERRUPT) + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param enable 1: enable; 0: disable + * + * @param thresh Threshold of TX interrupt, 0 ~ UART_FIFO_LEN + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_enable_tx_intr(uart_port_t uart_num, int enable, int thresh); + +/** +* @brief register UART interrupt handler(ISR). +* @note + * UART ISR handler will be attached to the same CPU core that this function is running on. + * Users should know that which CPU is running and then pick a INUM that is not used by system. + * We can find the information of INUM and interrupt level in soc.h. + * + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param uart_intr_num UART interrupt number,check the info in soc.h, and please refer to core-isa.h for more details + * + * @param fn Interrupt handler function. + * @attention + * The ISR handler function MUST be defined with attribution of "IRAM_ATTR" for now. + * @param arg parameter for handler function + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_isr_register(uart_port_t uart_num, uint8_t uart_intr_num, void (*fn)(void*), void * arg); + +/** + * @brief Set UART pin number + * + * @note + * Internal signal can be output to multiple GPIO pads + * Only one GPIO pad can connect with input signal + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param tx_io_num UART TX pin GPIO number, if set to UART_PIN_NO_CHANGE, use the current pin. + * + * @param rx_io_num UART RX pin GPIO number, if set to UART_PIN_NO_CHANGE, use the current pin. + * + * @param rts_io_num UART RTS pin GPIO number, if set to UART_PIN_NO_CHANGE, use the current pin. + * + * @param cts_io_num UART CTS pin GPIO number, if set to UART_PIN_NO_CHANGE, use the current pin. + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_pin(uart_port_t uart_num, int tx_io_num, int rx_io_num, int rts_io_num, int cts_io_num); + +/** + * @brief UART set RTS level (before inverse) + * UART rx hardware flow control should not be set. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param level 1: RTS output low(active); 0: RTS output high(block) + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_rts(uart_port_t uart_num, int level); + +/** + * @brief UART set DTR level (before inverse) + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param level 1: DTR output low; 0: DTR output high + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_set_dtr(uart_port_t uart_num, int level); + +/** +* @brief UART parameter configure + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param uart_config UART parameter settings + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_param_config(uart_port_t uart_num, const uart_config_t *uart_config); + +/** +* @brief UART interrupt configure + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param intr_conf UART interrupt settings + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_intr_config(uart_port_t uart_num, const uart_intr_config_t *intr_conf); + +/** + * @brief Install UART driver. + * + * UART ISR handler will be attached to the same CPU core that this function is running on. + * Users should know that which CPU is running and then pick a INUM that is not used by system. + * We can find the information of INUM and interrupt level in soc.h. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param rx_buffer_size UART RX ring buffer size + * + * @param tx_buffer_size UART TX ring buffer size. + * + * If set to zero, driver will not use TX buffer, TX function will block task until all data have been sent out.. + * + * @param queue_size UART event queue size/depth. + * + * @param uart_intr_num UART interrupt number,check the info in soc.h, and please refer to core-isa.h for more details + * + * @param uart_queue UART event queue handle, if set NULL, driver will not use an event queue. + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_driver_install(uart_port_t uart_num, int rx_buffer_size, int tx_buffer_size, int queue_size, int uart_intr_num, void* uart_queue); + +/** + * @brief Uninstall UART driver. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_driver_delete(uart_port_t uart_num); + +/** + * @brief Wait UART TX FIFO empty + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param ticks_to_wait Timeout, count in RTOS ticks + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + * - ESP_ERR_TIMEOUT Timeout + */ +esp_err_t uart_wait_tx_done(uart_port_t uart_num, TickType_t ticks_to_wait); + +/** + * @brief Send data to the UART port from a given buffer and length, + * This function will not wait for the space in TX FIFO, just fill the TX FIFO and return when the FIFO is full. + * @note + * This function should only be used when UART TX buffer is not enabled. + * + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param buffer data buffer address + * + * @param len data length to send + * + * @return + * - (-1) Parameter error + * - OTHERS(>=0) The number of data that pushed to the TX FIFO + */ +int uart_tx_chars(uart_port_t uart_no, const char* buffer, uint32_t len); + +/** + * @brief Send data to the UART port from a given buffer and length, + * + * If parameter tx_buffer_size is set to zero: + * This function will not return until all the data have been sent out, or at least pushed into TX FIFO. + * + * Otherwise, if tx_buffer_size > 0, this function will return after copying all the data to tx ringbuffer, + * then, UART ISR will move data from ring buffer to TX FIFO gradually. + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param src data buffer address + * + * @param size data length to send + * + * @return + * - (-1) Parameter error + * - OTHERS(>=0) The number of data that pushed to the TX FIFO + */ +int uart_write_bytes(uart_port_t uart_num, const char* src, size_t size); + +/** + * @brief Send data to the UART port from a given buffer and length, + * + * If parameter tx_buffer_size is set to zero: + * This function will not return until all the data and the break signal have been sent out. + * After all data send out, send a break signal. + * + * Otherwise, if tx_buffer_size > 0, this function will return after copying all the data to tx ringbuffer, + * then, UART ISR will move data from ring buffer to TX FIFO gradually. + * After all data send out, send a break signal. + * + * + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param src data buffer address + * + * @param size data length to send + * + * @param brk_len break signal length (unit: one bit's time@current_baudrate) + * + * @return + * - (-1) Parameter error + * - OTHERS(>=0) The number of data that pushed to the TX FIFO + */ + +int uart_write_bytes_with_break(uart_port_t uart_num, const char* src, size_t size, int brk_len); + +/** +* @brief UART read bytes from UART buffer + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @param buf pointer to the buffer. + * + * @param length data length + * + * @param ticks_to_wait sTimeout, count in RTOS ticks + * + * + * @return + * - (-1) Error + * - Others return a char data from uart fifo. + */ +int uart_read_bytes(uart_port_t uart_num, uint8_t* buf, uint32_t length, TickType_t ticks_to_wait); + +/** + * @brief UART ring buffer flush + * + * @param uart_no UART_NUM_0, UART_NUM_1 or UART_NUM_2 + * + * @return + * - ESP_OK Success + * - ESP_FAIL Parameter error + */ +esp_err_t uart_flush(uart_port_t uart_num); + +/***************************EXAMPLE********************************** + * + * + * ----------------EXAMPLE OF UART SETTING --------------------- + * @code{c} + * //1. Setup UART + * #include "freertos/queue.h" + * #define UART_INTR_NUM 17 //choose one interrupt number from soc.h + * //a. Set UART parameter + * int uart_num = 0; //uart port number + * uart_config_t uart_config = { + * .baud_rate = UART_BITRATE_115200, //baudrate + * .data_bits = UART_DATA_8_BITS, //data bit mode + * .parity = UART_PARITY_DISABLE, //parity mode + * .stop_bits = UART_STOP_BITS_1, //stop bit mode + * .flow_ctrl = UART_HW_FLOWCTRL_DISABLE, //hardware flow control(cts/rts) + * .rx_flow_ctrl_thresh = 120, //flow control threshold + * }; + * uart_param_config(uart_num, &uart_config); + * //b1. Setup UART driver(with UART queue) + * QueueHandle_t uart_queue; + * //parameters here are just an example, tx buffer size is 2048 + * uart_driver_install(uart_num, 1024 * 2, 1024 * 2, 10, UART_INTR_NUM, &uart_queue); + * //b2. Setup UART driver(without UART queue) + * //parameters here are just an example, tx buffer size is 0 + * uart_driver_install(uart_num, 1024 * 2, 0, 10, UART_INTR_NUM, NULL); + *@endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //2. Set UART pin + * //set UART pin, not needed if use default pins. + * uart_set_pin(uart_num, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, 15, 13); + * @endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //3. Read data from UART. + * uint8_t data[128]; + * int length = 0; + * length = uart_read_bytes(uart_num, data, sizeof(data), 100); + * @endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //4. Write data to UART. + * char* test_str = "This is a test string.\n" + * uart_write_bytes(uart_num, (const char*)test_str, strlen(test_str)); + * @endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //5. Write data to UART, end with a break signal. + * uart_write_bytes_with_break(0, "test break\n",strlen("test break\n"), 100); + * @endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //6. an example of echo test with hardware flow control on UART1 + * void uart_loop_back_test() + * { + * int uart_num = 1; + * uart_config_t uart_config = { + * .baud_rate = 115200, + * .data_bits = UART_DATA_8_BITS, + * .parity = UART_PARITY_DISABLE, + * .stop_bits = UART_STOP_BITS_1, + * .flow_ctrl = UART_HW_FLOWCTRL_CTS_RTS, + * .rx_flow_ctrl_thresh = 122, + * }; + * //Configure UART1 parameters + * uart_param_config(uart_num, &uart_config); + * //Set UART1 pins(TX: IO16, RX: IO17, RTS: IO18, CTS: IO19) + * uart_set_pin(uart_num, 16, 17, 18, 19); + * //Install UART driver( We don't need an event queue here) + * uart_driver_install(uart_num, 1024 * 2, 1024*4, 10, 17, NULL, RINGBUF_TYPE_BYTEBUF); + * uint8_t data[1000]; + * while(1) { + * //Read data from UART + * int len = uart_read_bytes(uart_num, data, sizeof(data), 10); + * //Write data back to UART + * uart_write_bytes(uart_num, (const char*)data, len); + * } + * } + * @endcode + *-----------------------------------------------------------------------------* + * @code{c} + * //7. An example of using UART event queue on UART0. + * #include "freertos/queue.h" + * //A queue to handle UART event. + * QueueHandle_t uart0_queue; + * static const char *TAG = "uart_example"; + * void uart_task(void *pvParameters) + * { + * int uart_num = (int)pvParameters; + * uart_event_t event; + * uint8_t dtmp[1000]; + * for(;;) { + * //Waiting for UART event. + * if(xQueueReceive(uart0_queue, (void * )&event, (portTickType)portMAX_DELAY)) { + * ESP_LOGI(TAG, "uart[%d] event:", uart_num); + * switch(event.type) { + * memset(dtmp, 0, sizeof(dtmp)); + * //Event of UART receving data + * case UART_DATA: + * ESP_LOGI(TAG,"data, len: %d", event.size); + * int len = uart_read_bytes(uart_num, dtmp, event.size, 10); + * ESP_LOGI(TAG, "uart read: %d", len); + uart_write_bytes(uart_num, (const char*)dtmp, len); + * break; + * //Event of HW FIFO overflow detected + * case UART_FIFO_OVF: + * ESP_LOGI(TAG, "hw fifo overflow\n"); + * break; + * //Event of UART ring buffer full + * case UART_BUFFER_FULL: + * ESP_LOGI(TAG, "ring buffer full\n"); + * break; + * //Event of UART RX break detected + * case UART_BREAK: + * ESP_LOGI(TAG, "uart rx break\n"); + * break; + * //Event of UART parity check error + * case UART_PARITY_ERR: + * ESP_LOGI(TAG, "uart parity error\n"); + * break; + * //Event of UART frame error + * case UART_FRAME_ERR: + * ESP_LOGI(TAG, "uart frame error\n"); + * break; + * //Others + * default: + * ESP_LOGI(TAG, "uart event type: %d\n", event.type); + * break; + * } + * } + * } + * vTaskDelete(NULL); + * } + * + * void uart_queue_test() + * { + * int uart_num = 0; + * uart_config_t uart_config = { + * .baud_rate = 115200, + * .data_bits = UART_DATA_8_BITS, + * .parity = UART_PARITY_DISABLE, + * .stop_bits = UART_STOP_BITS_1, + * .flow_ctrl = UART_HW_FLOWCTRL_DISABLE, + * .rx_flow_ctrl_thresh = 122, + * }; + * //Set UART parameters + * uart_param_config(uart_num, &uart_config); + * //Set UART pins,(-1: default pin, no change.) + * uart_set_pin(uart_num, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, 15, 13); + * //Set UART log level + * esp_log_level_set(TAG, ESP_LOG_INFO); + * //Install UART driver, and get the queue. + * uart_driver_install(uart_num, 1024 * 2, 1024*4, 10, 17, &uart0_queue, RINGBUF_TYPE_BYTEBUF); + * //Create a task to handler UART event from ISR + * xTaskCreate(uart_task, "uTask", 2048*8, (void*)uart_num, 10, NULL); + * } + * @endcode + * + ***************************END OF EXAMPLE**********************************/ + +#ifdef __cplusplus +} +#endif + +#endif /*_DRIVER_UART_H_*/ diff --git a/tools/sdk/include/esp32/esp_attr.h b/tools/sdk/include/esp32/esp_attr.h index 156d2957..78aa3bd1 100644 --- a/tools/sdk/include/esp32/esp_attr.h +++ b/tools/sdk/include/esp32/esp_attr.h @@ -20,22 +20,21 @@ //and all variables in shared RAM. These macros can be used to redirect //particular functions/variables to other memory regions. -// Forces code into IRAM instead of flash +// Forces code into IRAM instead of flash. #define IRAM_ATTR __attribute__((section(".iram1"))) // Forces data into DRAM instead of flash #define DRAM_ATTR __attribute__((section(".dram1"))) -// Forces code into RTC fast memory +// Forces code into RTC fast memory. See "docs/deep-sleep-stub.rst" #define RTC_IRAM_ATTR __attribute__((section(".rtc.text"))) -// Forces data into RTC slow memory +// Forces data into RTC slow memory. See "docs/deep-sleep-stub.rst" // Any variable marked with this attribute will keep its value // during a deep sleep / wake cycle. #define RTC_DATA_ATTR __attribute__((section(".rtc.data"))) -// Forces read-only data into RTC slow memory -// Makes constant data available to RTC wake stubs (see esp_deepsleep.h) +// Forces read-only data into RTC slow memory. See "docs/deep-sleep-stub.rst" #define RTC_RODATA_ATTR __attribute__((section(".rtc.rodata"))) #endif /* __ESP_ATTR_H__ */ diff --git a/tools/sdk/include/esp32/esp_crosscore_int.h b/tools/sdk/include/esp32/esp_crosscore_int.h new file mode 100644 index 00000000..0e4b2b83 --- /dev/null +++ b/tools/sdk/include/esp32/esp_crosscore_int.h @@ -0,0 +1,42 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +#ifndef __ESP_CROSSCORE_INT_H +#define __ESP_CROSSCORE_INT_H + + +/** + * Initialize the crosscore interrupt system for this CPU. + * This needs to be called once on every CPU that is used + * by FreeRTOS. + * + * If multicore FreeRTOS support is enabled, this will be + * called automatically by the startup code and should not + * be called manually. + */ +void esp_crosscore_int_init(); + + +/** + * Send an interrupt to a CPU indicating it should yield its + * currently running task in favour of a higher-priority task + * that presumably just woke up. + * + * This is used internally by FreeRTOS in multicore mode + * and should not be called by the user. + * + * @param coreID Core that should do the yielding + */ +void esp_crosscore_int_send_yield(int coreId); + +#endif \ No newline at end of file diff --git a/tools/sdk/include/esp32/esp_deepsleep.h b/tools/sdk/include/esp32/esp_deepsleep.h index 3683a8ee..59b31291 100644 --- a/tools/sdk/include/esp32/esp_deepsleep.h +++ b/tools/sdk/include/esp32/esp_deepsleep.h @@ -54,37 +54,7 @@ void system_deep_sleep(uint64_t time_in_us); * to run code immediately when the chip wakes from * sleep. * - * For example: - * @code - * void RTC_IRAM_ATTR esp_wake_deep_sleep(void) { - * esp_default_wake_deep_sleep(); - * // Add additional functionality here - * } - * - * (Implementing this function is not required for normal operation, - * in the usual case your app will start normally when waking from - * deep sleep.) - * - * esp_wake_deep_sleep() functionality is limited: - * - * - Runs immediately on wake, so most of the SoC is freshly reset - - * flash is unmapped and hardware is otherwise uninitialised. - * - * - Can only call functions implemented in ROM, or marked RTC_IRAM_ATTR. - * - * - Static variables marked RTC_DATA_ATTR will have initial values on - * cold boot, and maintain these values between sleep/wake cycles. - * - * - Read-only data should be marked RTC_RODATA_ATTR. Strings must be - * declared as variables also using RTC_RODATA_ATTR, like this: - * RTC_RODATA_ATTR const char message[] = "Hello from very early boot!\n"; - * - * - Any other static memory will not be initialised (either to zero, - * or to any predefined value). - * - * - * - If you implement your own stub, the first call the stub makes - should be to esp_default_wake_deep_sleep(). + * See docs/deep-sleep-stub.rst for details. */ void esp_wake_deep_sleep(void); @@ -115,9 +85,7 @@ esp_deep_sleep_wake_stub_fn_t esp_get_deep_sleep_wake_stub(void); /* The default esp-idf-provided esp_wake_deep_sleep() stub. - If you replace esp_wake_deep_sleep() in your program, or use - esp_set_deep_sleep_wake_stub(), then it is recommended you call - esp_default_wake_deep_sleep() as the first function in your stub. + See docs/deep-sleep-stub.rst for details. */ void esp_default_wake_deep_sleep(void); diff --git a/tools/sdk/include/esp32/esp_err.h b/tools/sdk/include/esp32/esp_err.h index 4f013f91..a1f4b8f3 100644 --- a/tools/sdk/include/esp32/esp_err.h +++ b/tools/sdk/include/esp32/esp_err.h @@ -31,6 +31,13 @@ typedef int32_t esp_err_t; #define ESP_ERR_NO_MEM 0x101 #define ESP_ERR_INVALID_ARG 0x102 #define ESP_ERR_INVALID_STATE 0x103 +#define ESP_ERR_INVALID_SIZE 0x104 +#define ESP_ERR_NOT_FOUND 0x105 +#define ESP_ERR_NOT_SUPPORTED 0x106 +#define ESP_ERR_TIMEOUT 0x107 + + +#define ESP_ERR_WIFI_BASE 0x3000 /*!< Starting number of WiFi error codes */ /** * Macro which can be used to check the error code, diff --git a/tools/sdk/include/esp32/esp_flash_data_types.h b/tools/sdk/include/esp32/esp_flash_data_types.h new file mode 100644 index 00000000..4bf886c8 --- /dev/null +++ b/tools/sdk/include/esp32/esp_flash_data_types.h @@ -0,0 +1,106 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +#ifndef __ESP_BIN_TYPES_H__ +#define __ESP_BIN_TYPES_H__ + +#include + +#ifdef __cplusplus +extern "C" +{ +#endif + +#define ESP_PARTITION_TABLE_ADDR 0x4000 +#define ESP_PARTITION_MAGIC 0x50AA + +/* SPI flash mode, used in esp_image_header_t */ +typedef enum { + ESP_IMAGE_SPI_MODE_QIO, + ESP_IMAGE_SPI_MODE_QOUT, + ESP_IMAGE_SPI_MODE_DIO, + ESP_IMAGE_SPI_MODE_DOUT, + ESP_IMAGE_SPI_MODE_FAST_READ, + ESP_IMAGE_SPI_MODE_SLOW_READ +} esp_image_spi_mode_t; + +/* SPI flash clock frequency */ +enum { + ESP_IMAGE_SPI_SPEED_40M, + ESP_IMAGE_SPI_SPEED_26M, + ESP_IMAGE_SPI_SPEED_20M, + ESP_IMAGE_SPI_SPEED_80M = 0xF +} esp_image_spi_freq_t; + +/* Supported SPI flash sizes */ +typedef enum { + ESP_IMAGE_FLASH_SIZE_1MB = 0, + ESP_IMAGE_FLASH_SIZE_2MB, + ESP_IMAGE_FLASH_SIZE_4MB, + ESP_IMAGE_FLASH_SIZE_8MB, + ESP_IMAGE_FLASH_SIZE_16MB, + ESP_IMAGE_FLASH_SIZE_MAX +} esp_image_flash_size_t; + +/* Main header of binary image */ +typedef struct { + uint8_t magic; + uint8_t blocks; + uint8_t spi_mode; /* flash read mode (esp_image_spi_mode_t as uint8_t) */ + uint8_t spi_speed: 4; /* flash frequency (esp_image_spi_freq_t as uint8_t) */ + uint8_t spi_size: 4; /* flash chip size (esp_image_flash_size_t as uint8_t) */ + uint32_t entry_addr; + uint8_t encrypt_flag; /* encrypt flag */ + uint8_t secure_boot_flag; /* secure boot flag */ + uint8_t extra_header[14]; /* ESP32 additional header, unused by second bootloader */ +} esp_image_header_t; + +/* Header of binary image segment */ +typedef struct { + uint32_t load_addr; + uint32_t data_len; +} esp_image_section_header_t; + + +/* OTA selection structure (two copies in the OTA data partition.) + Size of 32 bytes is friendly to flash encryption */ +typedef struct { + uint32_t ota_seq; + uint8_t seq_label[24]; + uint32_t crc; /* CRC32 of ota_seq field only */ +} esp_ota_select_entry_t; + + +typedef struct { + uint32_t offset; + uint32_t size; +} esp_partition_pos_t; + +/* Structure which describes the layout of partition table entry. + * See docs/partition_tables.rst for more information about individual fields. + */ +typedef struct { + uint16_t magic; + uint8_t type; + uint8_t subtype; + esp_partition_pos_t pos; + uint8_t label[16]; + uint8_t reserved[4]; +} esp_partition_info_t; + + +#ifdef __cplusplus +} +#endif + +#endif //__ESP_BIN_TYPES_H__ diff --git a/tools/sdk/include/esp32/esp_system.h b/tools/sdk/include/esp32/esp_system.h index 84133366..d416e23d 100644 --- a/tools/sdk/include/esp32/esp_system.h +++ b/tools/sdk/include/esp32/esp_system.h @@ -32,6 +32,13 @@ extern "C" { * @{ */ +/** + * @attention application don't need to call this function anymore. It do nothing and will + * be removed in future version. + */ +void system_init(void) __attribute__ ((deprecated)); + + /** * @brief Get information of the SDK version. * @@ -169,8 +176,6 @@ bool system_rtc_mem_write(uint16_t dst, const void *src, uint16_t n); esp_err_t system_efuse_read_mac(uint8_t mac[6]); -void system_init(void); - /** * @} */ diff --git a/tools/sdk/include/esp32/esp_wifi.h b/tools/sdk/include/esp32/esp_wifi.h index 80ced5dc..88ea0d9a 100644 --- a/tools/sdk/include/esp32/esp_wifi.h +++ b/tools/sdk/include/esp32/esp_wifi.h @@ -70,6 +70,24 @@ extern "C" { #endif +#define ESP_ERR_WIFI_OK ESP_OK /*!< No error */ +#define ESP_ERR_WIFI_FAIL ESP_FAIL /*!< General fail code */ +#define ESP_ERR_WIFI_NO_MEM ESP_ERR_NO_MEM /*!< Out of memory */ +#define ESP_ERR_WIFI_ARG ESP_ERR_INVALID_ARG /*!< Invalid argument */ +#define ESP_ERR_WIFI_NOT_SUPPORT ESP_ERR_NOT_SUPPORTED /*!< Indicates that API is not supported yet */ + +#define ESP_ERR_WIFI_NOT_INIT (ESP_ERR_WIFI_BASE + 1) /*!< WiFi driver is not installed by esp_wifi_init */ +#define ESP_ERR_WIFI_NOT_START (ESP_ERR_WIFI_BASE + 2) /*!< WiFi driver is not started by esp_wifi_start */ +#define ESP_ERR_WIFI_IF (ESP_ERR_WIFI_BASE + 3) /*!< WiFi interface error */ +#define ESP_ERR_WIFI_MODE (ESP_ERR_WIFI_BASE + 4) /*!< WiFi mode error */ +#define ESP_ERR_WIFI_STATE (ESP_ERR_WIFI_BASE + 5) /*!< WiFi internal state error */ +#define ESP_ERR_WIFI_CONN (ESP_ERR_WIFI_BASE + 6) /*!< WiFi internal control block of station or soft-AP error */ +#define ESP_ERR_WIFI_NVS (ESP_ERR_WIFI_BASE + 7) /*!< WiFi internal NVS module error */ +#define ESP_ERR_WIFI_MAC (ESP_ERR_WIFI_BASE + 8) /*!< MAC address is invalid */ +#define ESP_ERR_WIFI_SSID (ESP_ERR_WIFI_BASE + 9) /*!< SSID is invalid */ +#define ESP_ERR_WIFI_PASSWORD (ESP_ERR_WIFI_BASE + 10) /*!< Passord is invalid */ +#define ESP_ERR_WIFI_TIMEOUT (ESP_ERR_WIFI_BASE + 11) /*!< Timeout error */ + typedef struct { system_event_handler_t event_handler; /**< WiFi event handler */ } wifi_init_config_t; @@ -92,8 +110,10 @@ typedef struct { * * @param wifi_init_config_t *config : provide WiFi init configuration * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NO_MEM : out of memory + * - others : refer to error code esp_err.h */ esp_err_t esp_wifi_init(wifi_init_config_t *config); @@ -104,7 +124,6 @@ esp_err_t esp_wifi_init(wifi_init_config_t *config); * @attention 1. This API should be called if you want to remove WiFi driver from the system * * @return ESP_OK : succeed - * @return others : fail */ esp_err_t esp_wifi_deinit(void); @@ -116,8 +135,11 @@ esp_err_t esp_wifi_deinit(void); * * @param wifi_mode_t mode : WiFi operating modes: * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_set_mode(wifi_mode_t mode); @@ -126,8 +148,10 @@ esp_err_t esp_wifi_set_mode(wifi_mode_t mode); * * @param wifi_mode_t *mode : store current WiFi mode * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_mode(wifi_mode_t *mode); @@ -139,8 +163,13 @@ esp_err_t esp_wifi_get_mode(wifi_mode_t *mode); * * @param null * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_NO_MEM : out of memory + * - ESP_ERR_WIFI_CONN : WiFi internal error, station or soft-AP control block wrong + * - ESP_ERR_WIFI_FAIL : other WiFi internal errors */ esp_err_t esp_wifi_start(void); @@ -152,8 +181,9 @@ esp_err_t esp_wifi_start(void); * * @param null * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init */ esp_err_t esp_wifi_stop(void); @@ -165,8 +195,12 @@ esp_err_t esp_wifi_stop(void); * * @param null * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_CONN : WiFi internal error, station or soft-AP control block wrong + * - ESP_ERR_WIFI_SSID : SSID of AP which station connects is invalid */ esp_err_t esp_wifi_connect(void); @@ -175,8 +209,11 @@ esp_err_t esp_wifi_connect(void); * * @param null * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_FAIL : other WiFi internal errors */ esp_err_t esp_wifi_disconnect(void); @@ -185,8 +222,9 @@ esp_err_t esp_wifi_disconnect(void); * * @param null * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - others : fail */ esp_err_t esp_wifi_clear_fast_connect(void); @@ -195,8 +233,12 @@ esp_err_t esp_wifi_clear_fast_connect(void); * * @param uint16_t aid : when aid is 0, deauthenticate all stations, otherwise deauthenticate station whose associated id is aid * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_MODE : WiFi mode is wrong */ esp_err_t esp_wifi_deauth_sta(uint16_t aid); @@ -211,8 +253,12 @@ esp_err_t esp_wifi_deauth_sta(uint16_t aid); * @param bool block : if block is true, this API will block the caller until the scan is done, otherwise * it will return immediately * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_TIMEOUT : blocking scan is timeout + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_scan_start(wifi_scan_config_t *conf, bool block); @@ -220,8 +266,10 @@ esp_err_t esp_wifi_scan_start(wifi_scan_config_t *conf, bool block); * @brief Stop the scan in process * * @param null - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start */ esp_err_t esp_wifi_scan_stop(void); @@ -232,8 +280,11 @@ esp_err_t esp_wifi_scan_stop(void); * * @attention This API can only be called when the scan is completed, otherwise it may get wrong value * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_scan_get_ap_num(uint16_t *number); @@ -244,8 +295,12 @@ esp_err_t esp_wifi_scan_get_ap_num(uint16_t *number); the actual AP number this API returns * @param wifi_ap_record_t *ap_records: wifi_ap_record_t array to hold the found APs * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_NOT_START : WiFi is not started by esp_wifi_start + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_NO_MEM : out of memory */ esp_err_t esp_wifi_scan_get_ap_records(uint16_t *number, wifi_ap_record_t *ap_records); @@ -255,8 +310,9 @@ esp_err_t esp_wifi_scan_get_ap_records(uint16_t *number, wifi_ap_record_t *ap_re * * @param wifi_ap_record_t *ap_info: the wifi_ap_record_t to hold station assocated AP * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - others : fail */ esp_err_t esp_wifi_sta_get_ap_info(wifi_ap_record_t *ap_info); @@ -265,8 +321,7 @@ esp_err_t esp_wifi_sta_get_ap_info(wifi_ap_record_t *ap_info); * * @param wifi_ps_type_t type : power save type * - * @return ESP_OK : succeed - * @return others : fail + * @return ESP_ERR_WIFI_NOT_SUPPORT : not support yet */ esp_err_t esp_wifi_set_ps(wifi_ps_type_t type); @@ -275,8 +330,7 @@ esp_err_t esp_wifi_set_ps(wifi_ps_type_t type); * * @param wifi_ps_type_t *type : store current power save type * - * @return ESP_OK : succeed - * @return others : fail + * @return ESP_ERR_WIFI_NOT_SUPPORT : not support yet */ esp_err_t esp_wifi_get_ps(wifi_ps_type_t *type); @@ -289,8 +343,11 @@ esp_err_t esp_wifi_get_ps(wifi_ps_type_t *type); * @param wifi_interface_t ifx : interfaces * @param uint8_t protocol : WiFi protocol bitmap * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_IF : invalid interface + * - others : refer to erro code in esp_err.h */ esp_err_t esp_wifi_set_protocol(wifi_interface_t ifx, uint8_t protocol_bitmap); @@ -300,8 +357,12 @@ esp_err_t esp_wifi_set_protocol(wifi_interface_t ifx, uint8_t protocol_bitmap); * @param wifi_interface_t ifx : interfaces * @param uint8_t protocol : store current WiFi protocol bitmap of interface ifx * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_ARG : invalid argument + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_get_protocol(wifi_interface_t ifx, uint8_t *protocol_bitmap); @@ -314,8 +375,12 @@ esp_err_t esp_wifi_get_protocol(wifi_interface_t ifx, uint8_t *protocol_bitmap); * @param wifi_interface_t ifx : interface to be configured * @param wifi_bandwidth_t bw : bandwidth * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_ARG : invalid argument + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_set_bandwidth(wifi_interface_t ifx, wifi_bandwidth_t bw); @@ -327,8 +392,11 @@ esp_err_t esp_wifi_set_bandwidth(wifi_interface_t ifx, wifi_bandwidth_t bw); * @param wifi_interface_t ifx : interface to be configured * @param wifi_bandwidth_t *bw : store bandwidth of interface ifx * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_bandwidth(wifi_interface_t ifx, wifi_bandwidth_t *bw); @@ -340,8 +408,11 @@ esp_err_t esp_wifi_get_bandwidth(wifi_interface_t ifx, wifi_bandwidth_t *bw); * @param uint8_t primary : for HT20, primary is the channel number, for HT40, primary is the primary channel * @param wifi_second_chan_t second : for HT20, second is ignored, for HT40, second is the second channel * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_set_channel(uint8_t primary, wifi_second_chan_t second); @@ -353,8 +424,10 @@ esp_err_t esp_wifi_set_channel(uint8_t primary, wifi_second_chan_t second); * @param uint8_t *primary : store current primary channel * @param wifi_second_chan_t *second : store current second channel * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_channel(uint8_t *primary, wifi_second_chan_t *second); @@ -364,8 +437,11 @@ esp_err_t esp_wifi_get_channel(uint8_t *primary, wifi_second_chan_t *second); * * @param wifi_country_t country : country type * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_set_country(wifi_country_t country); @@ -374,8 +450,10 @@ esp_err_t esp_wifi_set_country(wifi_country_t country); * * @param wifi_country_t country : store current country * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_country(wifi_country_t *country); @@ -390,8 +468,14 @@ esp_err_t esp_wifi_get_country(wifi_country_t *country); * @param wifi_interface_t ifx : interface * @param uint8 mac[6]: the MAC address. * - * @return true : succeed - * @return false : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_MAC : invalid mac address + * - ESP_ERR_WIFI_MODE : WiFi mode is wrong + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_set_mac(wifi_interface_t ifx, uint8_t mac[6]); @@ -400,8 +484,11 @@ esp_err_t esp_wifi_set_mac(wifi_interface_t ifx, uint8_t mac[6]); * * @param uint8_t mac[6] : store mac of this interface ifx * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_IF : invalid interface */ esp_err_t esp_wifi_get_mac(wifi_interface_t ifx, uint8_t mac[6]); @@ -413,8 +500,7 @@ esp_err_t esp_wifi_get_mac(wifi_interface_t ifx, uint8_t mac[6]); * @param void *buf : the data received * @param uint16_t len : data length * - * @return ESP_OK : succeed - * @return others : fail + * @return none */ typedef void (* wifi_promiscuous_cb_t)(void *buf, uint16_t len); @@ -425,8 +511,9 @@ typedef void (* wifi_promiscuous_cb_t)(void *buf, uint16_t len); * * @param wifi_promiscuous_cb_t cb : callback * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init */ esp_err_t esp_wifi_set_promiscuous_rx_cb(wifi_promiscuous_cb_t cb); @@ -435,8 +522,9 @@ esp_err_t esp_wifi_set_promiscuous_rx_cb(wifi_promiscuous_cb_t cb); * * @param bool promiscuous : false - disable / true - enable * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init */ esp_err_t esp_wifi_set_promiscuous(bool en); @@ -445,8 +533,10 @@ esp_err_t esp_wifi_set_promiscuous(bool en); * * @param bool *enable : store the current status of promiscuous mode * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_promiscuous(bool *en); @@ -461,8 +551,15 @@ esp_err_t esp_wifi_get_promiscuous(bool *en); * @param wifi_interface_t ifx : interface * @param wifi_config_t *conf : station or soft-AP configuration * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_IF : invalid interface + * - ESP_ERR_WIFI_MODE : invalid mode + * - ESP_ERR_WIFI_PASSWORD : invalid password + * - ESP_ERR_WIFI_NVS : WiFi internal NVS error + * - others : refer to the erro code in esp_err.h */ esp_err_t esp_wifi_set_config(wifi_interface_t ifx, wifi_config_t *conf); @@ -472,8 +569,11 @@ esp_err_t esp_wifi_set_config(wifi_interface_t ifx, wifi_config_t *conf); * @param wifi_interface_t ifx : interface * @param wifi_config_t *conf : station or soft-AP configuration * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_IF : invalid interface */ esp_err_t esp_wifi_get_config(wifi_interface_t ifx, wifi_config_t *conf); @@ -484,8 +584,12 @@ esp_err_t esp_wifi_get_config(wifi_interface_t ifx, wifi_config_t *conf); * * @param wifi_sta_list_t *sta: station list * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_MODE : WiFi mode is wrong + * - ESP_ERR_WIFI_CONN : WiFi internal error, the station/soft-AP control block is invalid */ esp_err_t esp_wifi_ap_get_sta_list(wifi_sta_list_t *sta); @@ -497,42 +601,24 @@ esp_err_t esp_wifi_ap_get_sta_list(wifi_sta_list_t *sta); * * @param wifi_storage_t storage : storage type * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_set_storage(wifi_storage_t storage); -/** - * @brief The WiFi RX callback function - * - * Each time the WiFi need to forward the packets to high layer, the callback function will be called - * - */ -typedef esp_err_t (*wifi_rxcb_t)(void *buffer, uint16_t len, void *eb); - -/** - * @brief Set the WiFi RX callback - * - * @attention 1. Currently we support only one RX callback for each interface - * - * @param wifi_interface_t ifx : interface - * @param wifi_rxcb_t fn : WiFi RX callback - * - * @return ESP_OK : succeed - * @return others : fail - */ -esp_err_t esp_wifi_reg_rxcb(wifi_interface_t ifx, wifi_rxcb_t fn); - /** * @brief Set auto connect * The default value is true * - * @attention 1. - * * @param bool en : true - enable auto connect / false - disable auto connect * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_MODE : WiFi internal error, the station/soft-AP control block is invalid + * - others : refer to error code in esp_err.h */ esp_err_t esp_wifi_set_auto_connect(bool en); @@ -541,8 +627,10 @@ esp_err_t esp_wifi_set_auto_connect(bool en); * * @param bool *en : store current auto connect configuration * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument */ esp_err_t esp_wifi_get_auto_connect(bool *en); @@ -559,8 +647,11 @@ esp_err_t esp_wifi_get_auto_connect(bool *en); 1 - WIFI_VND_IE_ID_1 * @param uint8_t *vnd_ie : pointer to a vendor specific element * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init + * - ESP_ERR_WIFI_ARG : invalid argument + * - ESP_ERR_WIFI_NO_MEM : out of memory */ esp_err_t esp_wifi_set_vendor_ie(bool enable, wifi_vendor_ie_type_t type, wifi_vendor_ie_id_t idx, uint8_t *vnd_ie); @@ -584,8 +675,9 @@ typedef void (*esp_vendor_ie_cb_t) (void *ctx, wifi_vendor_ie_type_t type, const * @param esp_vendor_ie_cb_t cb : callback function * @param void *ctx : reserved * - * @return ESP_OK : succeed - * @return others : fail + * @return + * - ESP_OK : succeed + * - ESP_ERR_WIFI_NOT_INIT : WiFi is not initialized by eps_wifi_init */ esp_err_t esp_wifi_set_vendor_ie_cb(esp_vendor_ie_cb_t cb, void *ctx); diff --git a/tools/sdk/include/esp32/esp_wifi_internal.h b/tools/sdk/include/esp32/esp_wifi_internal.h index 217d5f6d..2015b506 100644 --- a/tools/sdk/include/esp32/esp_wifi_internal.h +++ b/tools/sdk/include/esp32/esp_wifi_internal.h @@ -62,16 +62,48 @@ void esp_wifi_internal_free_rx_buffer(void* buffer); /** * @brief transmit the buffer via wifi driver * - * @attention1 TODO should modify the return type from bool to int - * * @param wifi_interface_t wifi_if : wifi interface id * @param void *buffer : the buffer to be tansmit * @param u16_t len : the length of buffer * - * @return True : success transmit the buffer to wifi driver - * False : failed to transmit the buffer to wifi driver + * @return + * - ERR_OK : Successfully transmit the buffer to wifi driver + * - ERR_MEM : Out of memory + * - ERR_IF : WiFi driver error + * - ERR_ARG : Invalid argument */ -bool esp_wifi_internal_tx(wifi_interface_t wifi_if, void *buffer, u16_t len); +int esp_wifi_internal_tx(wifi_interface_t wifi_if, void *buffer, u16_t len); + +/** + * @brief The WiFi RX callback function + * + * Each time the WiFi need to forward the packets to high layer, the callback function will be called + * + */ +typedef esp_err_t (*wifi_rxcb_t)(void *buffer, uint16_t len, void *eb); + +/** + * @brief Set the WiFi RX callback + * + * @attention 1. Currently we support only one RX callback for each interface + * + * @param wifi_interface_t ifx : interface + * @param wifi_rxcb_t fn : WiFi RX callback + * + * @return ESP_OK : succeed + * @return others : fail + */ +esp_err_t esp_wifi_internal_reg_rxcb(wifi_interface_t ifx, wifi_rxcb_t fn); + +/** + * @brief Notify WIFI driver that the station got ip successfully + * + * @param none + * + * @return ESP_OK : succeed + * @return others : fail + */ +esp_err_t esp_wifi_internal_set_sta_ip(void); #ifdef __cplusplus } diff --git a/tools/sdk/include/esp32/esp_wifi_types.h b/tools/sdk/include/esp32/esp_wifi_types.h index 0ea719a6..fb19aa8f 100644 --- a/tools/sdk/include/esp32/esp_wifi_types.h +++ b/tools/sdk/include/esp32/esp_wifi_types.h @@ -154,10 +154,10 @@ typedef struct { uint8_t mac[6]; /**< mac address of sta that associated with ESP32 soft-AP */ }wifi_sta_info_t; -#define ESP_WIFI_MAX_CONN_NUM (8+2) /**< max number of sta the eSP32 soft-AP can connect */ +#define ESP_WIFI_MAX_CONN_NUM (10) /**< max number of stations which can connect to ESP32 soft-AP */ typedef struct { wifi_sta_info_t sta[ESP_WIFI_MAX_CONN_NUM]; /**< station list */ - uint8_t num; /**< number of station that associated with ESP32 soft-AP */ + int num; /**< number of station that associated with ESP32 soft-AP */ }wifi_sta_list_t; typedef enum { diff --git a/tools/sdk/include/esp32/soc/dport_reg.h b/tools/sdk/include/esp32/soc/dport_reg.h index d65d9edb..0c43c087 100644 --- a/tools/sdk/include/esp32/soc/dport_reg.h +++ b/tools/sdk/include/esp32/soc/dport_reg.h @@ -3830,6 +3830,11 @@ #define DPORT_DATE_S 0 #define DPORT_DPORT_DATE_VERSION 0x1605190 +/* Flash MMU table for PRO CPU */ +#define DPORT_PRO_FLASH_MMU_TABLE ((volatile uint32_t*) 0x3FF10000) + +/* Flash MMU table for APP CPU */ +#define DPORT_APP_FLASH_MMU_TABLE ((volatile uint32_t*) 0x3FF12000) diff --git a/tools/sdk/include/esp32/soc/frc_timer_reg.h b/tools/sdk/include/esp32/soc/frc_timer_reg.h new file mode 100644 index 00000000..d76199c4 --- /dev/null +++ b/tools/sdk/include/esp32/soc/frc_timer_reg.h @@ -0,0 +1,49 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef _SOC_FRC_TIMER_REG_H_ +#define _SOC_FRC_TIMER_REG_H_ + +#include "soc.h" + +/** + * These are the register definitions for "legacy" timers + */ + +#define REG_FRC_TIMER_BASE(i) (DR_REG_FRC_TIMER_BASE + i*0x20) + +#define FRC_TIMER_LOAD_REG(i) (REG_FRC_TIMER_BASE(i) + 0x0) // timer load value (23 bit for i==0, 32 bit for i==1) +#define FRC_TIMER_LOAD_VALUE(i) ((i == 0)?0x007FFFFF:0xffffffff) +#define FRC_TIMER_LOAD_VALUE_S 0 + +#define FRC_TIMER_COUNT_REG(i) (REG_FRC_TIMER_BASE(i) + 0x4) // timer count value (23 bit for i==0, 32 bit for i==1) +#define FRC_TIMER_COUNT ((i == 0)?0x007FFFFF:0xffffffff) +#define FRC_TIMER_COUNT_S 0 + +#define FRC_TIMER_CTRL_REG(i) (REG_FRC_TIMER_BASE(i) + 0x8) +#define FRC_TIMER_INT_ENABLE (BIT(8)) // enable interrupt +#define FRC_TIMER_ENABLE (BIT(7)) // enable timer +#define FRC_TIMER_AUTOLOAD (BIT(6)) // enable autoload +#define FRC_TIMER_PRESCALER 0x00000007 // 0: divide by 1, 2: divide by 16, 4: divide by 256 +#define FRC_TIMER_PRESCALER_S 1 +#define FRC_TIMER_EDGE_INT (BIT(0)) // 0: level, 1: edge + +#define FRC_TIMER_INT_REG(i) (REG_FRC_TIMER_BASE(i) + 0xC) +#define FRC_TIMER_INT_CLR (BIT(0)) // clear interrupt + +#define FRC_TIMER_ALARM_REG(i) (REG_FRC_TIMER_BASE(i) + 0x10) // timer alarm value; register only present for i == 1 +#define FRC_TIMER_ALARM 0xFFFFFFFF +#define FRC_TIMER_ALARM_S 0 + +#endif //_SOC_FRC_TIMER_REG_H_ diff --git a/tools/sdk/include/esp32/soc/rmt_struct.h b/tools/sdk/include/esp32/soc/rmt_struct.h index fb4c2105..511fefa2 100644 --- a/tools/sdk/include/esp32/soc/rmt_struct.h +++ b/tools/sdk/include/esp32/soc/rmt_struct.h @@ -231,11 +231,10 @@ typedef volatile struct { struct { union { struct { - uint32_t level1: 1; - uint32_t duration1: 15; - uint32_t level0: 1; uint32_t duration0: 15; - + uint32_t level0: 1; + uint32_t duration1: 15; + uint32_t level1: 1; }; uint32_t val; } data[64]; diff --git a/tools/sdk/include/esp32/soc/rtc_cntl_reg.h b/tools/sdk/include/esp32/soc/rtc_cntl_reg.h index bb4e2afc..d99cec18 100644 --- a/tools/sdk/include/esp32/soc/rtc_cntl_reg.h +++ b/tools/sdk/include/esp32/soc/rtc_cntl_reg.h @@ -239,6 +239,9 @@ #define RTC_CNTL_TIME_VALID_V 0x1 #define RTC_CNTL_TIME_VALID_S 30 +/* frequency of RTC slow clock, Hz */ +#define RTC_CTNL_SLOWCLK_FREQ 150000 + #define RTC_CNTL_TIME0_REG (DR_REG_RTCCNTL_BASE + 0x10) /* RTC_CNTL_TIME_LO : RO ;bitpos:[31:0] ;default: 32'h0 ; */ /*description: RTC timer low 32 bits*/ diff --git a/tools/sdk/include/esp32/soc/soc.h b/tools/sdk/include/esp32/soc/soc.h index 4ffdfb06..8ab9f027 100755 --- a/tools/sdk/include/esp32/soc/soc.h +++ b/tools/sdk/include/esp32/soc/soc.h @@ -148,6 +148,7 @@ #define DR_REG_GPIO_SD_BASE 0x3ff44f00 #define DR_REG_FE2_BASE 0x3ff45000 #define DR_REG_FE_BASE 0x3ff46000 +#define DR_REG_FRC_TIMER_BASE 0x3ff47000 #define DR_REG_RTCCNTL_BASE 0x3ff48000 #define DR_REG_RTCIO_BASE 0x3ff48400 #define DR_REG_SARADC_BASE 0x3ff48800 @@ -281,9 +282,9 @@ * 19 2 extern level * 20 2 extern level * 21 2 extern level - * 22 3 extern edge + * 22 3 extern edge FRC1 timer * 23 3 extern level - * 24 4 extern level + * 24 4 extern level TG1_WDT * 25 4 extern level Reserved Reserved * 26 5 extern level Reserved Reserved * 27 3 extern level Reserved Reserved @@ -301,8 +302,10 @@ #define ETS_T0_WDT_INUM 3 #define ETS_WBB_INUM 4 #define ETS_TG0_T1_INUM 10 /**< use edge interrupt*/ +#define ETS_FRC1_INUM 22 +#define ETS_T1_WDT_INUM 24 -//CPU0 Intrrupt number used in ROM, should be cancelled in SDK +//CPU0 Interrupt number used in ROM, should be cancelled in SDK #define ETS_SLC_INUM 1 #define ETS_UART0_INUM 5 #define ETS_UART1_INUM 5 diff --git a/tools/sdk/include/esp32/soc/uart_reg.h b/tools/sdk/include/esp32/soc/uart_reg.h index 155700b2..8cac4bb8 100644 --- a/tools/sdk/include/esp32/soc/uart_reg.h +++ b/tools/sdk/include/esp32/soc/uart_reg.h @@ -18,8 +18,10 @@ #include "soc.h" #define REG_UART_BASE( i ) (DR_REG_UART_BASE + (i) * 0x10000 + ( i > 1 ? 0xe000 : 0 ) ) - +#define REG_UART_AHB_BASE(i) (0x60000000 + (i) * 0x10000 + ( i > 1 ? 0xe000 : 0 ) ) +#define UART_FIFO_AHB_REG(i) (REG_UART_AHB_BASE(i) + 0x0) #define UART_FIFO_REG(i) (REG_UART_BASE(i) + 0x0) + /* UART_RXFIFO_RD_BYTE : RO ;bitpos:[7:0] ;default: 8'b0 ; */ /*description: This register stores one byte data read by rx fifo.*/ #define UART_RXFIFO_RD_BYTE 0x000000FF diff --git a/tools/sdk/include/freertos/freertos/FreeRTOSConfig.h b/tools/sdk/include/freertos/freertos/FreeRTOSConfig.h index fe61f7b0..224857c8 100644 --- a/tools/sdk/include/freertos/freertos/FreeRTOSConfig.h +++ b/tools/sdk/include/freertos/freertos/FreeRTOSConfig.h @@ -180,7 +180,7 @@ /* The Xtensa port uses a separate interrupt stack. Adjust the stack size */ /* to suit the needs of your specific application. */ #ifndef configISR_STACK_SIZE -#define configISR_STACK_SIZE 1024//2048 +#define configISR_STACK_SIZE CONFIG_FREERTOS_ISR_STACKSIZE #endif /* Minimal heap size to make sure examples can run on memory limited diff --git a/tools/sdk/include/freertos/freertos/portable.h b/tools/sdk/include/freertos/freertos/portable.h index f3474d49..9ed378a8 100644 --- a/tools/sdk/include/freertos/freertos/portable.h +++ b/tools/sdk/include/freertos/freertos/portable.h @@ -179,6 +179,14 @@ BaseType_t xPortStartScheduler( void ) PRIVILEGED_FUNCTION; */ void vPortEndScheduler( void ) PRIVILEGED_FUNCTION; + +/* + * Send an interrupt to another core in order to make the task running + * on it yield for a higher-priority task. + */ + +void vPortYieldOtherCore( BaseType_t coreid) PRIVILEGED_FUNCTION; + /* * The structures and methods of manipulating the MPU are contained within the * port layer. diff --git a/tools/sdk/include/freertos/freertos/ringbuf.h b/tools/sdk/include/freertos/freertos/ringbuf.h index 7884e985..93ba3075 100644 --- a/tools/sdk/include/freertos/freertos/ringbuf.h +++ b/tools/sdk/include/freertos/freertos/ringbuf.h @@ -18,22 +18,34 @@ to this bit of memory will block. The requirement for items to be contiguous is slightly problematic when the only way to place the next item would involve a wraparound from the end to the beginning of the ringbuffer. This can -be solved in two ways: -- allow_split_items = pdTRUE: The insertion code will split the item in two items; one which fits +be solved (or not) in a few ways: +- type = RINGBUF_TYPE_ALLOWSPLIT: The insertion code will split the item in two items; one which fits in the space left at the end of the ringbuffer, one that contains the remaining data which is placed in the beginning. Two xRingbufferReceive calls will be needed to retrieve the data. -- allow_split_items = pdFALSE: The insertion code will leave the room at the end of the ringbuffer +- type = RINGBUF_TYPE_NOSPLIT: The insertion code will leave the room at the end of the ringbuffer unused and instead will put the entire item at the start of the ringbuffer, as soon as there is enough free space. +- type = RINGBUF_TYPE_BYTEBUF: This is your conventional byte-based ringbuffer. It does have no +overhead, but it has no item contiguousness either: a read will just give you the entire written +buffer space, or the space up to the end of the buffer, and writes can be broken up in any way +possible. Note that this type cannot do a 2nd read before returning the memory of the 1st. The maximum size of an item will be affected by this decision. When split items are allowed, it's acceptable to push items of (buffer_size)-16 bytes into the buffer. When it's not allowed, the -maximum size is (buffer_size/2)-8 bytes. +maximum size is (buffer_size/2)-8 bytes. The bytebuf can fill the entire buffer with data, it has +no overhead. */ //An opaque handle for a ringbuff object. typedef void * RingbufHandle_t; +//The various types of buffer +typedef enum { + RINGBUF_TYPE_NOSPLIT = 0, + RINGBUF_TYPE_ALLOWSPLIT, + RINGBUF_TYPE_BYTEBUF +} ringbuf_type_t; + /** * @brief Create a ring buffer @@ -45,7 +57,7 @@ typedef void * RingbufHandle_t; * * @return A RingbufHandle_t handle to the created ringbuffer, or NULL in case of error. */ -RingbufHandle_t xRingbufferCreate(size_t buf_length, BaseType_t allow_split_items); +RingbufHandle_t xRingbufferCreate(size_t buf_length, ringbuf_type_t type); /** @@ -120,6 +132,34 @@ void *xRingbufferReceive(RingbufHandle_t ringbuf, size_t *item_size, TickType_t void *xRingbufferReceiveFromISR(RingbufHandle_t ringbuf, size_t *item_size); +/** + * @brief Retrieve bytes from a ByteBuf type of ring buffer, specifying the maximum amount of bytes + * to return + * + * @param ringbuf - Ring buffer to retrieve the item from + * @param item_size - Pointer to a variable to which the size of the retrieved item will be written. + * @param xTicksToWait - Ticks to wait for items in the ringbuffer. + * + * @return Pointer to the retrieved item on success; *item_size filled with the length of the + * item. NULL on timeout, *item_size is untouched in that case. + */ +void *xRingbufferReceiveUpTo(RingbufHandle_t ringbuf, size_t *item_size, TickType_t ticks_to_wait, size_t wanted_size); + + +/** + * @brief Retrieve bytes from a ByteBuf type of ring buffer, specifying the maximum amount of bytes + * to return. Call this from an ISR. + * + * @param ringbuf - Ring buffer to retrieve the item from + * @param item_size - Pointer to a variable to which the size of the retrieved item will be written. + * + * @return Pointer to the retrieved item on success; *item_size filled with the length of the + * item. NULL when the ringbuffer is empty, *item_size is untouched in that case. + */ +void *xRingbufferReceiveUpToFromISR(RingbufHandle_t ringbuf, size_t *item_size, size_t wanted_size); + + + /** * @brief Return a previously-retrieved item to the ringbuffer * diff --git a/tools/sdk/include/log/esp_log.h b/tools/sdk/include/log/esp_log.h index 8ca6e241..6716f6e1 100644 --- a/tools/sdk/include/log/esp_log.h +++ b/tools/sdk/include/log/esp_log.h @@ -24,76 +24,16 @@ extern "C" { #endif /** - * @brief Logging library - * - * Log library has two ways of managing log verbosity: compile time, set via - * menuconfig, and runtime, using esp_log_set_level function. - * - * At compile time, filtering is done using CONFIG_LOG_DEFAULT_LEVEL macro, set via - * menuconfig. All logging statments for levels higher than CONFIG_LOG_DEFAULT_LEVEL - * will be removed by the preprocessor. - * - * At run time, all logs below CONFIG_LOG_DEFAULT_LEVEL are enabled by default. - * esp_log_set_level function may be used to set logging level per module. - * Modules are identified by their tags, which are human-readable ASCII - * zero-terminated strings. - * - * How to use this library: - * - * In each C file which uses logging functionality, define TAG variable like this: - * - * static const char* TAG = "MyModule"; - * - * then use one of logging macros to produce output, e.g: - * - * ESP_LOGW(TAG, "Baud rate error %.1f%%. Requested: %d baud, actual: %d baud", error * 100, baud_req, baud_real); - * - * Several macros are available for different verbosity levels: - * - * ESP_LOGE — error - * ESP_LOGW — warning - * ESP_LOGI — info - * ESP_LOGD - debug - * ESP_LOGV - verbose - * - * Additionally there is an _EARLY_ variant for each of these macros (e.g. ESP_EARLY_LOGE). - * These variants can run in startup code, before heap allocator and syscalls - * have been initialized. - * When compiling bootloader, normal ESP_LOGx macros fall back to the same implementation - * as ESP_EARLY_LOGx macros. So the only place where ESP_EARLY_LOGx have to be used explicitly - * is the early startup code, such as heap allocator initialization code. - * - * (Note that such distinction would not have been necessary if we would have an - * ets_vprintf function in the ROM. Then it would be possible to switch implementation - * from _EARLY version to normal version on the fly. Unfortunately, ets_vprintf in ROM - * has been inlined by the compiler into ets_printf, so it is not accessible outside.) - * - * To override default verbosity level at file or component scope, define LOG_LOCAL_LEVEL macro. - * At file scope, define it before including esp_log.h, e.g.: - * - * #define LOG_LOCAL_LEVEL ESP_LOG_VERBOSE - * #include "esp_log.h" - * - * At component scope, define it in component makefile: - * - * CFLAGS += -D LOG_LOCAL_LEVEL=ESP_LOG_DEBUG - * - * To configure logging output per module at runtime, add calls to esp_log_set_level function: - * - * esp_log_set_level("*", ESP_LOG_ERROR); // set all components to ERROR level - * esp_log_set_level("wifi", ESP_LOG_WARN); // enable WARN logs from WiFi stack - * esp_log_set_level("dhcpc", ESP_LOG_INFO); // enable INFO logs from DHCP client + * @brief Log level * */ - - typedef enum { - ESP_LOG_NONE, // No log output - ESP_LOG_ERROR, // Critical errors, software module can not recover on its own - ESP_LOG_WARN, // Error conditions from which recovery measures have been taken - ESP_LOG_INFO, // Information messages which describe normal flow of events - ESP_LOG_DEBUG, // Extra information which is not necessary for normal use (values, pointers, sizes, etc). - ESP_LOG_VERBOSE // Bigger chunks of debugging information, or frequent messages which can potentially flood the output. + ESP_LOG_NONE, /*!< No log output */ + ESP_LOG_ERROR, /*!< Critical errors, software module can not recover on its own */ + ESP_LOG_WARN, /*!< Error conditions from which recovery measures have been taken */ + ESP_LOG_INFO, /*!< Information messages which describe normal flow of events */ + ESP_LOG_DEBUG, /*!< Extra information which is not necessary for normal use (values, pointers, sizes, etc). */ + ESP_LOG_VERBOSE /*!< Bigger chunks of debugging information, or frequent messages which can potentially flood the output. */ } esp_log_level_t; typedef int (*vprintf_like_t)(const char *, va_list); @@ -120,17 +60,6 @@ void esp_log_level_set(const char* tag, esp_log_level_t level); */ void esp_log_set_vprintf(vprintf_like_t func); -/** - * @brief Write message into the log - * - * This function is not intended to be used directly. Instead, use one of - * ESP_LOGE, ESP_LOGW, ESP_LOGI, ESP_LOGD, ESP_LOGV macros. - * - * This function or these macros should not be used from an interrupt. - */ -void esp_log_write(esp_log_level_t level, const char* tag, const char* format, ...) __attribute__ ((format (printf, 3, 4))); - - /** * @brief Function which returns timestamp to be used in log output * @@ -143,7 +72,17 @@ void esp_log_write(esp_log_level_t level, const char* tag, const char* format, . * * @return timestamp, in milliseconds */ -uint32_t esp_log_timestamp(); +uint32_t esp_log_timestamp(void); + +/** + * @brief Write message into the log + * + * This function is not intended to be used directly. Instead, use one of + * ESP_LOGE, ESP_LOGW, ESP_LOGI, ESP_LOGD, ESP_LOGV macros. + * + * This function or these macros should not be used from an interrupt. + */ +void esp_log_write(esp_log_level_t level, const char* tag, const char* format, ...) __attribute__ ((format (printf, 3, 4))); #if CONFIG_LOG_COLORS diff --git a/tools/sdk/include/lwip/lwipopts.h b/tools/sdk/include/lwip/lwipopts.h index e0a6d4db..88eee7ca 100755 --- a/tools/sdk/include/lwip/lwipopts.h +++ b/tools/sdk/include/lwip/lwipopts.h @@ -33,6 +33,9 @@ #define __LWIPOPTS_H__ #include +#include +#include +#include #include "esp_task.h" #include "sdkconfig.h" @@ -95,17 +98,37 @@ extern unsigned long os_random(void); ---------- Internal Memory Pool Sizes ---------- ------------------------------------------------ */ -/** - * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. - * (requires the LWIP_TCP option) - */ -#define MEMP_NUM_TCP_PCB 5 /** * MEMP_NUM_NETCONN: the number of struct netconns. * (only needed if you use the sequential API, like api_lib.c) */ -#define MEMP_NUM_NETCONN 10 +#define MEMP_NUM_NETCONN CONFIG_LWIP_MAX_SOCKETS + +/** + * MEMP_NUM_RAW_PCB: Number of raw connection PCBs + * (requires the LWIP_RAW option) + */ +#define MEMP_NUM_RAW_PCB 16 + +/** + * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB 16 + +/** + * MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB_LISTEN 16 + +/** + * MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One + * per active UDP "connection". + * (requires the LWIP_UDP option) + */ +#define MEMP_NUM_UDP_PCB 16 /* -------------------------------- @@ -220,26 +243,6 @@ extern unsigned long os_random(void); ---------- TCP options ---------- --------------------------------- */ -/** - * TCP_WND: The size of a TCP window. This must be at least - * (2 * TCP_MSS) for things to work well - */ - -#define ESP_PER_SOC_TCP_WND 1 -#if ESP_PER_SOC_TCP_WND -#define TCP_WND_DEFAULT (4*TCP_MSS) -#define TCP_SND_BUF_DEFAULT (2*TCP_MSS) - -#define TCP_WND(pcb) (pcb->per_soc_tcp_wnd) -#define TCP_SND_BUF(pcb) (pcb->per_soc_tcp_snd_buf) -#else -#ifdef PERF -extern unsigned char misc_prof_get_tcpw(void); -extern unsigned char misc_prof_get_tcp_snd_buf(void); -#define TCP_WND(pcb) (misc_prof_get_tcpw()*TCP_MSS) -#define TCP_SND_BUF(pcb) (misc_prof_get_tcp_snd_buf()*TCP_MSS) -#endif -#endif /** @@ -523,10 +526,10 @@ extern unsigned char misc_prof_get_tcp_snd_buf(void); #define ESP_IP4_ATON 1 #define ESP_LIGHT_SLEEP 1 - -#if ESP_PER_SOC_TCP_WND #define TCP_WND_DEFAULT (4*TCP_MSS) #define TCP_SND_BUF_DEFAULT (2*TCP_MSS) + +#if ESP_PER_SOC_TCP_WND #define TCP_WND(pcb) (pcb->per_soc_tcp_wnd) #define TCP_SND_BUF(pcb) (pcb->per_soc_tcp_snd_buf) #else @@ -542,19 +545,32 @@ extern unsigned char misc_prof_get_tcp_snd_buf(void); * DHCP_DEBUG: Enable debugging in dhcp.c. */ #define DHCP_DEBUG LWIP_DBG_OFF -#define LWIP_DEBUG 0 +#define LWIP_DEBUG LWIP_DBG_OFF #define TCP_DEBUG LWIP_DBG_OFF -#define ESP_THREAD_SAFE_DEBUG LWIP_DBG_OFF +#define ESP_THREAD_SAFE_DEBUG LWIP_DBG_OFF #define CHECKSUM_CHECK_UDP 0 #define CHECKSUM_CHECK_IP 0 -#define HEAP_HIGHWAT 20*1024 - #define LWIP_NETCONN_FULLDUPLEX 1 #define LWIP_NETCONN_SEM_PER_THREAD 1 +#define LWIP_DHCP_MAX_NTP_SERVERS CONFIG_LWIP_DHCP_MAX_NTP_SERVERS +#define LWIP_TIMEVAL_PRIVATE 0 +#define SNTP_SET_SYSTEM_TIME_US(sec, us) \ + do { \ + struct timeval tv = { .tv_sec = sec, .tv_usec = us }; \ + settimeofday(&tv, NULL); \ + } while (0); + +#define SNTP_GET_SYSTEM_TIME(sec, us) \ + do { \ + struct timeval tv = { .tv_sec = 0, .tv_usec = 0 }; \ + gettimeofday(&tv, NULL); \ + (sec) = tv.tv_sec; \ + (us) = tv.tv_usec; \ + } while (0); #define SOC_SEND_LOG //printf diff --git a/tools/sdk/include/lwip/port/lwipopts.h b/tools/sdk/include/lwip/port/lwipopts.h index e0a6d4db..88eee7ca 100755 --- a/tools/sdk/include/lwip/port/lwipopts.h +++ b/tools/sdk/include/lwip/port/lwipopts.h @@ -33,6 +33,9 @@ #define __LWIPOPTS_H__ #include +#include +#include +#include #include "esp_task.h" #include "sdkconfig.h" @@ -95,17 +98,37 @@ extern unsigned long os_random(void); ---------- Internal Memory Pool Sizes ---------- ------------------------------------------------ */ -/** - * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. - * (requires the LWIP_TCP option) - */ -#define MEMP_NUM_TCP_PCB 5 /** * MEMP_NUM_NETCONN: the number of struct netconns. * (only needed if you use the sequential API, like api_lib.c) */ -#define MEMP_NUM_NETCONN 10 +#define MEMP_NUM_NETCONN CONFIG_LWIP_MAX_SOCKETS + +/** + * MEMP_NUM_RAW_PCB: Number of raw connection PCBs + * (requires the LWIP_RAW option) + */ +#define MEMP_NUM_RAW_PCB 16 + +/** + * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB 16 + +/** + * MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB_LISTEN 16 + +/** + * MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One + * per active UDP "connection". + * (requires the LWIP_UDP option) + */ +#define MEMP_NUM_UDP_PCB 16 /* -------------------------------- @@ -220,26 +243,6 @@ extern unsigned long os_random(void); ---------- TCP options ---------- --------------------------------- */ -/** - * TCP_WND: The size of a TCP window. This must be at least - * (2 * TCP_MSS) for things to work well - */ - -#define ESP_PER_SOC_TCP_WND 1 -#if ESP_PER_SOC_TCP_WND -#define TCP_WND_DEFAULT (4*TCP_MSS) -#define TCP_SND_BUF_DEFAULT (2*TCP_MSS) - -#define TCP_WND(pcb) (pcb->per_soc_tcp_wnd) -#define TCP_SND_BUF(pcb) (pcb->per_soc_tcp_snd_buf) -#else -#ifdef PERF -extern unsigned char misc_prof_get_tcpw(void); -extern unsigned char misc_prof_get_tcp_snd_buf(void); -#define TCP_WND(pcb) (misc_prof_get_tcpw()*TCP_MSS) -#define TCP_SND_BUF(pcb) (misc_prof_get_tcp_snd_buf()*TCP_MSS) -#endif -#endif /** @@ -523,10 +526,10 @@ extern unsigned char misc_prof_get_tcp_snd_buf(void); #define ESP_IP4_ATON 1 #define ESP_LIGHT_SLEEP 1 - -#if ESP_PER_SOC_TCP_WND #define TCP_WND_DEFAULT (4*TCP_MSS) #define TCP_SND_BUF_DEFAULT (2*TCP_MSS) + +#if ESP_PER_SOC_TCP_WND #define TCP_WND(pcb) (pcb->per_soc_tcp_wnd) #define TCP_SND_BUF(pcb) (pcb->per_soc_tcp_snd_buf) #else @@ -542,19 +545,32 @@ extern unsigned char misc_prof_get_tcp_snd_buf(void); * DHCP_DEBUG: Enable debugging in dhcp.c. */ #define DHCP_DEBUG LWIP_DBG_OFF -#define LWIP_DEBUG 0 +#define LWIP_DEBUG LWIP_DBG_OFF #define TCP_DEBUG LWIP_DBG_OFF -#define ESP_THREAD_SAFE_DEBUG LWIP_DBG_OFF +#define ESP_THREAD_SAFE_DEBUG LWIP_DBG_OFF #define CHECKSUM_CHECK_UDP 0 #define CHECKSUM_CHECK_IP 0 -#define HEAP_HIGHWAT 20*1024 - #define LWIP_NETCONN_FULLDUPLEX 1 #define LWIP_NETCONN_SEM_PER_THREAD 1 +#define LWIP_DHCP_MAX_NTP_SERVERS CONFIG_LWIP_DHCP_MAX_NTP_SERVERS +#define LWIP_TIMEVAL_PRIVATE 0 +#define SNTP_SET_SYSTEM_TIME_US(sec, us) \ + do { \ + struct timeval tv = { .tv_sec = sec, .tv_usec = us }; \ + settimeofday(&tv, NULL); \ + } while (0); + +#define SNTP_GET_SYSTEM_TIME(sec, us) \ + do { \ + struct timeval tv = { .tv_sec = 0, .tv_usec = 0 }; \ + gettimeofday(&tv, NULL); \ + (sec) = tv.tv_sec; \ + (us) = tv.tv_usec; \ + } while (0); #define SOC_SEND_LOG //printf diff --git a/tools/sdk/include/nvs_flash/nvs.h b/tools/sdk/include/nvs_flash/nvs.h index 912ea221..84189597 100644 --- a/tools/sdk/include/nvs_flash/nvs.h +++ b/tools/sdk/include/nvs_flash/nvs.h @@ -28,23 +28,27 @@ extern "C" { */ typedef uint32_t nvs_handle; -#define ESP_ERR_NVS_BASE 0x1100 -#define ESP_ERR_NVS_NOT_INITIALIZED (ESP_ERR_NVS_BASE + 0x01) -#define ESP_ERR_NVS_NOT_FOUND (ESP_ERR_NVS_BASE + 0x02) -#define ESP_ERR_NVS_TYPE_MISMATCH (ESP_ERR_NVS_BASE + 0x03) -#define ESP_ERR_NVS_READ_ONLY (ESP_ERR_NVS_BASE + 0x04) -#define ESP_ERR_NVS_NOT_ENOUGH_SPACE (ESP_ERR_NVS_BASE + 0x05) -#define ESP_ERR_NVS_INVALID_NAME (ESP_ERR_NVS_BASE + 0x06) -#define ESP_ERR_NVS_INVALID_HANDLE (ESP_ERR_NVS_BASE + 0x07) -#define ESP_ERR_NVS_REMOVE_FAILED (ESP_ERR_NVS_BASE + 0x08) -#define ESP_ERR_NVS_KEY_TOO_LONG (ESP_ERR_NVS_BASE + 0x09) -#define ESP_ERR_NVS_PAGE_FULL (ESP_ERR_NVS_BASE + 0x0a) -#define ESP_ERR_NVS_INVALID_STATE (ESP_ERR_NVS_BASE + 0x0b) -#define ESP_ERR_NVS_INVALID_LENGTH (ESP_ERR_NVS_BASE + 0x0c) +#define ESP_ERR_NVS_BASE 0x1100 /*!< Starting number of error codes */ +#define ESP_ERR_NVS_NOT_INITIALIZED (ESP_ERR_NVS_BASE + 0x01) /*!< The storage driver is not initialized */ +#define ESP_ERR_NVS_NOT_FOUND (ESP_ERR_NVS_BASE + 0x02) /*!< Id namespace doesn’t exist yet and mode is NVS_READONLY */ +#define ESP_ERR_NVS_TYPE_MISMATCH (ESP_ERR_NVS_BASE + 0x03) /*!< TBA */ +#define ESP_ERR_NVS_READ_ONLY (ESP_ERR_NVS_BASE + 0x04) /*!< Storage handle was opened as read only */ +#define ESP_ERR_NVS_NOT_ENOUGH_SPACE (ESP_ERR_NVS_BASE + 0x05) /*!< There is not enough space in the underlying storage to save the value */ +#define ESP_ERR_NVS_INVALID_NAME (ESP_ERR_NVS_BASE + 0x06) /*!< Namespace name doesn’t satisfy constraints */ +#define ESP_ERR_NVS_INVALID_HANDLE (ESP_ERR_NVS_BASE + 0x07) /*!< Handle has been closed or is NULL */ +#define ESP_ERR_NVS_REMOVE_FAILED (ESP_ERR_NVS_BASE + 0x08) /*!< The value wasn’t updated because flash write operation has failed. The value was written however, and update will be finished after re-initialization of nvs, provided that flash operation doesn’t fail again. */ +#define ESP_ERR_NVS_KEY_TOO_LONG (ESP_ERR_NVS_BASE + 0x09) /*!< TBA */ +#define ESP_ERR_NVS_PAGE_FULL (ESP_ERR_NVS_BASE + 0x0a) /*!< TBA */ +#define ESP_ERR_NVS_INVALID_STATE (ESP_ERR_NVS_BASE + 0x0b) /*!< TBA */ +#define ESP_ERR_NVS_INVALID_LENGTH (ESP_ERR_NVS_BASE + 0x0c) /*!< TBA */ +/** + * @brief Mode of opening the non-volatile storage + * + */ typedef enum { - NVS_READONLY, - NVS_READWRITE + NVS_READONLY, /*!< Read only */ + NVS_READWRITE /*!< Read and write */ } nvs_open_mode; /** @@ -58,12 +62,13 @@ typedef enum { * underlying implementation, but is guaranteed to be * at least 16 characters. Shouldn't be empty. * @param[in] open_mode NVS_READWRITE or NVS_READONLY. If NVS_READONLY, will - * open a handle for reading only. All write requests will - * be rejected for this handle. + * open a handle for reading only. All write requests will + * be rejected for this handle. * @param[out] out_handle If successful (return code is zero), handle will be * returned in this argument. * - * @return - ESP_OK if storage handle was opened successfully + * @return + * - ESP_OK if storage handle was opened successfully * - ESP_ERR_NVS_NOT_INITIALIZED if the storage driver is not initialized * - ESP_ERR_NVS_NOT_FOUND id namespace doesn't exist yet and * mode is NVS_READONLY @@ -86,7 +91,8 @@ esp_err_t nvs_open(const char* name, nvs_open_mode open_mode, nvs_handle *out_ha * @param[in] value The value to set. * @param[in] length For nvs_set_blob: length of binary value to set, in bytes. * - * @return - ESP_OK if value was set successfully + * @return + * - ESP_OK if value was set successfully * - ESP_ERR_NVS_INVALID_HANDLE if handle has been closed or is NULL * - ESP_ERR_NVS_READ_ONLY if storage handle was opened as read only * - ESP_ERR_NVS_INVALID_NAME if key name doesn't satisfy constraints @@ -129,24 +135,26 @@ esp_err_t nvs_set_blob(nvs_handle handle, const char* key, const void* value, si * It is suggested that nvs_get/set_str is used for zero-terminated C strings, and * nvs_get/set_blob used for arbitrary data structures. * - * Example of using nvs_get_i32: + * \code{c} + * // Example of using nvs_get_i32: * int32_t max_buffer_size = 4096; // default value * esp_err_t err = nvs_get_i32(my_handle, "max_buffer_size", &max_buffer_size); * assert(err == ESP_OK || err == ESP_ERR_NVS_NOT_FOUND); * // if ESP_ERR_NVS_NOT_FOUND was returned, max_buffer_size will still * // have its default value. * - * Example (without error checking) of using nvs_get_str to get a string into dynamic array: + * // Example (without error checking) of using nvs_get_str to get a string into dynamic array: * size_t required_size; * nvs_get_str(my_handle, "server_name", NULL, &required_size); * char* server_name = malloc(required_size); * nvs_get_str(my_handle, "server_name", server_name, &required_size); * - * Example (without error checking) of using nvs_get_blob to get a binary data + * // Example (without error checking) of using nvs_get_blob to get a binary data * into a static array: * uint8_t mac_addr[6]; * size_t size = sizeof(mac_addr); * nvs_get_blob(my_handle, "dst_mac_addr", mac_addr, &size); + * \endcode * * @param[in] handle Handle obtained from nvs_open function. * @param[in] key Key name. Maximal length is determined by the underlying @@ -162,7 +170,8 @@ esp_err_t nvs_set_blob(nvs_handle handle, const char* key, const void* value, si * zero, will be set to the actual length of the value * written. For nvs_get_str this includes zero terminator. * - * @return - ESP_OK if the value was retrieved successfully + * @return + * - ESP_OK if the value was retrieved successfully * - ESP_ERR_NVS_NOT_FOUND if the requested key doesn't exist * - ESP_ERR_NVS_INVALID_HANDLE if handle has been closed or is NULL * - ESP_ERR_NVS_INVALID_NAME if key name doesn't satisfy constraints @@ -191,7 +200,8 @@ esp_err_t nvs_get_blob(nvs_handle handle, const char* key, void* out_value, size * implementation, but is guaranteed to be at least * 16 characters. Shouldn't be empty. * - * @return - ESP_OK if erase operation was successful + * @return + * - ESP_OK if erase operation was successful * - ESP_ERR_NVS_INVALID_HANDLE if handle has been closed or is NULL * - ESP_ERR_NVS_READ_ONLY if handle was opened as read only * - ESP_ERR_NVS_NOT_FOUND if the requested key doesn't exist @@ -207,7 +217,8 @@ esp_err_t nvs_erase_key(nvs_handle handle, const char* key); * @param[in] handle Storage handle obtained with nvs_open. * Handles that were opened read only cannot be used. * - * @return - ESP_OK if erase operation was successful + * @return + * - ESP_OK if erase operation was successful * - ESP_ERR_NVS_INVALID_HANDLE if handle has been closed or is NULL * - ESP_ERR_NVS_READ_ONLY if handle was opened as read only * - other error codes from the underlying storage driver @@ -224,7 +235,8 @@ esp_err_t nvs_erase_all(nvs_handle handle); * @param[in] handle Storage handle obtained with nvs_open. * Handles that were opened read only cannot be used. * - * @return - ESP_OK if the changes have been written successfully + * @return + * - ESP_OK if the changes have been written successfully * - ESP_ERR_NVS_INVALID_HANDLE if handle has been closed or is NULL * - other error codes from the underlying storage driver */ @@ -249,3 +261,4 @@ void nvs_close(nvs_handle handle); #endif #endif //ESP_NVS_H + diff --git a/tools/sdk/include/nvs_flash/nvs_flash.h b/tools/sdk/include/nvs_flash/nvs_flash.h index ce98f394..1cade0e9 100644 --- a/tools/sdk/include/nvs_flash/nvs_flash.h +++ b/tools/sdk/include/nvs_flash/nvs_flash.h @@ -22,6 +22,8 @@ extern "C" { Temporarily, this region is hardcoded as a 12KB (0x3000 byte) region starting at 24KB (0x6000 byte) offset in flash. + + @return ESP_OK if flash was successfully initialised. */ esp_err_t nvs_flash_init(void); diff --git a/tools/sdk/include/spi_flash/esp_partition.h b/tools/sdk/include/spi_flash/esp_partition.h new file mode 100644 index 00000000..ae0185dc --- /dev/null +++ b/tools/sdk/include/spi_flash/esp_partition.h @@ -0,0 +1,242 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef __ESP_PARTITION_H__ +#define __ESP_PARTITION_H__ + +#include +#include +#include +#include "esp_err.h" +#include "esp_spi_flash.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + ESP_PARTITION_TYPE_APP = 0x00, + ESP_PARTITION_TYPE_DATA = 0x01, + ESP_PARTITION_TYPE_FILESYSTEM = 0x02, +} esp_partition_type_t; + +typedef enum { + ESP_PARTITION_SUBTYPE_APP_FACTORY = 0x00, + ESP_PARTITION_SUBTYPE_APP_OTA_MIN = 0x10, + ESP_PARTITION_SUBTYPE_APP_OTA_0 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 0, + ESP_PARTITION_SUBTYPE_APP_OTA_1 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 1, + ESP_PARTITION_SUBTYPE_APP_OTA_2 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 2, + ESP_PARTITION_SUBTYPE_APP_OTA_3 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 3, + ESP_PARTITION_SUBTYPE_APP_OTA_4 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 4, + ESP_PARTITION_SUBTYPE_APP_OTA_5 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 5, + ESP_PARTITION_SUBTYPE_APP_OTA_6 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 6, + ESP_PARTITION_SUBTYPE_APP_OTA_7 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 7, + ESP_PARTITION_SUBTYPE_APP_OTA_8 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 8, + ESP_PARTITION_SUBTYPE_APP_OTA_9 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 9, + ESP_PARTITION_SUBTYPE_APP_OTA_10 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 10, + ESP_PARTITION_SUBTYPE_APP_OTA_11 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 11, + ESP_PARTITION_SUBTYPE_APP_OTA_12 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 12, + ESP_PARTITION_SUBTYPE_APP_OTA_13 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 13, + ESP_PARTITION_SUBTYPE_APP_OTA_14 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 14, + ESP_PARTITION_SUBTYPE_APP_OTA_15 = ESP_PARTITION_SUBTYPE_APP_OTA_MIN + 15, + ESP_PARTITION_SUBTYPE_APP_OTA_MAX = 15, + ESP_PARTITION_SUBTYPE_APP_TEST = 0x20, + + ESP_PARTITION_SUBTYPE_DATA_OTA = 0x00, + ESP_PARTITION_SUBTYPE_DATA_RF = 0x01, + ESP_PARTITION_SUBTYPE_DATA_NVS = 0x02, + + ESP_PARTITION_SUBTYPE_FILESYSTEM_ESPHTTPD = 0x00, + ESP_PARTITION_SUBTYPE_FILESYSTEM_FAT = 0x01, + ESP_PARTITION_SUBTYPE_FILESYSTEM_SPIFFS = 0x02, + + ESP_PARTITION_SUBTYPE_ANY = 0xff, +} esp_partition_subtype_t; + +#define ESP_PARTITION_SUBTYPE_OTA(i) ((esp_partition_subtype_t)(ESP_PARTITION_SUBTYPE_APP_OTA_MIN + ((i) & 0xf))) + + +typedef struct esp_partition_iterator_opaque_* esp_partition_iterator_t; + +typedef struct { + esp_partition_type_t type; + esp_partition_subtype_t subtype; + uint32_t address; + uint32_t size; + char label[17]; + bool encrypted; +} esp_partition_t; + +/** + * @brief Find partition based on one or more parameters + * + * @param type Partition type, one of esp_partition_type_t values + * @param subtype Partition subtype, one of esp_partition_subtype_t values. + * To find all partitions of given type, use + * ESP_PARTITION_SUBTYPE_ANY. + * @param label (optional) Partition label. Set this value if looking + * for partition with a specific name. Pass NULL otherwise. + * + * @return iterator which can be used to enumerate all the partitions found, + * or NULL if no partitions were found. + * Iterator obtained through this function has to be released + * using esp_partition_iterator_release when not used any more. + */ +esp_partition_iterator_t esp_partition_find(esp_partition_type_t type, esp_partition_subtype_t subtype, const char* label); + +/** + * @brief Find first partition based on one or more parameters + * + * @param type Partition type, one of esp_partition_type_t values + * @param subtype Partition subtype, one of esp_partition_subtype_t values. + * To find all partitions of given type, use + * ESP_PARTITION_SUBTYPE_ANY. + * @param label (optional) Partition label. Set this value if looking + * for partition with a specific name. Pass NULL otherwise. + * + * @return pointer to esp_partition_t structure, or NULL if no partition is found. + * This pointer is valid for the lifetime of the application. + */ +const esp_partition_t* esp_partition_find_first(esp_partition_type_t type, esp_partition_subtype_t subtype, const char* label); + +/** + * @brief Get esp_partition_t structure for given partition + * + * @param iterator Iterator obtained using esp_partition_find. Must be non-NULL. + * + * @return pointer to esp_partition_t structure. This pointer is valid for the lifetime + * of the application. + */ +const esp_partition_t* esp_partition_get(esp_partition_iterator_t iterator); + +/** + * @brief Move partition iterator to the next partition found + * + * Any copies of the iterator will be invalid after this call. + * + * @param iterator Iterator obtained using esp_partition_find. Must be non-NULL. + * + * @return NULL if no partition was found, valid esp_partition_iterator_t otherwise. + */ +esp_partition_iterator_t esp_partition_next(esp_partition_iterator_t iterator); + +/** + * @brief Release partition iterator + * + * @param iterator Iterator obtained using esp_partition_find. Must be non-NULL. + * + */ +void esp_partition_iterator_release(esp_partition_iterator_t iterator); + +/** + * @brief Read data from the partition + * + * @param partition Pointer to partition structure obtained using + * esp_partition_find_first or esp_partition_get. + * Must be non-NULL. + * @param dst Pointer to the buffer where data should be stored. + * Pointer must be non-NULL and buffer must be at least 'size' bytes long. + * @param src_offset Address of the data to be read, relative to the + * beginning of the partition. + * @param size Size of data to be read, in bytes. + * + * @return ESP_OK, if data was read successfully; + * ESP_ERR_INVALID_ARG, if src_offset exceeds partition size; + * ESP_ERR_INVALID_SIZE, if read would go out of bounds of the partition; + * or one of error codes from lower-level flash driver. + */ +esp_err_t esp_partition_read(const esp_partition_t* partition, + size_t src_offset, void* dst, size_t size); + +/** + * @brief Write data to the partition + * + * Before writing data to flash, corresponding region of flash needs to be erased. + * This can be done using esp_partition_erase_range function. + * + * @param partition Pointer to partition structure obtained using + * esp_partition_find_first or esp_partition_get. + * Must be non-NULL. + * @param dst_offset Address where the data should be written, relative to the + * beginning of the partition. + * @param src Pointer to the source buffer. Pointer must be non-NULL and + * buffer must be at least 'size' bytes long. + * @param size Size of data to be written, in bytes. + * + * @note Prior to writing to flash memory, make sure it has been erased with + * esp_partition_erase_range call. + * + * @return ESP_OK, if data was written successfully; + * ESP_ERR_INVALID_ARG, if dst_offset exceeds partition size; + * ESP_ERR_INVALID_SIZE, if write would go out of bounds of the partition; + * or one of error codes from lower-level flash driver. + */ +esp_err_t esp_partition_write(const esp_partition_t* partition, + size_t dst_offset, const void* src, size_t size); + +/** + * @brief Erase part of the partition + * + * @param partition Pointer to partition structure obtained using + * esp_partition_find_first or esp_partition_get. + * Must be non-NULL. + * @param start_addr Address where erase operation should start. Must be aligned + * to 4 kilobytes. + * @param size Size of the range which should be erased, in bytes. + * Must be divisible by 4 kilobytes. + * + * @return ESP_OK, if the range was erased successfully; + * ESP_ERR_INVALID_ARG, if iterator or dst are NULL; + * ESP_ERR_INVALID_SIZE, if erase would go out of bounds of the partition; + * or one of error codes from lower-level flash driver. + */ +esp_err_t esp_partition_erase_range(const esp_partition_t* partition, + uint32_t start_addr, uint32_t size); + +/** + * @brief Configure MMU to map partition into data memory + * + * Unlike spi_flash_mmap function, which requires a 64kB aligned base address, + * this function doesn't impose such a requirement. + * If offset results in a flash address which is not aligned to 64kB boundary, + * address will be rounded to the lower 64kB boundary, so that mapped region + * includes requested range. + * Pointer returned via out_ptr argument will be adjusted to point to the + * requested offset (not necessarily to the beginning of mmap-ed region). + * + * To release mapped memory, pass handle returned via out_handle argument to + * spi_flash_munmap function. + * + * @param partition Pointer to partition structure obtained using + * esp_partition_find_first or esp_partition_get. + * Must be non-NULL. + * @param offset Offset from the beginning of partition where mapping should start. + * @param size Size of the area to be mapped. + * @param memory Memory space where the region should be mapped + * @param out_ptr Output, pointer to the mapped memory region + * @param out_handle Output, handle which should be used for spi_flash_munmap call + * + * @return ESP_OK, if successful + */ +esp_err_t esp_partition_mmap(const esp_partition_t* partition, uint32_t offset, uint32_t size, + spi_flash_mmap_memory_t memory, + const void** out_ptr, spi_flash_mmap_handle_t* out_handle); + + +#ifdef __cplusplus +} +#endif + + +#endif /* __ESP_PARTITION_H__ */ diff --git a/tools/sdk/include/spi_flash/esp_spi_flash.h b/tools/sdk/include/spi_flash/esp_spi_flash.h index 6d635880..840bbc49 100644 --- a/tools/sdk/include/spi_flash/esp_spi_flash.h +++ b/tools/sdk/include/spi_flash/esp_spi_flash.h @@ -16,6 +16,7 @@ #define ESP_SPI_FLASH_H #include +#include #include "esp_err.h" #include "sdkconfig.h" @@ -34,41 +35,126 @@ extern "C" { * * This function must be called exactly once, before any other * spi_flash_* functions are called. + * Currently this function is called from startup code. There is + * no need to call it from application code. * */ void spi_flash_init(); +/** + * @brief Get flash chip size, as set in binary image header + * + * @note This value does not necessarily match real flash size. + * + * @return size of flash chip, in bytes + */ +size_t spi_flash_get_chip_size(); + /** * @brief Erase the Flash sector. * - * @param uint16 sec : Sector number, the count starts at sector 0, 4KB per sector. + * @param sector Sector number, the count starts at sector 0, 4KB per sector. * * @return esp_err_t */ -esp_err_t spi_flash_erase_sector(uint16_t sec); +esp_err_t spi_flash_erase_sector(size_t sector); + +/** + * @brief Erase a range of flash sectors + * + * @param uint32_t start_address : Address where erase operation has to start. + * Must be 4kB-aligned + * @param uint32_t size : Size of erased range, in bytes. Must be divisible by 4kB. + * + * @return esp_err_t + */ +esp_err_t spi_flash_erase_range(size_t start_addr, size_t size); + /** * @brief Write data to Flash. * - * @param uint32 des_addr : destination address in Flash. - * @param uint32 *src_addr : source address of the data. - * @param uint32 size : length of data + * @note Address in flash, dest, has to be 4-byte aligned. + * This is a temporary limitation which will be removed. + * + * @param dest destination address in Flash + * @param src pointer to the source buffer + * @param size length of data, in bytes * * @return esp_err_t */ -esp_err_t spi_flash_write(uint32_t des_addr, const uint32_t *src_addr, uint32_t size); +esp_err_t spi_flash_write(size_t dest, const void *src, size_t size); /** * @brief Read data from Flash. * - * @param uint32 src_addr : source address of the data in Flash. - * @param uint32 *des_addr : destination address. - * @param uint32 size : length of data + * @note Both src and dest have to be 4-byte aligned. + * This is a temporary limitation which will be removed. + * + * @param src source address of the data in Flash. + * @param dest pointer to the destination buffer + * @param size length of data * * @return esp_err_t */ -esp_err_t spi_flash_read(uint32_t src_addr, uint32_t *des_addr, uint32_t size); +esp_err_t spi_flash_read(size_t src, void *dest, size_t size); +/** + * @brief Enumeration which specifies memory space requested in an mmap call + */ +typedef enum { + SPI_FLASH_MMAP_DATA, /**< map to data memory (Vaddr0), allows byte-aligned access, 4 MB total */ + SPI_FLASH_MMAP_INST, /**< map to instruction memory (Vaddr1-3), allows only 4-byte-aligned access, 11 MB total */ +} spi_flash_mmap_memory_t; + +/** + * @brief Opaque handle for memory region obtained from spi_flash_mmap. + */ +typedef uint32_t spi_flash_mmap_handle_t; + +/** + * @brief Map region of flash memory into data or instruction address space + * + * This function allocates sufficient number of 64k MMU pages and configures + * them to map request region of flash memory into data address space or into + * instruction address space. It may reuse MMU pages which already provide + * required mapping. As with any allocator, there is possibility of fragmentation + * of address space if mmap/munmap are heavily used. To troubleshoot issues with + * page allocation, use spi_flash_mmap_dump function. + * + * @param src_addr Physical address in flash where requested region starts. + * This address *must* be aligned to 64kB boundary. + * @param size Size of region which has to be mapped. This size will be rounded + * up to a 64k boundary. + * @param memory Memory space where the region should be mapped + * @param out_ptr Output, pointer to the mapped memory region + * @param out_handle Output, handle which should be used for spi_flash_munmap call + * + * @return ESP_OK on success, ESP_ERR_NO_MEM if pages can not be allocated + */ +esp_err_t spi_flash_mmap(uint32_t src_addr, size_t size, spi_flash_mmap_memory_t memory, + const void** out_ptr, spi_flash_mmap_handle_t* out_handle); + +/** + * @brief Release region previously obtained using spi_flash_mmap + * + * @note Calling this function will not necessarily unmap memory region. + * Region will only be unmapped when there are no other handles which + * reference this region. In case of partially overlapping regions + * it is possible that memory will be unmapped partially. + * + * @param handle Handle obtained from spi_flash_mmap + */ +void spi_flash_munmap(spi_flash_mmap_handle_t handle); + +/** + * @brief Display information about mapped regions + * + * This function lists handles obtained using spi_flash_mmap, along with range + * of pages allocated to each handle. It also lists all non-zero entries of + * MMU table and corresponding reference counts. + */ +void spi_flash_mmap_dump(); #if CONFIG_SPI_FLASH_ENABLE_COUNTERS @@ -78,7 +164,7 @@ esp_err_t spi_flash_read(uint32_t src_addr, uint32_t *des_addr, uint32_t size); typedef struct { uint32_t count; // number of times operation was executed uint32_t time; // total time taken, in microseconds - uint32_t bytes; // total number of bytes, for read and write operations + uint32_t bytes; // total number of bytes } spi_flash_counter_t; typedef struct { diff --git a/tools/sdk/include/tcpip_adapter/tcpip_adapter.h b/tools/sdk/include/tcpip_adapter/tcpip_adapter.h index 21832532..e8470168 100644 --- a/tools/sdk/include/tcpip_adapter/tcpip_adapter.h +++ b/tools/sdk/include/tcpip_adapter/tcpip_adapter.h @@ -73,8 +73,8 @@ typedef struct { }tcpip_adapter_sta_info_t; typedef struct { - tcpip_adapter_sta_info_t sta[ESP_WIFI_MAX_CONN_NUM+2]; - uint8_t num; + tcpip_adapter_sta_info_t sta[ESP_WIFI_MAX_CONN_NUM]; + int num; }tcpip_adapter_sta_list_t; #endif diff --git a/tools/sdk/include/wpa_supplicant/byteswap.h b/tools/sdk/include/wpa_supplicant/byteswap.h new file mode 100644 index 00000000..1a8bb8fd --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/byteswap.h @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2010 Espressif System + */ + +#ifndef BYTESWAP_H +#define BYTESWAP_H + +/* Swap bytes in 16 bit value. */ +#ifdef __GNUC__ +# define __bswap_16(x) \ + (__extension__ \ + ({ unsigned short int __bsx = (x); \ + ((((__bsx) >> 8) & 0xff) | (((__bsx) & 0xff) << 8)); })) +#else +static INLINE unsigned short int +__bswap_16 (unsigned short int __bsx) +{ + return ((((__bsx) >> 8) & 0xff) | (((__bsx) & 0xff) << 8)); +} +#endif + +/* Swap bytes in 32 bit value. */ +#ifdef __GNUC__ +# define __bswap_32(x) \ + (__extension__ \ + ({ unsigned int __bsx = (x); \ + ((((__bsx) & 0xff000000) >> 24) | (((__bsx) & 0x00ff0000) >> 8) | \ + (((__bsx) & 0x0000ff00) << 8) | (((__bsx) & 0x000000ff) << 24)); })) +#else +static INLINE unsigned int +__bswap_32 (unsigned int __bsx) +{ + return ((((__bsx) & 0xff000000) >> 24) | (((__bsx) & 0x00ff0000) >> 8) | + (((__bsx) & 0x0000ff00) << 8) | (((__bsx) & 0x000000ff) << 24)); +} +#endif + +#if defined __GNUC__ && __GNUC__ >= 2 +/* Swap bytes in 64 bit value. */ +# define __bswap_constant_64(x) \ + ((((x) & 0xff00000000000000ull) >> 56) \ + | (((x) & 0x00ff000000000000ull) >> 40) \ + | (((x) & 0x0000ff0000000000ull) >> 24) \ + | (((x) & 0x000000ff00000000ull) >> 8) \ + | (((x) & 0x00000000ff000000ull) << 8) \ + | (((x) & 0x0000000000ff0000ull) << 24) \ + | (((x) & 0x000000000000ff00ull) << 40) \ + | (((x) & 0x00000000000000ffull) << 56)) + +# define __bswap_64(x) \ + (__extension__ \ + ({ union { __extension__ unsigned long long int __ll; \ + unsigned int __l[2]; } __w, __r; \ + if (__builtin_constant_p (x)) \ + __r.__ll = __bswap_constant_64 (x); \ + else \ + { \ + __w.__ll = (x); \ + __r.__l[0] = __bswap_32 (__w.__l[1]); \ + __r.__l[1] = __bswap_32 (__w.__l[0]); \ + } \ + __r.__ll; })) +#endif + +#endif /* BYTESWAP_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/aes.h b/tools/sdk/include/wpa_supplicant/crypto/aes.h new file mode 100644 index 00000000..ba384a9d --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/aes.h @@ -0,0 +1,27 @@ +/* + * AES functions + * Copyright (c) 2003-2006, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef AES_H +#define AES_H + +#define AES_BLOCK_SIZE 16 + +void * aes_encrypt_init(const u8 *key, size_t len); +void aes_encrypt(void *ctx, const u8 *plain, u8 *crypt); +void aes_encrypt_deinit(void *ctx); +void * aes_decrypt_init(const u8 *key, size_t len); +void aes_decrypt(void *ctx, const u8 *crypt, u8 *plain); +void aes_decrypt_deinit(void *ctx); + +#endif /* AES_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/aes_i.h b/tools/sdk/include/wpa_supplicant/crypto/aes_i.h new file mode 100644 index 00000000..1063422a --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/aes_i.h @@ -0,0 +1,131 @@ +/* + * AES (Rijndael) cipher + * Copyright (c) 2003-2005, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef AES_I_H +#define AES_I_H + +#include "aes.h" + +/* #define FULL_UNROLL */ +#define AES_SMALL_TABLES + +extern const u32 Te0[256]; +extern const u32 Te1[256]; +extern const u32 Te2[256]; +extern const u32 Te3[256]; +extern const u32 Te4[256]; +extern const u32 Td0[256]; +extern const u32 Td1[256]; +extern const u32 Td2[256]; +extern const u32 Td3[256]; +extern const u32 Td4[256]; +extern const u32 rcon[10]; +extern const u8 Td4s[256]; +extern const u8 rcons[10]; + +#ifndef AES_SMALL_TABLES + +#define RCON(i) rcon[(i)] + +#define TE0(i) Te0[((i) >> 24) & 0xff] +#define TE1(i) Te1[((i) >> 16) & 0xff] +#define TE2(i) Te2[((i) >> 8) & 0xff] +#define TE3(i) Te3[(i) & 0xff] +#define TE41(i) (Te4[((i) >> 24) & 0xff] & 0xff000000) +#define TE42(i) (Te4[((i) >> 16) & 0xff] & 0x00ff0000) +#define TE43(i) (Te4[((i) >> 8) & 0xff] & 0x0000ff00) +#define TE44(i) (Te4[(i) & 0xff] & 0x000000ff) +#define TE421(i) (Te4[((i) >> 16) & 0xff] & 0xff000000) +#define TE432(i) (Te4[((i) >> 8) & 0xff] & 0x00ff0000) +#define TE443(i) (Te4[(i) & 0xff] & 0x0000ff00) +#define TE414(i) (Te4[((i) >> 24) & 0xff] & 0x000000ff) +#define TE411(i) (Te4[((i) >> 24) & 0xff] & 0xff000000) +#define TE422(i) (Te4[((i) >> 16) & 0xff] & 0x00ff0000) +#define TE433(i) (Te4[((i) >> 8) & 0xff] & 0x0000ff00) +#define TE444(i) (Te4[(i) & 0xff] & 0x000000ff) +#define TE4(i) (Te4[(i)] & 0x000000ff) + +#define TD0(i) Td0[((i) >> 24) & 0xff] +#define TD1(i) Td1[((i) >> 16) & 0xff] +#define TD2(i) Td2[((i) >> 8) & 0xff] +#define TD3(i) Td3[(i) & 0xff] +#define TD41(i) (Td4[((i) >> 24) & 0xff] & 0xff000000) +#define TD42(i) (Td4[((i) >> 16) & 0xff] & 0x00ff0000) +#define TD43(i) (Td4[((i) >> 8) & 0xff] & 0x0000ff00) +#define TD44(i) (Td4[(i) & 0xff] & 0x000000ff) +#define TD0_(i) Td0[(i) & 0xff] +#define TD1_(i) Td1[(i) & 0xff] +#define TD2_(i) Td2[(i) & 0xff] +#define TD3_(i) Td3[(i) & 0xff] + +#else /* AES_SMALL_TABLES */ + +#define RCON(i) (rcons[(i)] << 24) + +static inline u32 rotr(u32 val, int bits) +{ + return (val >> bits) | (val << (32 - bits)); +} + +#define TE0(i) Te0[((i) >> 24) & 0xff] +#define TE1(i) rotr(Te0[((i) >> 16) & 0xff], 8) +#define TE2(i) rotr(Te0[((i) >> 8) & 0xff], 16) +#define TE3(i) rotr(Te0[(i) & 0xff], 24) +#define TE41(i) ((Te0[((i) >> 24) & 0xff] << 8) & 0xff000000) +#define TE42(i) (Te0[((i) >> 16) & 0xff] & 0x00ff0000) +#define TE43(i) (Te0[((i) >> 8) & 0xff] & 0x0000ff00) +#define TE44(i) ((Te0[(i) & 0xff] >> 8) & 0x000000ff) +#define TE421(i) ((Te0[((i) >> 16) & 0xff] << 8) & 0xff000000) +#define TE432(i) (Te0[((i) >> 8) & 0xff] & 0x00ff0000) +#define TE443(i) (Te0[(i) & 0xff] & 0x0000ff00) +#define TE414(i) ((Te0[((i) >> 24) & 0xff] >> 8) & 0x000000ff) +#define TE411(i) ((Te0[((i) >> 24) & 0xff] << 8) & 0xff000000) +#define TE422(i) (Te0[((i) >> 16) & 0xff] & 0x00ff0000) +#define TE433(i) (Te0[((i) >> 8) & 0xff] & 0x0000ff00) +#define TE444(i) ((Te0[(i) & 0xff] >> 8) & 0x000000ff) +#define TE4(i) ((Te0[(i)] >> 8) & 0x000000ff) + +#define TD0(i) Td0[((i) >> 24) & 0xff] +#define TD1(i) rotr(Td0[((i) >> 16) & 0xff], 8) +#define TD2(i) rotr(Td0[((i) >> 8) & 0xff], 16) +#define TD3(i) rotr(Td0[(i) & 0xff], 24) +#define TD41(i) (Td4s[((i) >> 24) & 0xff] << 24) +#define TD42(i) (Td4s[((i) >> 16) & 0xff] << 16) +#define TD43(i) (Td4s[((i) >> 8) & 0xff] << 8) +#define TD44(i) (Td4s[(i) & 0xff]) +#define TD0_(i) Td0[(i) & 0xff] +#define TD1_(i) rotr(Td0[(i) & 0xff], 8) +#define TD2_(i) rotr(Td0[(i) & 0xff], 16) +#define TD3_(i) rotr(Td0[(i) & 0xff], 24) + +#endif /* AES_SMALL_TABLES */ + +#ifdef _MSC_VER +#define SWAP(x) (_lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00) +#define GETU32(p) SWAP(*((u32 *)(p))) +#define PUTU32(ct, st) { *((u32 *)(ct)) = SWAP((st)); } +#else +#define GETU32(pt) (((u32)(pt)[0] << 24) ^ ((u32)(pt)[1] << 16) ^ \ +((u32)(pt)[2] << 8) ^ ((u32)(pt)[3])) +#define PUTU32(ct, st) { \ +(ct)[0] = (u8)((st) >> 24); (ct)[1] = (u8)((st) >> 16); \ +(ct)[2] = (u8)((st) >> 8); (ct)[3] = (u8)(st); } +#endif + +#define AES_PRIV_SIZE (4 * 4 * 15 + 4) +#define AES_PRIV_NR_POS (4 * 15) + +int rijndaelKeySetupEnc(u32 rk[], const u8 cipherKey[], int keyBits); + +#endif /* AES_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/aes_wrap.h b/tools/sdk/include/wpa_supplicant/crypto/aes_wrap.h new file mode 100644 index 00000000..4b1c7b08 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/aes_wrap.h @@ -0,0 +1,48 @@ +/* + * AES-based functions + * + * - AES Key Wrap Algorithm (128-bit KEK) (RFC3394) + * - One-Key CBC MAC (OMAC1) hash with AES-128 + * - AES-128 CTR mode encryption + * - AES-128 EAX mode encryption/decryption + * - AES-128 CBC + * + * Copyright (c) 2003-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef AES_WRAP_H +#define AES_WRAP_H + +int __must_check aes_wrap(const u8 *kek, int n, const u8 *plain, u8 *cipher); +int __must_check aes_unwrap(const u8 *kek, int n, const u8 *cipher, u8 *plain); +int __must_check omac1_aes_128_vector(const u8 *key, size_t num_elem, + const u8 *addr[], const size_t *len, + u8 *mac); +int __must_check omac1_aes_128(const u8 *key, const u8 *data, size_t data_len, + u8 *mac); +int __must_check aes_128_encrypt_block(const u8 *key, const u8 *in, u8 *out); +int __must_check aes_128_ctr_encrypt(const u8 *key, const u8 *nonce, + u8 *data, size_t data_len); +int __must_check aes_128_eax_encrypt(const u8 *key, + const u8 *nonce, size_t nonce_len, + const u8 *hdr, size_t hdr_len, + u8 *data, size_t data_len, u8 *tag); +int __must_check aes_128_eax_decrypt(const u8 *key, + const u8 *nonce, size_t nonce_len, + const u8 *hdr, size_t hdr_len, + u8 *data, size_t data_len, const u8 *tag); +int __must_check aes_128_cbc_encrypt(const u8 *key, const u8 *iv, u8 *data, + size_t data_len); +int __must_check aes_128_cbc_decrypt(const u8 *key, const u8 *iv, u8 *data, + size_t data_len); + +#endif /* AES_WRAP_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/base64.h b/tools/sdk/include/wpa_supplicant/crypto/base64.h new file mode 100644 index 00000000..b87a1682 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/base64.h @@ -0,0 +1,23 @@ +/* + * Base64 encoding/decoding (RFC1341) + * Copyright (c) 2005, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef BASE64_H +#define BASE64_H + +unsigned char * base64_encode(const unsigned char *src, size_t len, + size_t *out_len); +unsigned char * base64_decode(const unsigned char *src, size_t len, + size_t *out_len); + +#endif /* BASE64_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/common.h b/tools/sdk/include/wpa_supplicant/crypto/common.h new file mode 100644 index 00000000..319b861e --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/common.h @@ -0,0 +1,481 @@ +/* + * wpa_supplicant/hostapd / common helper functions, etc. + * Copyright (c) 2002-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef COMMON_H +#define COMMON_H + +#include "os.h" + +#if defined(__XTENSA__) +#include +#define __BYTE_ORDER BYTE_ORDER +#define __LITTLE_ENDIAN LITTLE_ENDIAN +#define __BIG_ENDIAN BIG_ENDIAN +#endif /*__XTENSA__*/ + +#if defined(__linux__) || defined(__GLIBC__) +#include +#include +#endif /* __linux__ */ + +#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || \ + defined(__OpenBSD__) +#include +#include +#define __BYTE_ORDER _BYTE_ORDER +#define __LITTLE_ENDIAN _LITTLE_ENDIAN +#define __BIG_ENDIAN _BIG_ENDIAN +#ifdef __OpenBSD__ +#define bswap_16 swap16 +#define bswap_32 swap32 +#define bswap_64 swap64 +#else /* __OpenBSD__ */ +#define bswap_16 bswap16 +#define bswap_32 bswap32 +#define bswap_64 bswap64 +#endif /* __OpenBSD__ */ +#endif /* defined(__FreeBSD__) || defined(__NetBSD__) || + * defined(__DragonFly__) || defined(__OpenBSD__) */ + +#ifdef __APPLE__ +#include +#include +#define __BYTE_ORDER _BYTE_ORDER +#define __LITTLE_ENDIAN _LITTLE_ENDIAN +#define __BIG_ENDIAN _BIG_ENDIAN +static inline unsigned short bswap_16(unsigned short v) +{ + return ((v & 0xff) << 8) | (v >> 8); +} + +static inline unsigned int bswap_32(unsigned int v) +{ + return ((v & 0xff) << 24) | ((v & 0xff00) << 8) | + ((v & 0xff0000) >> 8) | (v >> 24); +} +#endif /* __APPLE__ */ + +#ifdef CONFIG_TI_COMPILER +#define __BIG_ENDIAN 4321 +#define __LITTLE_ENDIAN 1234 +#ifdef __big_endian__ +#define __BYTE_ORDER __BIG_ENDIAN +#else +#define __BYTE_ORDER __LITTLE_ENDIAN +#endif +#endif /* CONFIG_TI_COMPILER */ + +#ifdef __SYMBIAN32__ +#define __BIG_ENDIAN 4321 +#define __LITTLE_ENDIAN 1234 +#define __BYTE_ORDER __LITTLE_ENDIAN +#endif /* __SYMBIAN32__ */ + +#ifdef CONFIG_NATIVE_WINDOWS +#include + +typedef int socklen_t; + +#ifndef MSG_DONTWAIT +#define MSG_DONTWAIT 0 /* not supported */ +#endif + +#endif /* CONFIG_NATIVE_WINDOWS */ + +#ifdef _MSC_VER +#define inline __inline + +#undef vsnprintf +#define vsnprintf _vsnprintf +#undef close +#define close closesocket +#endif /* _MSC_VER */ + + +/* Define platform specific integer types */ + +#ifdef _MSC_VER +typedef UINT64 u64; +typedef UINT32 u32; +typedef UINT16 u16; +typedef UINT8 u8; +typedef INT64 s64; +typedef INT32 s32; +typedef INT16 s16; +typedef INT8 s8; +#define WPA_TYPES_DEFINED +#endif /* _MSC_VER */ + +#ifdef __vxworks +typedef unsigned long long u64; +typedef UINT32 u32; +typedef UINT16 u16; +typedef UINT8 u8; +typedef long long s64; +typedef INT32 s32; +typedef INT16 s16; +typedef INT8 s8; +#define WPA_TYPES_DEFINED +#endif /* __vxworks */ + +#ifdef CONFIG_TI_COMPILER +#ifdef _LLONG_AVAILABLE +typedef unsigned long long u64; +#else +/* + * TODO: 64-bit variable not available. Using long as a workaround to test the + * build, but this will likely not work for all operations. + */ +typedef unsigned long u64; +#endif +typedef unsigned int u32; +typedef unsigned short u16; +typedef unsigned char u8; +#define WPA_TYPES_DEFINED +#endif /* CONFIG_TI_COMPILER */ + +#ifdef __SYMBIAN32__ +#define __REMOVE_PLATSEC_DIAGNOSTICS__ +#include +typedef TUint64 u64; +typedef TUint32 u32; +typedef TUint16 u16; +typedef TUint8 u8; +#define WPA_TYPES_DEFINED +#endif /* __SYMBIAN32__ */ + +#ifndef WPA_TYPES_DEFINED +#ifdef CONFIG_USE_INTTYPES_H +#include +#else +#include +#endif + +typedef uint64_t u64; +typedef uint32_t u32; +typedef uint16_t u16; +typedef uint8_t u8; +typedef int64_t s64; +typedef int32_t s32; +typedef int16_t s16; +typedef int8_t s8; +#define WPA_TYPES_DEFINED +#endif /* !WPA_TYPES_DEFINED */ + + +/* Define platform specific byte swapping macros */ + +#if defined(__CYGWIN__) || defined(CONFIG_NATIVE_WINDOWS) + +static inline unsigned short wpa_swap_16(unsigned short v) +{ + return ((v & 0xff) << 8) | (v >> 8); +} + +static inline unsigned int wpa_swap_32(unsigned int v) +{ + return ((v & 0xff) << 24) | ((v & 0xff00) << 8) | + ((v & 0xff0000) >> 8) | (v >> 24); +} + +#define le_to_host16(n) (n) +#define host_to_le16(n) (n) +#define be_to_host16(n) wpa_swap_16(n) +#define host_to_be16(n) wpa_swap_16(n) +#define le_to_host32(n) (n) +#define be_to_host32(n) wpa_swap_32(n) +#define host_to_be32(n) wpa_swap_32(n) + +#define WPA_BYTE_SWAP_DEFINED + +#endif /* __CYGWIN__ || CONFIG_NATIVE_WINDOWS */ + + +#ifndef WPA_BYTE_SWAP_DEFINED + +#ifndef __BYTE_ORDER +#ifndef __LITTLE_ENDIAN +#ifndef __BIG_ENDIAN +#define __LITTLE_ENDIAN 1234 +#define __BIG_ENDIAN 4321 +#if defined(sparc) +#define __BYTE_ORDER __BIG_ENDIAN +#endif +#endif /* __BIG_ENDIAN */ +#endif /* __LITTLE_ENDIAN */ +#endif /* __BYTE_ORDER */ + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define le_to_host16(n) ((__force u16) (le16) (n)) +#define host_to_le16(n) ((__force le16) (u16) (n)) +#define be_to_host16(n) bswap_16((__force u16) (be16) (n)) +#define host_to_be16(n) ((__force be16) bswap_16((n))) +#define le_to_host32(n) ((__force u32) (le32) (n)) +#define host_to_le32(n) ((__force le32) (u32) (n)) +#define be_to_host32(n) bswap_32((__force u32) (be32) (n)) +#define host_to_be32(n) ((__force be32) bswap_32((n))) +#define le_to_host64(n) ((__force u64) (le64) (n)) +#define host_to_le64(n) ((__force le64) (u64) (n)) +#define be_to_host64(n) bswap_64((__force u64) (be64) (n)) +#define host_to_be64(n) ((__force be64) bswap_64((n))) +#elif __BYTE_ORDER == __BIG_ENDIAN +#define le_to_host16(n) bswap_16(n) +#define host_to_le16(n) bswap_16(n) +#define be_to_host16(n) (n) +#define host_to_be16(n) (n) +#define le_to_host32(n) bswap_32(n) +#define be_to_host32(n) (n) +#define host_to_be32(n) (n) +#define le_to_host64(n) bswap_64(n) +#define host_to_le64(n) bswap_64(n) +#define be_to_host64(n) (n) +#define host_to_be64(n) (n) +#ifndef WORDS_BIGENDIAN +#define WORDS_BIGENDIAN +#endif +#else +#error Could not determine CPU byte order +#endif + +#define WPA_BYTE_SWAP_DEFINED +#endif /* !WPA_BYTE_SWAP_DEFINED */ + + +/* Macros for handling unaligned memory accesses */ + +#define WPA_GET_BE16(a) ((u16) (((a)[0] << 8) | (a)[1])) +#define WPA_PUT_BE16(a, val) \ + do { \ + (a)[0] = ((u16) (val)) >> 8; \ + (a)[1] = ((u16) (val)) & 0xff; \ + } while (0) + +#define WPA_GET_LE16(a) ((u16) (((a)[1] << 8) | (a)[0])) +#define WPA_PUT_LE16(a, val) \ + do { \ + (a)[1] = ((u16) (val)) >> 8; \ + (a)[0] = ((u16) (val)) & 0xff; \ + } while (0) + +#define WPA_GET_BE24(a) ((((u32) (a)[0]) << 16) | (((u32) (a)[1]) << 8) | \ + ((u32) (a)[2])) +#define WPA_PUT_BE24(a, val) \ + do { \ + (a)[0] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[2] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_BE32(a) ((((u32) (a)[0]) << 24) | (((u32) (a)[1]) << 16) | \ + (((u32) (a)[2]) << 8) | ((u32) (a)[3])) +#define WPA_PUT_BE32(a, val) \ + do { \ + (a)[0] = (u8) ((((u32) (val)) >> 24) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[2] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[3] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_LE32(a) ((((u32) (a)[3]) << 24) | (((u32) (a)[2]) << 16) | \ + (((u32) (a)[1]) << 8) | ((u32) (a)[0])) +#define WPA_PUT_LE32(a, val) \ + do { \ + (a)[3] = (u8) ((((u32) (val)) >> 24) & 0xff); \ + (a)[2] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[0] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_BE64(a) ((((u64) (a)[0]) << 56) | (((u64) (a)[1]) << 48) | \ + (((u64) (a)[2]) << 40) | (((u64) (a)[3]) << 32) | \ + (((u64) (a)[4]) << 24) | (((u64) (a)[5]) << 16) | \ + (((u64) (a)[6]) << 8) | ((u64) (a)[7])) +#define WPA_PUT_BE64(a, val) \ + do { \ + (a)[0] = (u8) (((u64) (val)) >> 56); \ + (a)[1] = (u8) (((u64) (val)) >> 48); \ + (a)[2] = (u8) (((u64) (val)) >> 40); \ + (a)[3] = (u8) (((u64) (val)) >> 32); \ + (a)[4] = (u8) (((u64) (val)) >> 24); \ + (a)[5] = (u8) (((u64) (val)) >> 16); \ + (a)[6] = (u8) (((u64) (val)) >> 8); \ + (a)[7] = (u8) (((u64) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_LE64(a) ((((u64) (a)[7]) << 56) | (((u64) (a)[6]) << 48) | \ + (((u64) (a)[5]) << 40) | (((u64) (a)[4]) << 32) | \ + (((u64) (a)[3]) << 24) | (((u64) (a)[2]) << 16) | \ + (((u64) (a)[1]) << 8) | ((u64) (a)[0])) + + +#ifndef ETH_ALEN +#define ETH_ALEN 6 +#endif +#ifndef IFNAMSIZ +#define IFNAMSIZ 16 +#endif +#ifndef ETH_P_ALL +#define ETH_P_ALL 0x0003 +#endif +#ifndef ETH_P_PAE +#define ETH_P_PAE 0x888E /* Port Access Entity (IEEE 802.1X) */ +#endif /* ETH_P_PAE */ +#ifndef ETH_P_EAPOL +#define ETH_P_EAPOL ETH_P_PAE +#endif /* ETH_P_EAPOL */ +#ifndef ETH_P_RSN_PREAUTH +#define ETH_P_RSN_PREAUTH 0x88c7 +#endif /* ETH_P_RSN_PREAUTH */ +#ifndef ETH_P_RRB +#define ETH_P_RRB 0x890D +#endif /* ETH_P_RRB */ + + +#ifdef __GNUC__ +#define PRINTF_FORMAT(a,b) __attribute__ ((format (printf, (a), (b)))) +#define STRUCT_PACKED __attribute__ ((packed)) +#else +#define PRINTF_FORMAT(a,b) +#define STRUCT_PACKED +#endif + +#ifdef CONFIG_ANSI_C_EXTRA + +#if !defined(_MSC_VER) || _MSC_VER < 1400 +/* snprintf - used in number of places; sprintf() is _not_ a good replacement + * due to possible buffer overflow; see, e.g., + * http://www.ijs.si/software/snprintf/ for portable implementation of + * snprintf. */ +int snprintf(char *str, size_t size, const char *format, ...); + +/* vsnprintf - only used for wpa_msg() in wpa_supplicant.c */ +int vsnprintf(char *str, size_t size, const char *format, va_list ap); +#endif /* !defined(_MSC_VER) || _MSC_VER < 1400 */ + +/* getopt - only used in main.c */ +int getopt(int argc, char *const argv[], const char *optstring); +extern char *optarg; +extern int optind; + +#ifndef CONFIG_NO_SOCKLEN_T_TYPEDEF +#ifndef __socklen_t_defined +typedef int socklen_t; +#endif +#endif + +/* inline - define as __inline or just define it to be empty, if needed */ +#ifdef CONFIG_NO_INLINE +#define inline +#else +#define inline __inline +#endif + +#ifndef __func__ +#define __func__ "__func__ not defined" +#endif + +#ifndef bswap_16 +#define bswap_16(a) ((((u16) (a) << 8) & 0xff00) | (((u16) (a) >> 8) & 0xff)) +#endif + +#ifndef bswap_32 +#define bswap_32(a) ((((u32) (a) << 24) & 0xff000000) | \ + (((u32) (a) << 8) & 0xff0000) | \ + (((u32) (a) >> 8) & 0xff00) | \ + (((u32) (a) >> 24) & 0xff)) +#endif + +#ifndef MSG_DONTWAIT +#define MSG_DONTWAIT 0 +#endif + +#ifdef _WIN32_WCE +void perror(const char *s); +#endif /* _WIN32_WCE */ + +#endif /* CONFIG_ANSI_C_EXTRA */ + +#ifndef MAC2STR +#define MAC2STR(a) (a)[0], (a)[1], (a)[2], (a)[3], (a)[4], (a)[5] +#define MACSTR "%02x:%02x:%02x:%02x:%02x:%02x" +#endif + +#ifndef BIT +#define BIT(x) (1 << (x)) +#endif + +/* + * Definitions for sparse validation + * (http://kernel.org/pub/linux/kernel/people/josh/sparse/) + */ +#ifdef __CHECKER__ +#define __force __attribute__((force)) +#define __bitwise __attribute__((bitwise)) +#else +#define __force +#define __bitwise +#endif + +typedef u16 __bitwise be16; +typedef u16 __bitwise le16; +typedef u32 __bitwise be32; +typedef u32 __bitwise le32; +typedef u64 __bitwise be64; +typedef u64 __bitwise le64; + +#ifndef __must_check +#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) +#define __must_check __attribute__((__warn_unused_result__)) +#else +#define __must_check +#endif /* __GNUC__ */ +#endif /* __must_check */ + +int hwaddr_aton(const char *txt, u8 *addr); +int hwaddr_aton2(const char *txt, u8 *addr); +int hexstr2bin(const char *hex, u8 *buf, size_t len); +void inc_byte_array(u8 *counter, size_t len); +void wpa_get_ntp_timestamp(u8 *buf); +int wpa_snprintf_hex(char *buf, size_t buf_size, const u8 *data, size_t len); +int wpa_snprintf_hex_uppercase(char *buf, size_t buf_size, const u8 *data, + size_t len); + +#ifdef CONFIG_NATIVE_WINDOWS +void wpa_unicode2ascii_inplace(TCHAR *str); +TCHAR * wpa_strdup_tchar(const char *str); +#else /* CONFIG_NATIVE_WINDOWS */ +#define wpa_unicode2ascii_inplace(s) do { } while (0) +#define wpa_strdup_tchar(s) strdup((s)) +#endif /* CONFIG_NATIVE_WINDOWS */ + +const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len); + +static inline int is_zero_ether_addr(const u8 *a) +{ + return !(a[0] | a[1] | a[2] | a[3] | a[4] | a[5]); +} + +/* + * gcc 4.4 ends up generating strict-aliasing warnings about some very common + * networking socket uses that do not really result in a real problem and + * cannot be easily avoided with union-based type-punning due to struct + * definitions including another struct in system header files. To avoid having + * to fully disable strict-aliasing warnings, provide a mechanism to hide the + * typecast from aliasing for now. A cleaner solution will hopefully be found + * in the future to handle these cases. + */ +void * __hide_aliasing_typecast(void *foo); +#define aliasing_hide_typecast(a,t) (t *) __hide_aliasing_typecast((a)) + +#endif /* COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/crypto.h b/tools/sdk/include/wpa_supplicant/crypto/crypto.h new file mode 100644 index 00000000..f0b9f224 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/crypto.h @@ -0,0 +1,471 @@ +/* + * WPA Supplicant / wrapper functions for crypto libraries + * Copyright (c) 2004-2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + * + * This file defines the cryptographic functions that need to be implemented + * for wpa_supplicant and hostapd. When TLS is not used, internal + * implementation of MD5, SHA1, and AES is used and no external libraries are + * required. When TLS is enabled (e.g., by enabling EAP-TLS or EAP-PEAP), the + * crypto library used by the TLS implementation is expected to be used for + * non-TLS needs, too, in order to save space by not implementing these + * functions twice. + * + * Wrapper code for using each crypto library is in its own file (crypto*.c) + * and one of these files is build and linked in to provide the functions + * defined here. + */ + +#ifndef CRYPTO_H +#define CRYPTO_H + +/** + * md4_vector - MD4 hash for data vector + * @num_elem: Number of elements in the data vector + * @addr: Pointers to the data areas + * @len: Lengths of the data blocks + * @mac: Buffer for the hash + * Returns: 0 on success, -1 on failure + */ +int md4_vector(size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac); + +/** + * md5_vector - MD5 hash for data vector + * @num_elem: Number of elements in the data vector + * @addr: Pointers to the data areas + * @len: Lengths of the data blocks + * @mac: Buffer for the hash + * Returns: 0 on success, -1 on failure + */ +int md5_vector(size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac); + +#ifdef CONFIG_FIPS +/** + * md5_vector_non_fips_allow - MD5 hash for data vector (non-FIPS use allowed) + * @num_elem: Number of elements in the data vector + * @addr: Pointers to the data areas + * @len: Lengths of the data blocks + * @mac: Buffer for the hash + * Returns: 0 on success, -1 on failure + */ +int md5_vector_non_fips_allow(size_t num_elem, const u8 *addr[], + const size_t *len, u8 *mac); +#else /* CONFIG_FIPS */ +#define md5_vector_non_fips_allow md5_vector +#endif /* CONFIG_FIPS */ + + +/** + * sha1_vector - SHA-1 hash for data vector + * @num_elem: Number of elements in the data vector + * @addr: Pointers to the data areas + * @len: Lengths of the data blocks + * @mac: Buffer for the hash + * Returns: 0 on success, -1 on failure + */ +int sha1_vector(size_t num_elem, const u8 *addr[], const size_t *len, + u8 *mac); + +/** + * fips186_2-prf - NIST FIPS Publication 186-2 change notice 1 PRF + * @seed: Seed/key for the PRF + * @seed_len: Seed length in bytes + * @x: Buffer for PRF output + * @xlen: Output length in bytes + * Returns: 0 on success, -1 on failure + * + * This function implements random number generation specified in NIST FIPS + * Publication 186-2 for EAP-SIM. This PRF uses a function that is similar to + * SHA-1, but has different message padding. + */ +int __must_check fips186_2_prf(const u8 *seed, size_t seed_len, u8 *x, + size_t xlen); + +/** + * sha256_vector - SHA256 hash for data vector + * @num_elem: Number of elements in the data vector + * @addr: Pointers to the data areas + * @len: Lengths of the data blocks + * @mac: Buffer for the hash + * Returns: 0 on success, -1 on failure + */ +int sha256_vector(size_t num_elem, const u8 *addr[], const size_t *len, + u8 *mac); + +/** + * des_encrypt - Encrypt one block with DES + * @clear: 8 octets (in) + * @key: 7 octets (in) (no parity bits included) + * @cypher: 8 octets (out) + */ +void des_encrypt(const u8 *clear, const u8 *key, u8 *cypher); + +/** + * aes_encrypt_init - Initialize AES for encryption + * @key: Encryption key + * @len: Key length in bytes (usually 16, i.e., 128 bits) + * Returns: Pointer to context data or %NULL on failure + */ +void * aes_encrypt_init(const u8 *key, size_t len); + +/** + * aes_encrypt - Encrypt one AES block + * @ctx: Context pointer from aes_encrypt_init() + * @plain: Plaintext data to be encrypted (16 bytes) + * @crypt: Buffer for the encrypted data (16 bytes) + */ +void aes_encrypt(void *ctx, const u8 *plain, u8 *crypt); + +/** + * aes_encrypt_deinit - Deinitialize AES encryption + * @ctx: Context pointer from aes_encrypt_init() + */ +void aes_encrypt_deinit(void *ctx); + +/** + * aes_decrypt_init - Initialize AES for decryption + * @key: Decryption key + * @len: Key length in bytes (usually 16, i.e., 128 bits) + * Returns: Pointer to context data or %NULL on failure + */ +void * aes_decrypt_init(const u8 *key, size_t len); + +/** + * aes_decrypt - Decrypt one AES block + * @ctx: Context pointer from aes_encrypt_init() + * @crypt: Encrypted data (16 bytes) + * @plain: Buffer for the decrypted data (16 bytes) + */ +void aes_decrypt(void *ctx, const u8 *crypt, u8 *plain); + +/** + * aes_decrypt_deinit - Deinitialize AES decryption + * @ctx: Context pointer from aes_encrypt_init() + */ +void aes_decrypt_deinit(void *ctx); + + +enum crypto_hash_alg { + CRYPTO_HASH_ALG_MD5, CRYPTO_HASH_ALG_SHA1, + CRYPTO_HASH_ALG_HMAC_MD5, CRYPTO_HASH_ALG_HMAC_SHA1, + CRYPTO_HASH_ALG_SHA256, CRYPTO_HASH_ALG_HMAC_SHA256 +}; + + +struct crypto_hash; + +/** + * crypto_hash_init - Initialize hash/HMAC function + * @alg: Hash algorithm + * @key: Key for keyed hash (e.g., HMAC) or %NULL if not needed + * @key_len: Length of the key in bytes + * Returns: Pointer to hash context to use with other hash functions or %NULL + * on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +struct crypto_hash * crypto_hash_init(enum crypto_hash_alg alg, const u8 *key, + size_t key_len); + +/** + * crypto_hash_update - Add data to hash calculation + * @ctx: Context pointer from crypto_hash_init() + * @data: Data buffer to add + * @len: Length of the buffer + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +void crypto_hash_update(struct crypto_hash *ctx, const u8 *data, size_t len); + +/** + * crypto_hash_finish - Complete hash calculation + * @ctx: Context pointer from crypto_hash_init() + * @hash: Buffer for hash value or %NULL if caller is just freeing the hash + * context + * @len: Pointer to length of the buffer or %NULL if caller is just freeing the + * hash context; on return, this is set to the actual length of the hash value + * Returns: 0 on success, -1 if buffer is too small (len set to needed length), + * or -2 on other failures (including failed crypto_hash_update() operations) + * + * This function calculates the hash value and frees the context buffer that + * was used for hash calculation. + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int crypto_hash_finish(struct crypto_hash *ctx, u8 *hash, size_t *len); + + +enum crypto_cipher_alg { + CRYPTO_CIPHER_NULL = 0, CRYPTO_CIPHER_ALG_AES, CRYPTO_CIPHER_ALG_3DES, + CRYPTO_CIPHER_ALG_DES, CRYPTO_CIPHER_ALG_RC2, CRYPTO_CIPHER_ALG_RC4 +}; + +struct crypto_cipher; + +/** + * crypto_cipher_init - Initialize block/stream cipher function + * @alg: Cipher algorithm + * @iv: Initialization vector for block ciphers or %NULL for stream ciphers + * @key: Cipher key + * @key_len: Length of key in bytes + * Returns: Pointer to cipher context to use with other cipher functions or + * %NULL on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +struct crypto_cipher * crypto_cipher_init(enum crypto_cipher_alg alg, + const u8 *iv, const u8 *key, + size_t key_len); + +/** + * crypto_cipher_encrypt - Cipher encrypt + * @ctx: Context pointer from crypto_cipher_init() + * @plain: Plaintext to cipher + * @crypt: Resulting ciphertext + * @len: Length of the plaintext + * Returns: 0 on success, -1 on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_cipher_encrypt(struct crypto_cipher *ctx, + const u8 *plain, u8 *crypt, size_t len); + +/** + * crypto_cipher_decrypt - Cipher decrypt + * @ctx: Context pointer from crypto_cipher_init() + * @crypt: Ciphertext to decrypt + * @plain: Resulting plaintext + * @len: Length of the cipher text + * Returns: 0 on success, -1 on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_cipher_decrypt(struct crypto_cipher *ctx, + const u8 *crypt, u8 *plain, size_t len); + +/** + * crypto_cipher_decrypt - Free cipher context + * @ctx: Context pointer from crypto_cipher_init() + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +void crypto_cipher_deinit(struct crypto_cipher *ctx); + + +struct crypto_public_key; +struct crypto_private_key; + +/** + * crypto_public_key_import - Import an RSA public key + * @key: Key buffer (DER encoded RSA public key) + * @len: Key buffer length in bytes + * Returns: Pointer to the public key or %NULL on failure + * + * This function can just return %NULL if the crypto library supports X.509 + * parsing. In that case, crypto_public_key_from_cert() is used to import the + * public key from a certificate. + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +struct crypto_public_key * crypto_public_key_import(const u8 *key, size_t len); + +/** + * crypto_private_key_import - Import an RSA private key + * @key: Key buffer (DER encoded RSA private key) + * @len: Key buffer length in bytes + * @passwd: Key encryption password or %NULL if key is not encrypted + * Returns: Pointer to the private key or %NULL on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +struct crypto_private_key * crypto_private_key_import(const u8 *key, + size_t len, + const char *passwd); + +/** + * crypto_public_key_from_cert - Import an RSA public key from a certificate + * @buf: DER encoded X.509 certificate + * @len: Certificate buffer length in bytes + * Returns: Pointer to public key or %NULL on failure + * + * This function can just return %NULL if the crypto library does not support + * X.509 parsing. In that case, internal code will be used to parse the + * certificate and public key is imported using crypto_public_key_import(). + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +struct crypto_public_key * crypto_public_key_from_cert(const u8 *buf, + size_t len); + +/** + * crypto_public_key_encrypt_pkcs1_v15 - Public key encryption (PKCS #1 v1.5) + * @key: Public key + * @in: Plaintext buffer + * @inlen: Length of plaintext buffer in bytes + * @out: Output buffer for encrypted data + * @outlen: Length of output buffer in bytes; set to used length on success + * Returns: 0 on success, -1 on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_public_key_encrypt_pkcs1_v15( + struct crypto_public_key *key, const u8 *in, size_t inlen, + u8 *out, size_t *outlen); + +/** + * crypto_private_key_decrypt_pkcs1_v15 - Private key decryption (PKCS #1 v1.5) + * @key: Private key + * @in: Encrypted buffer + * @inlen: Length of encrypted buffer in bytes + * @out: Output buffer for encrypted data + * @outlen: Length of output buffer in bytes; set to used length on success + * Returns: 0 on success, -1 on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_private_key_decrypt_pkcs1_v15( + struct crypto_private_key *key, const u8 *in, size_t inlen, + u8 *out, size_t *outlen); + +/** + * crypto_private_key_sign_pkcs1 - Sign with private key (PKCS #1) + * @key: Private key from crypto_private_key_import() + * @in: Plaintext buffer + * @inlen: Length of plaintext buffer in bytes + * @out: Output buffer for encrypted (signed) data + * @outlen: Length of output buffer in bytes; set to used length on success + * Returns: 0 on success, -1 on failure + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_private_key_sign_pkcs1(struct crypto_private_key *key, + const u8 *in, size_t inlen, + u8 *out, size_t *outlen); + +/** + * crypto_public_key_free - Free public key + * @key: Public key + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +void crypto_public_key_free(struct crypto_public_key *key); + +/** + * crypto_private_key_free - Free private key + * @key: Private key from crypto_private_key_import() + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +void crypto_private_key_free(struct crypto_private_key *key); + +/** + * crypto_public_key_decrypt_pkcs1 - Decrypt PKCS #1 signature + * @key: Public key + * @crypt: Encrypted signature data (using the private key) + * @crypt_len: Encrypted signature data length + * @plain: Buffer for plaintext (at least crypt_len bytes) + * @plain_len: Plaintext length (max buffer size on input, real len on output); + * Returns: 0 on success, -1 on failure + */ +int __must_check crypto_public_key_decrypt_pkcs1( + struct crypto_public_key *key, const u8 *crypt, size_t crypt_len, + u8 *plain, size_t *plain_len); + +/** + * crypto_global_init - Initialize crypto wrapper + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_global_init(void); + +/** + * crypto_global_deinit - Deinitialize crypto wrapper + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +void crypto_global_deinit(void); + +/** + * crypto_mod_exp - Modular exponentiation of large integers + * @base: Base integer (big endian byte array) + * @base_len: Length of base integer in bytes + * @power: Power integer (big endian byte array) + * @power_len: Length of power integer in bytes + * @modulus: Modulus integer (big endian byte array) + * @modulus_len: Length of modulus integer in bytes + * @result: Buffer for the result + * @result_len: Result length (max buffer size on input, real len on output) + * Returns: 0 on success, -1 on failure + * + * This function calculates result = base ^ power mod modulus. modules_len is + * used as the maximum size of modulus buffer. It is set to the used size on + * success. + * + * This function is only used with internal TLSv1 implementation + * (CONFIG_TLS=internal). If that is not used, the crypto wrapper does not need + * to implement this. + */ +int __must_check crypto_mod_exp(const u8 *base, size_t base_len, + const u8 *power, size_t power_len, + const u8 *modulus, size_t modulus_len, + u8 *result, size_t *result_len); + +/** + * rc4_skip - XOR RC4 stream to given data with skip-stream-start + * @key: RC4 key + * @keylen: RC4 key length + * @skip: number of bytes to skip from the beginning of the RC4 stream + * @data: data to be XOR'ed with RC4 stream + * @data_len: buf length + * Returns: 0 on success, -1 on failure + * + * Generate RC4 pseudo random stream for the given key, skip beginning of the + * stream, and XOR the end result with the data buffer to perform RC4 + * encryption/decryption. + */ +int rc4_skip(const u8 *key, size_t keylen, size_t skip, + u8 *data, size_t data_len); + +#endif /* CRYPTO_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/dh_group5.h b/tools/sdk/include/wpa_supplicant/crypto/dh_group5.h new file mode 100644 index 00000000..595f1114 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/dh_group5.h @@ -0,0 +1,23 @@ +/* + * Diffie-Hellman group 5 operations + * Copyright (c) 2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef DH_GROUP5_H +#define DH_GROUP5_H + +void * dh5_init(struct wpabuf **priv, struct wpabuf **publ); +struct wpabuf * dh5_derive_shared(void *ctx, const struct wpabuf *peer_public, + const struct wpabuf *own_private); +void dh5_free(void *ctx); + +#endif /* DH_GROUP5_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/dh_groups.h b/tools/sdk/include/wpa_supplicant/crypto/dh_groups.h new file mode 100644 index 00000000..5c61539b --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/dh_groups.h @@ -0,0 +1,32 @@ +/* + * Diffie-Hellman groups + * Copyright (c) 2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef DH_GROUPS_H +#define DH_GROUPS_H + +struct dh_group { + int id; + const u8 *generator; + size_t generator_len; + const u8 *prime; + size_t prime_len; +}; + +const struct dh_group * dh_groups_get(int id); +struct wpabuf * dh_init(const struct dh_group *dh, struct wpabuf **priv); +struct wpabuf * dh_derive_shared(const struct wpabuf *peer_public, + const struct wpabuf *own_private, + const struct dh_group *dh); + +#endif /* DH_GROUPS_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/includes.h b/tools/sdk/include/wpa_supplicant/crypto/includes.h new file mode 100644 index 00000000..dbc65759 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/includes.h @@ -0,0 +1,65 @@ +/* + * wpa_supplicant/hostapd - Default include files + * Copyright (c) 2005-2006, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + * + * This header file is included into all C files so that commonly used header + * files can be selected with OS specific ifdef blocks in one place instead of + * having to have OS/C library specific selection in many files. + */ + +#ifndef INCLUDES_H +#define INCLUDES_H + +/* Include possible build time configuration before including anything else */ +//#include "build_config.h" //don't need anymore +#ifndef __ets__ +#include +#include +#include +#include +#ifndef _WIN32_WCE +#ifndef CONFIG_TI_COMPILER +#include +#include +#endif /* CONFIG_TI_COMPILER */ +#include +#endif /* _WIN32_WCE */ +#include +#include + +#ifndef CONFIG_TI_COMPILER +#ifndef _MSC_VER +#include +#endif /* _MSC_VER */ +#endif /* CONFIG_TI_COMPILER */ + +#ifndef CONFIG_NATIVE_WINDOWS +#ifndef CONFIG_TI_COMPILER +//#include +//#include +//#include +#ifndef __vxworks +#ifndef __SYMBIAN32__ +//#include +#endif /* __SYMBIAN32__ */ +#include +#endif /* __vxworks */ +#endif /* CONFIG_TI_COMPILER */ +#endif /* CONFIG_NATIVE_WINDOWS */ + +#else + +#include "rom/ets_sys.h" + +#endif /* !__ets__ */ + +#endif /* INCLUDES_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/md5.h b/tools/sdk/include/wpa_supplicant/crypto/md5.h new file mode 100644 index 00000000..89525907 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/md5.h @@ -0,0 +1,35 @@ +/* + * MD5 hash implementation and interface functions + * Copyright (c) 2003-2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef MD5_H +#define MD5_H + +#define MD5_MAC_LEN 16 + +int hmac_md5_vector(const u8 *key, size_t key_len, size_t num_elem, + const u8 *addr[], const size_t *len, u8 *mac); +int hmac_md5(const u8 *key, size_t key_len, const u8 *data, size_t data_len, + u8 *mac); +#ifdef CONFIG_FIPS +int hmac_md5_vector_non_fips_allow(const u8 *key, size_t key_len, + size_t num_elem, const u8 *addr[], + const size_t *len, u8 *mac); +int hmac_md5_non_fips_allow(const u8 *key, size_t key_len, const u8 *data, + size_t data_len, u8 *mac); +#else /* CONFIG_FIPS */ +#define hmac_md5_vector_non_fips_allow hmac_md5_vector +#define hmac_md5_non_fips_allow hmac_md5 +#endif /* CONFIG_FIPS */ + +#endif /* MD5_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/md5_i.h b/tools/sdk/include/wpa_supplicant/crypto/md5_i.h new file mode 100644 index 00000000..b7f65960 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/md5_i.h @@ -0,0 +1,29 @@ +/* + * MD5 internal definitions + * Copyright (c) 2003-2005, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef MD5_I_H +#define MD5_I_H + +struct MD5Context { + u32 buf[4]; + u32 bits[2]; + u8 in[64]; +}; + +void MD5Init(struct MD5Context *context); +void MD5Update(struct MD5Context *context, unsigned char const *buf, + unsigned len); +void MD5Final(unsigned char digest[16], struct MD5Context *context); + +#endif /* MD5_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/random.h b/tools/sdk/include/wpa_supplicant/crypto/random.h new file mode 100644 index 00000000..cbfa8773 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/random.h @@ -0,0 +1,34 @@ +/* + * Random number generator + * Copyright (c) 2010-2011, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef RANDOM_H +#define RANDOM_H + +#define CONFIG_NO_RANDOM_POOL + +#ifdef CONFIG_NO_RANDOM_POOL +#define random_init(e) do { } while (0) +#define random_deinit() do { } while (0) +#define random_add_randomness(b, l) do { } while (0) +#define random_get_bytes(b, l) os_get_random((b), (l)) +#define random_pool_ready() 1 +#define random_mark_pool_ready() do { } while (0) +#else /* CONFIG_NO_RANDOM_POOL */ +void random_init(const char *entropy_file); +void random_deinit(void); +void random_add_randomness(const void *buf, size_t len); +int random_get_bytes(void *buf, size_t len); +#endif /* CONFIG_NO_RANDOM_POOL */ + +#endif /* RANDOM_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/sha1.h b/tools/sdk/include/wpa_supplicant/crypto/sha1.h new file mode 100644 index 00000000..b3d186bd --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/sha1.h @@ -0,0 +1,33 @@ +/* + * SHA1 hash implementation and interface functions + * Copyright (c) 2003-2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef SHA1_H +#define SHA1_H + +#define SHA1_MAC_LEN 20 + +int hmac_sha1_vector(const u8 *key, size_t key_len, size_t num_elem, + const u8 *addr[], const size_t *len, u8 *mac); +int hmac_sha1(const u8 *key, size_t key_len, const u8 *data, size_t data_len, + u8 *mac); +int sha1_prf(const u8 *key, size_t key_len, const char *label, + const u8 *data, size_t data_len, u8 *buf, size_t buf_len); +int sha1_t_prf(const u8 *key, size_t key_len, const char *label, + const u8 *seed, size_t seed_len, u8 *buf, size_t buf_len); +//int __must_check tls_prf(const u8 *secret, size_t secret_len, +// const char *label, const u8 *seed, size_t seed_len, +// u8 *out, size_t outlen); +int pbkdf2_sha1(const char *passphrase, const char *ssid, size_t ssid_len, + int iterations, u8 *buf, size_t buflen); +#endif /* SHA1_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/sha1_i.h b/tools/sdk/include/wpa_supplicant/crypto/sha1_i.h new file mode 100644 index 00000000..ec2f82f7 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/sha1_i.h @@ -0,0 +1,29 @@ +/* + * SHA1 internal definitions + * Copyright (c) 2003-2005, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef SHA1_I_H +#define SHA1_I_H + +struct SHA1Context { + u32 state[5]; + u32 count[2]; + unsigned char buffer[64]; +}; + +void SHA1Init(struct SHA1Context *context); +void SHA1Update(struct SHA1Context *context, const void *data, u32 len); +void SHA1Final(unsigned char digest[20], struct SHA1Context *context); +void SHA1Transform(u32 state[5], const unsigned char buffer[64]); + +#endif /* SHA1_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/crypto/sha256.h b/tools/sdk/include/wpa_supplicant/crypto/sha256.h new file mode 100644 index 00000000..dc597f09 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/crypto/sha256.h @@ -0,0 +1,27 @@ +/* + * SHA256 hash implementation and interface functions + * Copyright (c) 2003-2006, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef SHA256_H +#define SHA256_H + +#define SHA256_MAC_LEN 32 + +void hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem, + const u8 *addr[], const size_t *len, u8 *mac); +void hmac_sha256(const u8 *key, size_t key_len, const u8 *data, + size_t data_len, u8 *mac); +void sha256_prf(const u8 *key, size_t key_len, const char *label, + const u8 *data, size_t data_len, u8 *buf, size_t buf_len); + +#endif /* SHA256_H */ diff --git a/tools/sdk/include/wpa_supplicant/endian.h b/tools/sdk/include/wpa_supplicant/endian.h new file mode 100644 index 00000000..e2df616b --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/endian.h @@ -0,0 +1,229 @@ +/*- + * Copyright (c) 2002 Thomas Moestl + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ENDIAN_H_ +#define _ENDIAN_H_ + +#include "byteswap.h" + +#ifndef BIG_ENDIAN +#define BIG_ENDIAN 4321 +#endif +#ifndef LITTLE_ENDIAN +#define LITTLE_ENDIAN 1234 +#endif + +#ifndef BYTE_ORDER +#ifdef __IEEE_LITTLE_ENDIAN +#define BYTE_ORDER LITTLE_ENDIAN +#else +#define BYTE_ORDER BIG_ENDIAN +#endif +#endif + +#define _UINT8_T_DECLARED +#ifndef _UINT8_T_DECLARED +typedef __uint8_t uint8_t; +#define _UINT8_T_DECLARED +#endif + +#define _UINT16_T_DECLARED +#ifndef _UINT16_T_DECLARED +typedef __uint16_t uint16_t; +#define _UINT16_T_DECLARED +#endif + +#define _UINT32_T_DECLARED +#ifndef _UINT32_T_DECLARED +typedef __uint32_t uint32_t; +#define _UINT32_T_DECLARED +#endif + +#define _UINT64_T_DECLARED +#ifndef _UINT64_T_DECLARED +typedef __uint64_t uint64_t; +#define _UINT64_T_DECLARED +#endif + +/* + * General byte order swapping functions. + */ +#define bswap16(x) __bswap16(x) +#define bswap32(x) __bswap32(x) +#define bswap64(x) __bswap64(x) + +/* + * Host to big endian, host to little endian, big endian to host, and little + * endian to host byte order functions as detailed in byteorder(9). + */ +#if 1 //BYTE_ORDER == _LITTLE_ENDIAN +#define __bswap16 __bswap_16 +#define __bswap32 __bswap_32 +#define htobe16(x) bswap16((x)) +#define htobe32(x) bswap32((x)) +#define htobe64(x) bswap64((x)) +#define htole16(x) ((uint16_t)(x)) +#define htole32(x) ((uint32_t)(x)) +#define htole64(x) ((uint64_t)(x)) + +#define be16toh(x) bswap16((x)) +#define be32toh(x) bswap32((x)) +#define be64toh(x) bswap64((x)) +#define le16toh(x) ((uint16_t)(x)) +#define le32toh(x) ((uint32_t)(x)) +#define le64toh(x) ((uint64_t)(x)) + +#ifndef htons +#define htons htobe16 +#endif //htons + +#else /* _BYTE_ORDER != _LITTLE_ENDIAN */ +#define htobe16(x) ((uint16_t)(x)) +#define htobe32(x) ((uint32_t)(x)) +#define htobe64(x) ((uint64_t)(x)) +#define htole16(x) bswap16((x)) +#define htole32(x) bswap32((x)) +#define htole64(x) bswap64((x)) + +#define be16toh(x) ((uint16_t)(x)) +#define be32toh(x) ((uint32_t)(x)) +#define be64toh(x) ((uint64_t)(x)) +#define le16toh(x) bswap16((x)) +#define le32toh(x) bswap32((x)) +#define le64toh(x) bswap64((x)) +#endif /* _BYTE_ORDER == _LITTLE_ENDIAN */ + +/* Alignment-agnostic encode/decode bytestream to/from little/big endian. */ + +static INLINE uint16_t +be16dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return ((p[0] << 8) | p[1]); +} + +static INLINE uint32_t +be32dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return (((unsigned)p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3]); +} + +static INLINE uint64_t +be64dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return (((uint64_t)be32dec(p) << 32) | be32dec(p + 4)); +} + +static INLINE uint16_t +le16dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return ((p[1] << 8) | p[0]); +} + +static INLINE uint32_t +le32dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return (((unsigned)p[3] << 24) | (p[2] << 16) | (p[1] << 8) | p[0]); +} + +static INLINE uint64_t +le64dec(const void *pp) +{ + uint8_t const *p = (uint8_t const *)pp; + + return (((uint64_t)le32dec(p + 4) << 32) | le32dec(p)); +} + +static INLINE void +be16enc(void *pp, uint16_t u) +{ + uint8_t *p = (uint8_t *)pp; + + p[0] = (u >> 8) & 0xff; + p[1] = u & 0xff; +} + +static INLINE void +be32enc(void *pp, uint32_t u) +{ + uint8_t *p = (uint8_t *)pp; + + p[0] = (u >> 24) & 0xff; + p[1] = (u >> 16) & 0xff; + p[2] = (u >> 8) & 0xff; + p[3] = u & 0xff; +} + +static INLINE void +be64enc(void *pp, uint64_t u) +{ + uint8_t *p = (uint8_t *)pp; + + be32enc(p, (uint32_t)(u >> 32)); + be32enc(p + 4, (uint32_t)(u & 0xffffffffU)); +} + +static INLINE void +le16enc(void *pp, uint16_t u) +{ + uint8_t *p = (uint8_t *)pp; + + p[0] = u & 0xff; + p[1] = (u >> 8) & 0xff; +} + +static INLINE void +le32enc(void *pp, uint32_t u) +{ + uint8_t *p = (uint8_t *)pp; + + p[0] = u & 0xff; + p[1] = (u >> 8) & 0xff; + p[2] = (u >> 16) & 0xff; + p[3] = (u >> 24) & 0xff; +} + +static INLINE void +le64enc(void *pp, uint64_t u) +{ + uint8_t *p = (uint8_t *)pp; + + le32enc(p, (uint32_t)(u & 0xffffffffU)); + le32enc(p + 4, (uint32_t)(u >> 32)); +} + +#endif /* _ENDIAN_H_ */ diff --git a/tools/sdk/include/wpa_supplicant/os.h b/tools/sdk/include/wpa_supplicant/os.h new file mode 100644 index 00000000..e6da894e --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/os.h @@ -0,0 +1,286 @@ +/* + * OS specific functions + * Copyright (c) 2005-2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef OS_H +#define OS_H +#include "esp_types.h" +#include +#include +#include +#include "rom/ets_sys.h" +#include "lwip/mem.h" +typedef long os_time_t; + +/** + * os_sleep - Sleep (sec, usec) + * @sec: Number of seconds to sleep + * @usec: Number of microseconds to sleep + */ +void os_sleep(os_time_t sec, os_time_t usec); + +struct os_time { + os_time_t sec; + os_time_t usec; +}; + +/** + * os_get_time - Get current time (sec, usec) + * @t: Pointer to buffer for the time + * Returns: 0 on success, -1 on failure + */ +int os_get_time(struct os_time *t); + + +/* Helper macros for handling struct os_time */ + +#define os_time_before(a, b) \ + ((a)->sec < (b)->sec || \ + ((a)->sec == (b)->sec && (a)->usec < (b)->usec)) + +#define os_time_sub(a, b, res) do { \ + (res)->sec = (a)->sec - (b)->sec; \ + (res)->usec = (a)->usec - (b)->usec; \ + if ((res)->usec < 0) { \ + (res)->sec--; \ + (res)->usec += 1000000; \ + } \ +} while (0) + +/** + * os_mktime - Convert broken-down time into seconds since 1970-01-01 + * @year: Four digit year + * @month: Month (1 .. 12) + * @day: Day of month (1 .. 31) + * @hour: Hour (0 .. 23) + * @min: Minute (0 .. 59) + * @sec: Second (0 .. 60) + * @t: Buffer for returning calendar time representation (seconds since + * 1970-01-01 00:00:00) + * Returns: 0 on success, -1 on failure + * + * Note: The result is in seconds from Epoch, i.e., in UTC, not in local time + * which is used by POSIX mktime(). + */ +int os_mktime(int year, int month, int day, int hour, int min, int sec, + os_time_t *t); + + +/** + * os_daemonize - Run in the background (detach from the controlling terminal) + * @pid_file: File name to write the process ID to or %NULL to skip this + * Returns: 0 on success, -1 on failure + */ +int os_daemonize(const char *pid_file); + +/** + * os_daemonize_terminate - Stop running in the background (remove pid file) + * @pid_file: File name to write the process ID to or %NULL to skip this + */ +void os_daemonize_terminate(const char *pid_file); + +/** + * os_get_random - Get cryptographically strong pseudo random data + * @buf: Buffer for pseudo random data + * @len: Length of the buffer + * Returns: 0 on success, -1 on failure + */ +int os_get_random(unsigned char *buf, size_t len); + +/** + * os_random - Get pseudo random value (not necessarily very strong) + * Returns: Pseudo random value + */ +unsigned long os_random(void); + +/** + * os_rel2abs_path - Get an absolute path for a file + * @rel_path: Relative path to a file + * Returns: Absolute path for the file or %NULL on failure + * + * This function tries to convert a relative path of a file to an absolute path + * in order for the file to be found even if current working directory has + * changed. The returned value is allocated and caller is responsible for + * freeing it. It is acceptable to just return the same path in an allocated + * buffer, e.g., return strdup(rel_path). This function is only used to find + * configuration files when os_daemonize() may have changed the current working + * directory and relative path would be pointing to a different location. + */ +char * os_rel2abs_path(const char *rel_path); + +/** + * os_program_init - Program initialization (called at start) + * Returns: 0 on success, -1 on failure + * + * This function is called when a programs starts. If there are any OS specific + * processing that is needed, it can be placed here. It is also acceptable to + * just return 0 if not special processing is needed. + */ +int os_program_init(void); + +/** + * os_program_deinit - Program deinitialization (called just before exit) + * + * This function is called just before a program exists. If there are any OS + * specific processing, e.g., freeing resourced allocated in os_program_init(), + * it should be done here. It is also acceptable for this function to do + * nothing. + */ +void os_program_deinit(void); + +/** + * os_setenv - Set environment variable + * @name: Name of the variable + * @value: Value to set to the variable + * @overwrite: Whether existing variable should be overwritten + * Returns: 0 on success, -1 on error + * + * This function is only used for wpa_cli action scripts. OS wrapper does not + * need to implement this if such functionality is not needed. + */ +int os_setenv(const char *name, const char *value, int overwrite); + +/** + * os_unsetenv - Delete environent variable + * @name: Name of the variable + * Returns: 0 on success, -1 on error + * + * This function is only used for wpa_cli action scripts. OS wrapper does not + * need to implement this if such functionality is not needed. + */ +int os_unsetenv(const char *name); + +/** + * os_readfile - Read a file to an allocated memory buffer + * @name: Name of the file to read + * @len: For returning the length of the allocated buffer + * Returns: Pointer to the allocated buffer or %NULL on failure + * + * This function allocates memory and reads the given file to this buffer. Both + * binary and text files can be read with this function. The caller is + * responsible for freeing the returned buffer with os_free(). + */ +char * os_readfile(const char *name, size_t *len); + +/* + * The following functions are wrapper for standard ANSI C or POSIX functions. + * By default, they are just defined to use the standard function name and no + * os_*.c implementation is needed for them. This avoids extra function calls + * by allowing the C pre-processor take care of the function name mapping. + * + * If the target system uses a C library that does not provide these functions, + * build_config.h can be used to define the wrappers to use a different + * function name. This can be done on function-by-function basis since the + * defines here are only used if build_config.h does not define the os_* name. + * If needed, os_*.c file can be used to implement the functions that are not + * included in the C library on the target system. Alternatively, + * OS_NO_C_LIB_DEFINES can be defined to skip all defines here in which case + * these functions need to be implemented in os_*.c file for the target system. + */ + +#ifndef os_malloc +#define os_malloc(s) malloc((s)) +#endif +#ifndef os_realloc +#define os_realloc(p, s) realloc((p), (s)) +#endif +#ifndef os_zalloc +#define os_zalloc(s) calloc(1, (s)) +#endif +#ifndef os_free +#define os_free(p) free((p)) +#endif + + +#ifndef os_strdup +#ifdef _MSC_VER +#define os_strdup(s) _strdup(s) +#else +#define os_strdup(s) strdup(s) +#endif +#endif +char * ets_strdup(const char *s); + +#ifndef os_memcpy +#define os_memcpy(d, s, n) memcpy((d), (s), (n)) +#endif +#ifndef os_memmove +#define os_memmove(d, s, n) memmove((d), (s), (n)) +#endif +#ifndef os_memset +#define os_memset(s, c, n) memset(s, c, n) +#endif +#ifndef os_memcmp +#define os_memcmp(s1, s2, n) memcmp((s1), (s2), (n)) +#endif + +#ifndef os_strlen +#define os_strlen(s) strlen(s) +#endif +#ifndef os_strcasecmp +#ifdef _MSC_VER +#define os_strcasecmp(s1, s2) _stricmp((s1), (s2)) +#else +#define os_strcasecmp(s1, s2) strcasecmp((s1), (s2)) +#endif +#endif +#ifndef os_strncasecmp +#ifdef _MSC_VER +#define os_strncasecmp(s1, s2, n) _strnicmp((s1), (s2), (n)) +#else +#define os_strncasecmp(s1, s2, n) strncasecmp((s1), (s2), (n)) +#endif +#endif +#ifndef os_strchr +#define os_strchr(s, c) strchr((s), (c)) +#endif +#ifndef os_strcmp +#define os_strcmp(s1, s2) strcmp((s1), (s2)) +#endif +#ifndef os_strncmp +#define os_strncmp(s1, s2, n) strncmp((s1), (s2), (n)) +#endif +#ifndef os_strncpy +#define os_strncpy(d, s, n) strncpy((d), (s), (n)) +#endif +#ifndef os_strrchr +//hard cold +#define os_strrchr(s, c) NULL +#endif +#ifndef os_strstr +#define os_strstr(h, n) strstr((h), (n)) +#endif + +#ifndef os_snprintf +#ifdef _MSC_VER +#define os_snprintf _snprintf +#else +#define os_snprintf vsnprintf +#endif +#endif + +/** + * os_strlcpy - Copy a string with size bound and NUL-termination + * @dest: Destination + * @src: Source + * @siz: Size of the target buffer + * Returns: Total length of the target string (length of src) (not including + * NUL-termination) + * + * This function matches in behavior with the strlcpy(3) function in OpenBSD. + */ +size_t os_strlcpy(char *dest, const char *src, size_t siz); + + + +#endif /* OS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/ap_config.h b/tools/sdk/include/wpa_supplicant/wpa/ap_config.h new file mode 100644 index 00000000..761becb4 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/ap_config.h @@ -0,0 +1,544 @@ +/* + * hostapd / Configuration definitions and helpers functions + * Copyright (c) 2003-2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef HOSTAPD_CONFIG_H +#define HOSTAPD_CONFIG_H + +#include "wpa/defs.h" +//#include "ip_addr.h" +#include "wpa/wpa_common.h" +//#include "common/ieee802_11_common.h" +//#include "wps/wps.h" + +#define MAX_STA_COUNT 4 +#define MAX_VLAN_ID 4094 + +typedef u8 macaddr[ETH_ALEN]; + +struct mac_acl_entry { + macaddr addr; + int vlan_id; +}; + +struct hostapd_radius_servers; +struct ft_remote_r0kh; +struct ft_remote_r1kh; + +#define HOSTAPD_MAX_SSID_LEN 32 + +#define NUM_WEP_KEYS 4 +struct hostapd_wep_keys { + u8 idx; + u8 *key[NUM_WEP_KEYS]; + size_t len[NUM_WEP_KEYS]; + int keys_set; + size_t default_len; /* key length used for dynamic key generation */ +}; + +typedef enum hostap_security_policy { + SECURITY_PLAINTEXT = 0, + SECURITY_STATIC_WEP = 1, + SECURITY_IEEE_802_1X = 2, + SECURITY_WPA_PSK = 3, + SECURITY_WPA = 4 +} secpolicy; + +struct hostapd_ssid { + u8 ssid[HOSTAPD_MAX_SSID_LEN]; + size_t ssid_len; + unsigned int ssid_set:1; + unsigned int utf8_ssid:1; + +// char vlan[IFNAMSIZ + 1]; +// secpolicy security_policy; + + struct hostapd_wpa_psk *wpa_psk; + char *wpa_passphrase; +// char *wpa_psk_file; + + struct hostapd_wep_keys wep; + +#if 0 +#define DYNAMIC_VLAN_DISABLED 0 +#define DYNAMIC_VLAN_OPTIONAL 1 +#define DYNAMIC_VLAN_REQUIRED 2 + int dynamic_vlan; +#define DYNAMIC_VLAN_NAMING_WITHOUT_DEVICE 0 +#define DYNAMIC_VLAN_NAMING_WITH_DEVICE 1 +#define DYNAMIC_VLAN_NAMING_END 2 + int vlan_naming; +#ifdef CONFIG_FULL_DYNAMIC_VLAN + char *vlan_tagged_interface; +#endif /* CONFIG_FULL_DYNAMIC_VLAN */ + struct hostapd_wep_keys **dyn_vlan_keys; + size_t max_dyn_vlan_keys; +#endif +}; + +#if 0 +#define VLAN_ID_WILDCARD -1 + +struct hostapd_vlan { + struct hostapd_vlan *next; + int vlan_id; /* VLAN ID or -1 (VLAN_ID_WILDCARD) for wildcard entry */ + char ifname[IFNAMSIZ + 1]; + int dynamic_vlan; +#ifdef CONFIG_FULL_DYNAMIC_VLAN + +#define DVLAN_CLEAN_BR 0x1 +#define DVLAN_CLEAN_VLAN 0x2 +#define DVLAN_CLEAN_VLAN_PORT 0x4 +#define DVLAN_CLEAN_WLAN_PORT 0x8 + int clean; +#endif /* CONFIG_FULL_DYNAMIC_VLAN */ +}; +#endif + +#define PMK_LEN 32 +struct hostapd_sta_wpa_psk_short { + struct hostapd_sta_wpa_psk_short *next; + u8 psk[PMK_LEN]; +}; + +struct hostapd_wpa_psk { + struct hostapd_wpa_psk *next; + int group; + u8 psk[PMK_LEN]; + u8 addr[ETH_ALEN]; +}; + +#if 0 +struct hostapd_eap_user { + struct hostapd_eap_user *next; + u8 *identity; + size_t identity_len; + struct { + int vendor; + u32 method; + } methods[EAP_MAX_METHODS]; + u8 *password; + size_t password_len; + int phase2; + int force_version; + unsigned int wildcard_prefix:1; + unsigned int password_hash:1; /* whether password is hashed with + * nt_password_hash() */ + int ttls_auth; /* EAP_TTLS_AUTH_* bitfield */ +}; + +struct hostapd_radius_attr { + u8 type; + struct wpabuf *val; + struct hostapd_radius_attr *next; +}; + + +#define NUM_TX_QUEUES 4 + +struct hostapd_tx_queue_params { + int aifs; + int cwmin; + int cwmax; + int burst; /* maximum burst time in 0.1 ms, i.e., 10 = 1 ms */ +}; + + +#define MAX_ROAMING_CONSORTIUM_LEN 15 + +struct hostapd_roaming_consortium { + u8 len; + u8 oi[MAX_ROAMING_CONSORTIUM_LEN]; +}; + +struct hostapd_lang_string { + u8 lang[3]; + u8 name_len; + u8 name[252]; +}; + +#define MAX_NAI_REALMS 10 +#define MAX_NAI_REALMLEN 255 +#define MAX_NAI_EAP_METHODS 5 +#define MAX_NAI_AUTH_TYPES 4 +struct hostapd_nai_realm_data { + u8 encoding; + char realm_buf[MAX_NAI_REALMLEN + 1]; + char *realm[MAX_NAI_REALMS]; + u8 eap_method_count; + struct hostapd_nai_realm_eap { + u8 eap_method; + u8 num_auths; + u8 auth_id[MAX_NAI_AUTH_TYPES]; + u8 auth_val[MAX_NAI_AUTH_TYPES]; + } eap_method[MAX_NAI_EAP_METHODS]; +}; +#endif + +/** + * struct hostapd_bss_config - Per-BSS configuration + */ +struct hostapd_bss_config { +// char iface[IFNAMSIZ + 1]; +// char bridge[IFNAMSIZ + 1]; +// char wds_bridge[IFNAMSIZ + 1]; + +// enum hostapd_logger_level logger_syslog_level, logger_stdout_level; + +// unsigned int logger_syslog; /* module bitfield */ +// unsigned int logger_stdout; /* module bitfield */ + +// char *dump_log_name; /* file name for state dump (SIGUSR1) */ + + int max_num_sta; /* maximum number of STAs in station table */ + + int dtim_period; + + int ieee802_1x; /* use IEEE 802.1X */ + int eapol_version; +// int eap_server; /* Use internal EAP server instead of external +// * RADIUS server */ +// struct hostapd_eap_user *eap_user; +// char *eap_user_sqlite; +// char *eap_sim_db; +// struct hostapd_ip_addr own_ip_addr; +// char *nas_identifier; +// struct hostapd_radius_servers *radius; +// int acct_interim_interval; +// int radius_request_cui; +// struct hostapd_radius_attr *radius_auth_req_attr; +// struct hostapd_radius_attr *radius_acct_req_attr; +// int radius_das_port; +// unsigned int radius_das_time_window; +// int radius_das_require_event_timestamp; +// struct hostapd_ip_addr radius_das_client_addr; +// u8 *radius_das_shared_secret; +// size_t radius_das_shared_secret_len; + + struct hostapd_ssid ssid; + +// char *eap_req_id_text; /* optional displayable message sent with +// * EAP Request-Identity */ +// size_t eap_req_id_text_len; +// int eapol_key_index_workaround; + +// size_t default_wep_key_len; +// int individual_wep_key_len; + int wep_rekeying_period; + int broadcast_key_idx_min, broadcast_key_idx_max; +// int eap_reauth_period; + +// int ieee802_11f; /* use IEEE 802.11f (IAPP) */ +// char iapp_iface[IFNAMSIZ + 1]; /* interface used with IAPP broadcast +// * frames */ + + enum { + ACCEPT_UNLESS_DENIED = 0, + DENY_UNLESS_ACCEPTED = 1, + USE_EXTERNAL_RADIUS_AUTH = 2 + } macaddr_acl; +// struct mac_acl_entry *accept_mac; +// int num_accept_mac; +// struct mac_acl_entry *deny_mac; +// int num_deny_mac; +// int wds_sta; +// int isolate; + + int auth_algs; /* bitfield of allowed IEEE 802.11 authentication + * algorithms, WPA_AUTH_ALG_{OPEN,SHARED,LEAP} */ + + int wpa; /* bitfield of WPA_PROTO_WPA, WPA_PROTO_RSN */ + int wpa_key_mgmt; +#ifdef CONFIG_IEEE80211W + enum mfp_options ieee80211w; + /* dot11AssociationSAQueryMaximumTimeout (in TUs) */ + unsigned int assoc_sa_query_max_timeout; + /* dot11AssociationSAQueryRetryTimeout (in TUs) */ + int assoc_sa_query_retry_timeout; +#endif /* CONFIG_IEEE80211W */ + enum { + PSK_RADIUS_IGNORED = 0, + PSK_RADIUS_ACCEPTED = 1, + PSK_RADIUS_REQUIRED = 2 + } wpa_psk_radius; + int wpa_pairwise; + int wpa_group; + int wpa_group_rekey; + int wpa_strict_rekey; + int wpa_gmk_rekey; + int wpa_ptk_rekey; + int rsn_pairwise; + int rsn_preauth; + char *rsn_preauth_interfaces; + int peerkey; + +#ifdef CONFIG_IEEE80211R + /* IEEE 802.11r - Fast BSS Transition */ + u8 mobility_domain[MOBILITY_DOMAIN_ID_LEN]; + u8 r1_key_holder[FT_R1KH_ID_LEN]; + u32 r0_key_lifetime; + u32 reassociation_deadline; + struct ft_remote_r0kh *r0kh_list; + struct ft_remote_r1kh *r1kh_list; + int pmk_r1_push; + int ft_over_ds; +#endif /* CONFIG_IEEE80211R */ + +// char *ctrl_interface; /* directory for UNIX domain sockets */ +#ifndef CONFIG_NATIVE_WINDOWS +// gid_t ctrl_interface_gid; +#endif /* CONFIG_NATIVE_WINDOWS */ +// int ctrl_interface_gid_set; + +// char *ca_cert; +// char *server_cert; +// char *private_key; +// char *private_key_passwd; +// int check_crl; +// char *dh_file; +// u8 *pac_opaque_encr_key; +// u8 *eap_fast_a_id; +// size_t eap_fast_a_id_len; +// char *eap_fast_a_id_info; +// int eap_fast_prov; +// int pac_key_lifetime; +// int pac_key_refresh_time; +// int eap_sim_aka_result_ind; +// int tnc; +// int fragment_size; +// u16 pwd_group; + +// char *radius_server_clients; +// int radius_server_auth_port; +// int radius_server_ipv6; + +// char *test_socket; /* UNIX domain socket path for driver_test */ + +// int use_pae_group_addr; /* Whether to send EAPOL frames to PAE group +// * address instead of individual address +// * (for driver_wired.c). +// */ + + int ap_max_inactivity; + int ignore_broadcast_ssid; + + int wmm_enabled; + int wmm_uapsd; + +// struct hostapd_vlan *vlan, *vlan_tail; + + macaddr bssid; + + /* + * Maximum listen interval that STAs can use when associating with this + * BSS. If a STA tries to use larger value, the association will be + * denied with status code 51. + */ + u16 max_listen_interval; + +// int disable_pmksa_caching; +// int okc; /* Opportunistic Key Caching */ + +// int wps_state; +#ifdef CONFIG_WPS + int ap_setup_locked; + u8 uuid[16]; + char *wps_pin_requests; + char *device_name; + char *manufacturer; + char *model_name; + char *model_number; + char *serial_number; + u8 device_type[WPS_DEV_TYPE_LEN]; + char *config_methods; + u8 os_version[4]; + char *ap_pin; + int skip_cred_build; + u8 *extra_cred; + size_t extra_cred_len; + int wps_cred_processing; + u8 *ap_settings; + size_t ap_settings_len; + char *upnp_iface; + char *friendly_name; + char *manufacturer_url; + char *model_description; + char *model_url; + char *upc; + struct wpabuf *wps_vendor_ext[MAX_WPS_VENDOR_EXTENSIONS]; + int wps_nfc_dev_pw_id; + struct wpabuf *wps_nfc_dh_pubkey; + struct wpabuf *wps_nfc_dh_privkey; + struct wpabuf *wps_nfc_dev_pw; +#endif /* CONFIG_WPS */ +// int pbc_in_m1; + +#define P2P_ENABLED BIT(0) +#define P2P_GROUP_OWNER BIT(1) +#define P2P_GROUP_FORMATION BIT(2) +#define P2P_MANAGE BIT(3) +#define P2P_ALLOW_CROSS_CONNECTION BIT(4) +// int p2p; + +// int disassoc_low_ack; +// int skip_inactivity_poll; + +#define TDLS_PROHIBIT BIT(0) +#define TDLS_PROHIBIT_CHAN_SWITCH BIT(1) +// int tdls; +// int disable_11n; +// int disable_11ac; + + /* IEEE 802.11v */ +// int time_advertisement; +// char *time_zone; +// int wnm_sleep_mode; +// int bss_transition; + + /* IEEE 802.11u - Interworking */ +// int interworking; +// int access_network_type; +// int internet; +// int asra; +// int esr; +// int uesa; +// int venue_info_set; +// u8 venue_group; +// u8 venue_type; +// u8 hessid[ETH_ALEN]; + + /* IEEE 802.11u - Roaming Consortium list */ +// unsigned int roaming_consortium_count; +// struct hostapd_roaming_consortium *roaming_consortium; + + /* IEEE 802.11u - Venue Name duples */ +// unsigned int venue_name_count; +// struct hostapd_lang_string *venue_name; + + /* IEEE 802.11u - Network Authentication Type */ +// u8 *network_auth_type; +// size_t network_auth_type_len; + + /* IEEE 802.11u - IP Address Type Availability */ +// u8 ipaddr_type_availability; +// u8 ipaddr_type_configured; + + /* IEEE 802.11u - 3GPP Cellular Network */ +// u8 *anqp_3gpp_cell_net; +// size_t anqp_3gpp_cell_net_len; + + /* IEEE 802.11u - Domain Name */ +// u8 *domain_name; +// size_t domain_name_len; + +// unsigned int nai_realm_count; +// struct hostapd_nai_realm_data *nai_realm_data; + +// u16 gas_comeback_delay; +// int gas_frag_limit; + +#ifdef CONFIG_HS20 + int hs20; + int disable_dgaf; + unsigned int hs20_oper_friendly_name_count; + struct hostapd_lang_string *hs20_oper_friendly_name; + u8 *hs20_wan_metrics; + u8 *hs20_connection_capability; + size_t hs20_connection_capability_len; + u8 *hs20_operating_class; + u8 hs20_operating_class_len; +#endif /* CONFIG_HS20 */ + +// u8 wps_rf_bands; /* RF bands for WPS (WPS_RF_*) */ + +#ifdef CONFIG_RADIUS_TEST + char *dump_msk_file; +#endif /* CONFIG_RADIUS_TEST */ + +// struct wpabuf *vendor_elements; +}; + + +/** + * struct hostapd_config - Per-radio interface configuration + */ +struct hostapd_config { + struct hostapd_bss_config *bss, *last_bss; + size_t num_bss; + + u16 beacon_int; + int rts_threshold; + int fragm_threshold; + u8 send_probe_response; + u8 channel; + enum hostapd_hw_mode hw_mode; /* HOSTAPD_MODE_IEEE80211A, .. */ + enum { + LONG_PREAMBLE = 0, + SHORT_PREAMBLE = 1 + } preamble; + + int *supported_rates; + int *basic_rates; + + const struct wpa_driver_ops *driver; + + int ap_table_max_size; + int ap_table_expiration_time; + + char country[3]; /* first two octets: country code as described in + * ISO/IEC 3166-1. Third octet: + * ' ' (ascii 32): all environments + * 'O': Outdoor environemnt only + * 'I': Indoor environment only + */ + + int ieee80211d; + +// struct hostapd_tx_queue_params tx_queue[NUM_TX_QUEUES]; + + /* + * WMM AC parameters, in same order as 802.1D, i.e. + * 0 = BE (best effort) + * 1 = BK (background) + * 2 = VI (video) + * 3 = VO (voice) + */ +// struct hostapd_wmm_ac_params wmm_ac_params[4]; + + int ht_op_mode_fixed; + u16 ht_capab; + int ieee80211n; + int secondary_channel; + int require_ht; + u32 vht_capab; + int ieee80211ac; + int require_vht; + u8 vht_oper_chwidth; + u8 vht_oper_centr_freq_seg0_idx; + u8 vht_oper_centr_freq_seg1_idx; +}; + + +int hostapd_mac_comp(const void *a, const void *b); +int hostapd_mac_comp_empty(const void *a); +struct hostapd_config * hostapd_config_defaults(void); +void hostapd_config_defaults_bss(struct hostapd_bss_config *bss); +void hostapd_config_free(struct hostapd_config *conf); +int hostapd_maclist_found(struct mac_acl_entry *list, int num_entries, + const u8 *addr, int *vlan_id); +int hostapd_rate_found(int *list, int rate); +int hostapd_wep_key_cmp(struct hostapd_wep_keys *a, + struct hostapd_wep_keys *b); +const u8 * hostapd_get_psk(const struct hostapd_bss_config *conf, + const u8 *addr, const u8 *prev_psk); +int hostapd_setup_wpa_psk(struct hostapd_bss_config *conf); +//const char * hostapd_get_vlan_id_ifname(struct hostapd_vlan *vlan, +// int vlan_id); +//struct hostapd_radius_attr * +//hostapd_config_get_radius_attr(struct hostapd_radius_attr *attr, u8 type); + +#endif /* HOSTAPD_CONFIG_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/common.h b/tools/sdk/include/wpa_supplicant/wpa/common.h new file mode 100644 index 00000000..ca80c239 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/common.h @@ -0,0 +1,324 @@ +/* + * wpa_supplicant/hostapd / common helper functions, etc. + * Copyright (c) 2002-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef COMMON_H +#define COMMON_H + +#if defined(__ets__) +#endif /* ets */ +#include "os.h" + +#if defined(__XTENSA__) +#include +#define __BYTE_ORDER BYTE_ORDER +#define __LITTLE_ENDIAN LITTLE_ENDIAN +#define __BIG_ENDIAN BIG_ENDIAN +#endif /*__XTENSA__*/ + +#if defined(__linux__) || defined(__GLIBC__) || defined(__ets__) +#include +#include +#endif /* __linux__ */ + +/* Define platform specific byte swapping macros */ + +#if defined(__CYGWIN__) || defined(CONFIG_NATIVE_WINDOWS) + +static inline unsigned short wpa_swap_16(unsigned short v) +{ + return ((v & 0xff) << 8) | (v >> 8); +} + +static inline unsigned int wpa_swap_32(unsigned int v) +{ + return ((v & 0xff) << 24) | ((v & 0xff00) << 8) | + ((v & 0xff0000) >> 8) | (v >> 24); +} + +#define le_to_host16(n) (n) +#define host_to_le16(n) (n) +#define be_to_host16(n) wpa_swap_16(n) +#define host_to_be16(n) wpa_swap_16(n) +#define le_to_host32(n) (n) +#define be_to_host32(n) wpa_swap_32(n) +#define host_to_be32(n) wpa_swap_32(n) + +#define WPA_BYTE_SWAP_DEFINED + +#endif /* __CYGWIN__ || CONFIG_NATIVE_WINDOWS */ + + +#ifndef WPA_BYTE_SWAP_DEFINED + +#ifndef __BYTE_ORDER +#ifndef __LITTLE_ENDIAN +#ifndef __BIG_ENDIAN +#define __LITTLE_ENDIAN 1234 +#define __BIG_ENDIAN 4321 +#if defined(sparc) +#define __BYTE_ORDER __BIG_ENDIAN +#endif +#endif /* __BIG_ENDIAN */ +#endif /* __LITTLE_ENDIAN */ +#endif /* __BYTE_ORDER */ + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define le_to_host16(n) ((__force u16) (le16) (n)) +#define host_to_le16(n) ((__force le16) (u16) (n)) +#define be_to_host16(n) __bswap_16((__force u16) (be16) (n)) +#define host_to_be16(n) ((__force be16) __bswap_16((n))) +#define le_to_host32(n) ((__force u32) (le32) (n)) +#define host_to_le32(n) ((__force le32) (u32) (n)) +#define be_to_host32(n) __bswap_32((__force u32) (be32) (n)) +#define host_to_be32(n) ((__force be32) __bswap_32((n))) +#define le_to_host64(n) ((__force u64) (le64) (n)) +#define host_to_le64(n) ((__force le64) (u64) (n)) +#define be_to_host64(n) __bswap_64((__force u64) (be64) (n)) +#define host_to_be64(n) ((__force be64) bswap_64((n))) +#elif __BYTE_ORDER == __BIG_ENDIAN +#define le_to_host16(n) __bswap_16(n) +#define host_to_le16(n) __bswap_16(n) +#define be_to_host16(n) (n) +#define host_to_be16(n) (n) +#define le_to_host32(n) __bswap_32(n) +#define be_to_host32(n) (n) +#define host_to_be32(n) (n) +#define le_to_host64(n) __bswap_64(n) +#define host_to_le64(n) __bswap_64(n) +#define be_to_host64(n) (n) +#define host_to_be64(n) (n) +#ifndef WORDS_BIGENDIAN +#define WORDS_BIGENDIAN +#endif +#else +#error Could not determine CPU byte order +#endif + +#define WPA_BYTE_SWAP_DEFINED +#endif /* !WPA_BYTE_SWAP_DEFINED */ + + +/* Macros for handling unaligned memory accesses */ + +#define WPA_GET_BE16(a) ((u16) (((a)[0] << 8) | (a)[1])) +#define WPA_PUT_BE16(a, val) \ + do { \ + (a)[0] = ((u16) (val)) >> 8; \ + (a)[1] = ((u16) (val)) & 0xff; \ + } while (0) + +#define WPA_GET_LE16(a) ((u16) (((a)[1] << 8) | (a)[0])) +#define WPA_PUT_LE16(a, val) \ + do { \ + (a)[1] = ((u16) (val)) >> 8; \ + (a)[0] = ((u16) (val)) & 0xff; \ + } while (0) + +#define WPA_GET_BE24(a) ((((u32) (a)[0]) << 16) | (((u32) (a)[1]) << 8) | \ + ((u32) (a)[2])) +#define WPA_PUT_BE24(a, val) \ + do { \ + (a)[0] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[2] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_BE32(a) ((((u32) (a)[0]) << 24) | (((u32) (a)[1]) << 16) | \ + (((u32) (a)[2]) << 8) | ((u32) (a)[3])) +#define WPA_PUT_BE32(a, val) \ + do { \ + (a)[0] = (u8) ((((u32) (val)) >> 24) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[2] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[3] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_LE32(a) ((((u32) (a)[3]) << 24) | (((u32) (a)[2]) << 16) | \ + (((u32) (a)[1]) << 8) | ((u32) (a)[0])) +#define WPA_PUT_LE32(a, val) \ + do { \ + (a)[3] = (u8) ((((u32) (val)) >> 24) & 0xff); \ + (a)[2] = (u8) ((((u32) (val)) >> 16) & 0xff); \ + (a)[1] = (u8) ((((u32) (val)) >> 8) & 0xff); \ + (a)[0] = (u8) (((u32) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_BE64(a) ((((u64) (a)[0]) << 56) | (((u64) (a)[1]) << 48) | \ + (((u64) (a)[2]) << 40) | (((u64) (a)[3]) << 32) | \ + (((u64) (a)[4]) << 24) | (((u64) (a)[5]) << 16) | \ + (((u64) (a)[6]) << 8) | ((u64) (a)[7])) +#define WPA_PUT_BE64(a, val) \ + do { \ + (a)[0] = (u8) (((u64) (val)) >> 56); \ + (a)[1] = (u8) (((u64) (val)) >> 48); \ + (a)[2] = (u8) (((u64) (val)) >> 40); \ + (a)[3] = (u8) (((u64) (val)) >> 32); \ + (a)[4] = (u8) (((u64) (val)) >> 24); \ + (a)[5] = (u8) (((u64) (val)) >> 16); \ + (a)[6] = (u8) (((u64) (val)) >> 8); \ + (a)[7] = (u8) (((u64) (val)) & 0xff); \ + } while (0) + +#define WPA_GET_LE64(a) ((((u64) (a)[7]) << 56) | (((u64) (a)[6]) << 48) | \ + (((u64) (a)[5]) << 40) | (((u64) (a)[4]) << 32) | \ + (((u64) (a)[3]) << 24) | (((u64) (a)[2]) << 16) | \ + (((u64) (a)[1]) << 8) | ((u64) (a)[0])) + + +#ifndef ETH_ALEN +#define ETH_ALEN 6 +#endif +//#ifndef IFNAMSIZ +//#define IFNAMSIZ 16 +//#endif +#ifndef ETH_P_ALL +#define ETH_P_ALL 0x0003 +#endif +#ifndef ETH_P_PAE +#define ETH_P_PAE 0x888E /* Port Access Entity (IEEE 802.1X) */ +#endif /* ETH_P_PAE */ +#ifndef ETH_P_EAPOL +#define ETH_P_EAPOL ETH_P_PAE +#endif /* ETH_P_EAPOL */ +#ifndef ETH_P_RSN_PREAUTH +#define ETH_P_RSN_PREAUTH 0x88c7 +#endif /* ETH_P_RSN_PREAUTH */ +#ifndef ETH_P_RRB +#define ETH_P_RRB 0x890D +#endif /* ETH_P_RRB */ + + +#ifdef __GNUC__ +#define PRINTF_FORMAT(a,b) __attribute__ ((format (printf, (a), (b)))) +#define STRUCT_PACKED __attribute__ ((packed)) +#else +#define PRINTF_FORMAT(a,b) +#define STRUCT_PACKED +#endif + +#ifdef CONFIG_ANSI_C_EXTRA + +/* inline - define as __inline or just define it to be empty, if needed */ +#ifdef CONFIG_NO_INLINE +#define inline +#else +#define inline __inline +#endif + +#ifndef __func__ +#define __func__ "__func__ not defined" +#endif + +#ifndef bswap_16 +#define bswap_16(a) ((((u16) (a) << 8) & 0xff00) | (((u16) (a) >> 8) & 0xff)) +#endif + +#ifndef bswap_32 +#define bswap_32(a) ((((u32) (a) << 24) & 0xff000000) | \ + (((u32) (a) << 8) & 0xff0000) | \ + (((u32) (a) >> 8) & 0xff00) | \ + (((u32) (a) >> 24) & 0xff)) +#endif + +#ifndef MSG_DONTWAIT +#define MSG_DONTWAIT 0 +#endif + +#ifdef _WIN32_WCE +void perror(const char *s); +#endif /* _WIN32_WCE */ + +#endif /* CONFIG_ANSI_C_EXTRA */ + +#ifndef MAC2STR +#define MAC2STR(a) (a)[0], (a)[1], (a)[2], (a)[3], (a)[4], (a)[5] +#define MACSTR "%02x:%02x:%02x:%02x:%02x:%02x" +#endif + +#ifndef BIT +#define BIT(x) (1 << (x)) +#endif + +/* + * Definitions for sparse validation + * (http://kernel.org/pub/linux/kernel/people/josh/sparse/) + */ +#ifdef __CHECKER__ +#define __force __attribute__((force)) +#define __bitwise __attribute__((bitwise)) +#else +#define __force +#define __bitwise +#endif + +typedef u16 __bitwise be16; +typedef u16 __bitwise le16; +typedef u32 __bitwise be32; +typedef u32 __bitwise le32; +typedef u64 __bitwise be64; +typedef u64 __bitwise le64; + +#ifndef __must_check +#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) +#define __must_check __attribute__((__warn_unused_result__)) +#else +#define __must_check +#endif /* __GNUC__ */ +#endif /* __must_check */ + +int hwaddr_aton(const char *txt, u8 *addr); +int hwaddr_aton2(const char *txt, u8 *addr); +int hexstr2bin(const char *hex, u8 *buf, size_t len); +void inc_byte_array(u8 *counter, size_t len); +void wpa_get_ntp_timestamp(u8 *buf); +int wpa_snprintf_hex(char *buf, size_t buf_size, const u8 *data, size_t len); +int wpa_snprintf_hex_uppercase(char *buf, size_t buf_size, const u8 *data, + size_t len); + +#ifdef CONFIG_NATIVE_WINDOWS +void wpa_unicode2ascii_inplace(TCHAR *str); +TCHAR * wpa_strdup_tchar(const char *str); +#else /* CONFIG_NATIVE_WINDOWS */ +#define wpa_unicode2ascii_inplace(s) do { } while (0) +#define wpa_strdup_tchar(s) strdup((s)) +#endif /* CONFIG_NATIVE_WINDOWS */ + +const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len); +char * wpa_config_parse_string(const char *value, size_t *len); + +static inline int is_zero_ether_addr(const u8 *a) +{ + return !(a[0] | a[1] | a[2] | a[3] | a[4] | a[5]); +} + +extern const struct eth_addr ethbroadcast; +#define broadcast_ether_addr ðbroadcast + +#include "wpabuf.h" +#include "wpa_debug.h" + + +/* + * gcc 4.4 ends up generating strict-aliasing warnings about some very common + * networking socket uses that do not really result in a real problem and + * cannot be easily avoided with union-based type-punning due to struct + * definitions including another struct in system header files. To avoid having + * to fully disable strict-aliasing warnings, provide a mechanism to hide the + * typecast from aliasing for now. A cleaner solution will hopefully be found + * in the future to handle these cases. + */ +void * __hide_aliasing_typecast(void *foo); +#define aliasing_hide_typecast(a,t) (t *) __hide_aliasing_typecast((a)) + +#endif /* COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/defs.h b/tools/sdk/include/wpa_supplicant/wpa/defs.h new file mode 100644 index 00000000..f019cee9 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/defs.h @@ -0,0 +1,307 @@ +/* + * WPA Supplicant - Common definitions + * Copyright (c) 2004-2008, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef DEFS_H +#define DEFS_H + +#ifdef FALSE +#undef FALSE +#endif +#ifdef TRUE +#undef TRUE +#endif +typedef enum { FALSE = 0, TRUE = 1 } Boolean; + +/* +#define WPA_CIPHER_NONE BIT(0) +#define WPA_CIPHER_WEP40 BIT(1) +#define WPA_CIPHER_WEP104 BIT(2) +#define WPA_CIPHER_TKIP BIT(3) +#define WPA_CIPHER_CCMP BIT(4) +#ifdef CONFIG_IEEE80211W +#define WPA_CIPHER_AES_128_CMAC BIT(5) +#endif +*/ + +/* + * NB: these values are ordered carefully; there are lots of + * of implications in any reordering. Beware that 4 is used + * only to indicate h/w TKIP MIC support in driver capabilities; + * there is no separate cipher support (it's rolled into the + * TKIP cipher support). + */ +#define IEEE80211_CIPHER_NONE 0 /* pseudo value */ +#define IEEE80211_CIPHER_TKIP 1 +#define IEEE80211_CIPHER_AES_OCB 2 +#define IEEE80211_CIPHER_AES_CCM 3 +#define IEEE80211_CIPHER_TKIPMIC 4 /* TKIP MIC capability */ +#define IEEE80211_CIPHER_CKIP 5 +#define IEEE80211_CIPHER_WEP 6 +#define IEEE80211_CIPHER_WEP40 7 +#define IEEE80211_CIPHER_WEP104 8 + + +#define IEEE80211_CIPHER_MAX (IEEE80211_CIPHER_NONE+2) + +/* capability bits in ic_cryptocaps/iv_cryptocaps */ +#define IEEE80211_CRYPTO_NONE (1<wpa_state). The current state can be retrieved with + * wpa_supplicant_get_state() function and the state can be changed by calling + * wpa_supplicant_set_state(). In WPA state machine (wpa.c and preauth.c), the + * wrapper functions wpa_sm_get_state() and wpa_sm_set_state() should be used + * to access the state variable. + */ +enum wpa_states { + /** + * WPA_DISCONNECTED - Disconnected state + * + * This state indicates that client is not associated, but is likely to + * start looking for an access point. This state is entered when a + * connection is lost. + */ + WPA_DISCONNECTED, + + /** + * WPA_INACTIVE - Inactive state (wpa_supplicant disabled) + * + * This state is entered if there are no enabled networks in the + * configuration. wpa_supplicant is not trying to associate with a new + * network and external interaction (e.g., ctrl_iface call to add or + * enable a network) is needed to start association. + */ + WPA_INACTIVE, + + /** + * WPA_SCANNING - Scanning for a network + * + * This state is entered when wpa_supplicant starts scanning for a + * network. + */ + WPA_SCANNING, + + /** + * WPA_AUTHENTICATING - Trying to authenticate with a BSS/SSID + * + * This state is entered when wpa_supplicant has found a suitable BSS + * to authenticate with and the driver is configured to try to + * authenticate with this BSS. This state is used only with drivers + * that use wpa_supplicant as the SME. + */ + WPA_AUTHENTICATING, + + /** + * WPA_ASSOCIATING - Trying to associate with a BSS/SSID + * + * This state is entered when wpa_supplicant has found a suitable BSS + * to associate with and the driver is configured to try to associate + * with this BSS in ap_scan=1 mode. When using ap_scan=2 mode, this + * state is entered when the driver is configured to try to associate + * with a network using the configured SSID and security policy. + */ + WPA_ASSOCIATING, + + /** + * WPA_ASSOCIATED - Association completed + * + * This state is entered when the driver reports that association has + * been successfully completed with an AP. If IEEE 802.1X is used + * (with or without WPA/WPA2), wpa_supplicant remains in this state + * until the IEEE 802.1X/EAPOL authentication has been completed. + */ + WPA_ASSOCIATED, + + /** + * WPA_4WAY_HANDSHAKE - WPA 4-Way Key Handshake in progress + * + * This state is entered when WPA/WPA2 4-Way Handshake is started. In + * case of WPA-PSK, this happens when receiving the first EAPOL-Key + * frame after association. In case of WPA-EAP, this state is entered + * when the IEEE 802.1X/EAPOL authentication has been completed. + */ + WPA_FIRST_HALF_4WAY_HANDSHAKE, + + WPA_LAST_HALF_4WAY_HANDSHAKE, + + /** + * WPA_GROUP_HANDSHAKE - WPA Group Key Handshake in progress + * + * This state is entered when 4-Way Key Handshake has been completed + * (i.e., when the supplicant sends out message 4/4) and when Group + * Key rekeying is started by the AP (i.e., when supplicant receives + * message 1/2). + */ + WPA_GROUP_HANDSHAKE, + + /** + * WPA_COMPLETED - All authentication completed + * + * This state is entered when the full authentication process is + * completed. In case of WPA2, this happens when the 4-Way Handshake is + * successfully completed. With WPA, this state is entered after the + * Group Key Handshake; with IEEE 802.1X (non-WPA) connection is + * completed after dynamic keys are received (or if not used, after + * the EAP authentication has been completed). With static WEP keys and + * plaintext connections, this state is entered when an association + * has been completed. + * + * This state indicates that the supplicant has completed its + * processing for the association phase and that data connection is + * fully configured. + */ + WPA_COMPLETED, + + WPA_MIC_FAILURE, // first mic_error event occur + + WPA_TKIP_COUNTERMEASURES //in countermeasure period that stop connect with ap in 60 sec +}; + +#define MLME_SETPROTECTION_PROTECT_TYPE_NONE 0 +#define MLME_SETPROTECTION_PROTECT_TYPE_RX 1 +#define MLME_SETPROTECTION_PROTECT_TYPE_TX 2 +#define MLME_SETPROTECTION_PROTECT_TYPE_RX_TX 3 + +#define MLME_SETPROTECTION_KEY_TYPE_GROUP 0 +#define MLME_SETPROTECTION_KEY_TYPE_PAIRWISE 1 + +/** + * enum hostapd_hw_mode - Hardware mode + */ +enum hostapd_hw_mode { + HOSTAPD_MODE_IEEE80211B, + HOSTAPD_MODE_IEEE80211G, + HOSTAPD_MODE_IEEE80211A, + HOSTAPD_MODE_IEEE80211AD, + NUM_HOSTAPD_MODES +}; + +#endif /* DEFS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/eapol_common.h b/tools/sdk/include/wpa_supplicant/wpa/eapol_common.h new file mode 100644 index 00000000..6a40ac33 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/eapol_common.h @@ -0,0 +1,71 @@ +/* + * EAPOL definitions shared between hostapd and wpa_supplicant + * Copyright (c) 2002-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef EAPOL_COMMON_H +#define EAPOL_COMMON_H + +/* IEEE Std 802.1X-2004 */ + +struct ieee802_1x_hdr { + u8 version; + u8 type; + be16 length; + /* followed by length octets of data */ +} STRUCT_PACKED; + + +#define EAPOL_VERSION 2 + +enum { IEEE802_1X_TYPE_EAP_PACKET = 0, + IEEE802_1X_TYPE_EAPOL_START = 1, + IEEE802_1X_TYPE_EAPOL_LOGOFF = 2, + IEEE802_1X_TYPE_EAPOL_KEY = 3, + IEEE802_1X_TYPE_EAPOL_ENCAPSULATED_ASF_ALERT = 4 +}; + +enum { EAPOL_KEY_TYPE_RC4 = 1, EAPOL_KEY_TYPE_RSN = 2, + EAPOL_KEY_TYPE_WPA = 254 }; + +#define IEEE8021X_REPLAY_COUNTER_LEN 8 +#define IEEE8021X_KEY_SIGN_LEN 16 +#define IEEE8021X_KEY_IV_LEN 16 + +#define IEEE8021X_KEY_INDEX_FLAG 0x80 +#define IEEE8021X_KEY_INDEX_MASK 0x03 + +struct ieee802_1x_eapol_key { + u8 type; + /* Note: key_length is unaligned */ + u8 key_length[2]; + /* does not repeat within the life of the keying material used to + * encrypt the Key field; 64-bit NTP timestamp MAY be used here */ + u8 replay_counter[IEEE8021X_REPLAY_COUNTER_LEN]; + u8 key_iv[IEEE8021X_KEY_IV_LEN]; /* cryptographically random number */ + u8 key_index; /* key flag in the most significant bit: + * 0 = broadcast (default key), + * 1 = unicast (key mapping key); key index is in the + * 7 least significant bits */ + /* HMAC-MD5 message integrity check computed with MS-MPPE-Send-Key as + * the key */ + u8 key_signature[IEEE8021X_KEY_SIGN_LEN]; + + /* followed by key: if packet body length = 44 + key length, then the + * key field (of key_length bytes) contains the key in encrypted form; + * if packet body length = 44, key field is absent and key_length + * represents the number of least significant octets from + * MS-MPPE-Send-Key attribute to be used as the keying material; + * RC4 key used in encryption = Key-IV + MS-MPPE-Recv-Key */ +} STRUCT_PACKED; + +#endif /* EAPOL_COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/hostapd.h b/tools/sdk/include/wpa_supplicant/wpa/hostapd.h new file mode 100644 index 00000000..1d52659a --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/hostapd.h @@ -0,0 +1,312 @@ +/* + * hostapd / Initialization and configuration + * Copyright (c) 2002-2009, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef HOSTAPD_H +#define HOSTAPD_H + +#include "wpa/defs.h" +#include "wpa/ap_config.h" + +struct wpa_driver_ops; +struct wpa_ctrl_dst; +struct radius_server_data; +struct upnp_wps_device_sm; +struct hostapd_data; +struct sta_info; +struct hostap_sta_driver_data; +struct ieee80211_ht_capabilities; +struct full_dynamic_vlan; +enum wps_event; +union wps_event_data; + +struct hostapd_iface; + +struct hapd_interfaces { + int (*reload_config)(struct hostapd_iface *iface); + struct hostapd_config * (*config_read_cb)(const char *config_fname); + int (*ctrl_iface_init)(struct hostapd_data *hapd); + void (*ctrl_iface_deinit)(struct hostapd_data *hapd); + int (*for_each_interface)(struct hapd_interfaces *interfaces, + int (*cb)(struct hostapd_iface *iface, + void *ctx), void *ctx); + int (*driver_init)(struct hostapd_iface *iface); + + size_t count; + int global_ctrl_sock; + char *global_iface_path; + char *global_iface_name; + struct hostapd_iface **iface; +}; + + +struct hostapd_probereq_cb { + int (*cb)(void *ctx, const u8 *sa, const u8 *da, const u8 *bssid, + const u8 *ie, size_t ie_len, int ssi_signal); + void *ctx; +}; + +#define HOSTAPD_RATE_BASIC 0x00000001 + +struct hostapd_rate_data { + int rate; /* rate in 100 kbps */ + int flags; /* HOSTAPD_RATE_ flags */ +}; + +struct hostapd_frame_info { + u32 channel; + u32 datarate; + int ssi_signal; /* dBm */ +}; + + +/** + * struct hostapd_data - hostapd per-BSS data structure + */ +struct hostapd_data { +// struct hostapd_iface *iface; + struct hostapd_config *iconf; + struct hostapd_bss_config *conf; + int interface_added; /* virtual interface added for this BSS */ + + u8 own_addr[ETH_ALEN]; + + int num_sta; /* number of entries in sta_list */ +// struct sta_info *sta_list; /* STA info list head */ +//#define STA_HASH_SIZE 256 +//#define STA_HASH(sta) (sta[5]) +// struct sta_info *sta_hash[STA_HASH_SIZE]; + +// /* +// * Bitfield for indicating which AIDs are allocated. Only AID values +// * 1-2007 are used and as such, the bit at index 0 corresponds to AID +// * 1. +// */ +//#define AID_WORDS ((2008 + 31) / 32) +// u32 sta_aid[AID_WORDS]; + +// const struct wpa_driver_ops *driver; +// void *drv_priv; + +// void (*new_assoc_sta_cb)(struct hostapd_data *hapd, +// struct sta_info *sta, int reassoc); + +// void *msg_ctx; /* ctx for wpa_msg() calls */ +// void *msg_ctx_parent; /* parent interface ctx for wpa_msg() calls */ + +// struct radius_client_data *radius; +// u32 acct_session_id_hi, acct_session_id_lo; +// struct radius_das_data *radius_das; + +// struct iapp_data *iapp; + +// struct hostapd_cached_radius_acl *acl_cache; +// struct hostapd_acl_query_data *acl_queries; + + struct wpa_authenticator *wpa_auth; +// struct eapol_authenticator *eapol_auth; + +// struct rsn_preauth_interface *preauth_iface; +// time_t michael_mic_failure; +// int michael_mic_failures; +// int tkip_countermeasures; + +// int ctrl_sock; +// struct wpa_ctrl_dst *ctrl_dst; + +// void *ssl_ctx; +// void *eap_sim_db_priv; +// struct radius_server_data *radius_srv; + +// int parameter_set_count; + + /* Time Advertisement */ +// u8 time_update_counter; +// struct wpabuf *time_adv; + +#ifdef CONFIG_FULL_DYNAMIC_VLAN + struct full_dynamic_vlan *full_dynamic_vlan; +#endif /* CONFIG_FULL_DYNAMIC_VLAN */ + +// struct l2_packet_data *l2; +// struct wps_context *wps; + +// int beacon_set_done; +// struct wpabuf *wps_beacon_ie; +// struct wpabuf *wps_probe_resp_ie; +#ifdef CONFIG_WPS + unsigned int ap_pin_failures; + unsigned int ap_pin_failures_consecutive; + struct upnp_wps_device_sm *wps_upnp; + unsigned int ap_pin_lockout_time; +#endif /* CONFIG_WPS */ + +// struct hostapd_probereq_cb *probereq_cb; +// size_t num_probereq_cb; + +// void (*public_action_cb)(void *ctx, const u8 *buf, size_t len, +// int freq); +// void *public_action_cb_ctx; + +// int (*vendor_action_cb)(void *ctx, const u8 *buf, size_t len, +// int freq); +// void *vendor_action_cb_ctx; + +// void (*wps_reg_success_cb)(void *ctx, const u8 *mac_addr, +// const u8 *uuid_e); +// void *wps_reg_success_cb_ctx; + +// void (*wps_event_cb)(void *ctx, enum wps_event event, +// union wps_event_data *data); +// void *wps_event_cb_ctx; + +// void (*sta_authorized_cb)(void *ctx, const u8 *mac_addr, +// int authorized, const u8 *p2p_dev_addr); +// void *sta_authorized_cb_ctx; + +// void (*setup_complete_cb)(void *ctx); +// void *setup_complete_cb_ctx; + +#ifdef CONFIG_P2P + struct p2p_data *p2p; + struct p2p_group *p2p_group; + struct wpabuf *p2p_beacon_ie; + struct wpabuf *p2p_probe_resp_ie; + + /* Number of non-P2P association stations */ + int num_sta_no_p2p; + + /* Periodic NoA (used only when no non-P2P clients in the group) */ + int noa_enabled; + int noa_start; + int noa_duration; +#endif /* CONFIG_P2P */ +#ifdef CONFIG_INTERWORKING + size_t gas_frag_limit; +#endif /* CONFIG_INTERWORKING */ + +#ifdef CONFIG_SQLITE + struct hostapd_eap_user tmp_eap_user; +#endif /* CONFIG_SQLITE */ +}; + +#if 0 +/** + * struct hostapd_iface - hostapd per-interface data structure + */ +struct hostapd_iface { + struct hapd_interfaces *interfaces; + void *owner; + char *config_fname; + struct hostapd_config *conf; + + size_t num_bss; + struct hostapd_data **bss; + + int num_ap; /* number of entries in ap_list */ + struct ap_info *ap_list; /* AP info list head */ + struct ap_info *ap_hash[STA_HASH_SIZE]; + struct ap_info *ap_iter_list; + + unsigned int drv_flags; + + /* + * A bitmap of supported protocols for probe response offload. See + * struct wpa_driver_capa in driver.h + */ + unsigned int probe_resp_offloads; + + struct hostapd_hw_modes *hw_features; + int num_hw_features; + struct hostapd_hw_modes *current_mode; + /* Rates that are currently used (i.e., filtered copy of + * current_mode->channels */ + int num_rates; + struct hostapd_rate_data *current_rates; + int *basic_rates; + int freq; + + u16 hw_flags; + + /* Number of associated Non-ERP stations (i.e., stations using 802.11b + * in 802.11g BSS) */ + int num_sta_non_erp; + + /* Number of associated stations that do not support Short Slot Time */ + int num_sta_no_short_slot_time; + + /* Number of associated stations that do not support Short Preamble */ + int num_sta_no_short_preamble; + + int olbc; /* Overlapping Legacy BSS Condition */ + + /* Number of HT associated stations that do not support greenfield */ + int num_sta_ht_no_gf; + + /* Number of associated non-HT stations */ + int num_sta_no_ht; + + /* Number of HT associated stations 20 MHz */ + int num_sta_ht_20mhz; + + /* Overlapping BSS information */ + int olbc_ht; + + u16 ht_op_mode; + void (*scan_cb)(struct hostapd_iface *iface); +}; +#endif + +#if 0 +/* hostapd.c */ +int hostapd_for_each_interface(struct hapd_interfaces *interfaces, + int (*cb)(struct hostapd_iface *iface, + void *ctx), void *ctx); +int hostapd_reload_config(struct hostapd_iface *iface); +struct hostapd_data * +hostapd_alloc_bss_data(struct hostapd_iface *hapd_iface, + struct hostapd_config *conf, + struct hostapd_bss_config *bss); +int hostapd_setup_interface(struct hostapd_iface *iface); +int hostapd_setup_interface_complete(struct hostapd_iface *iface, int err); +void hostapd_interface_deinit(struct hostapd_iface *iface); +void hostapd_interface_free(struct hostapd_iface *iface); +void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta, + int reassoc); +void hostapd_interface_deinit_free(struct hostapd_iface *iface); +int hostapd_enable_iface(struct hostapd_iface *hapd_iface); +int hostapd_reload_iface(struct hostapd_iface *hapd_iface); +int hostapd_disable_iface(struct hostapd_iface *hapd_iface); +int hostapd_add_iface(struct hapd_interfaces *ifaces, char *buf); +int hostapd_remove_iface(struct hapd_interfaces *ifaces, char *buf); + +/* utils.c */ +int hostapd_register_probereq_cb(struct hostapd_data *hapd, + int (*cb)(void *ctx, const u8 *sa, + const u8 *da, const u8 *bssid, + const u8 *ie, size_t ie_len, + int ssi_signal), + void *ctx); +void hostapd_prune_associations(struct hostapd_data *hapd, const u8 *addr); + +/* drv_callbacks.c (TODO: move to somewhere else?) */ +int hostapd_notif_assoc(struct hostapd_data *hapd, const u8 *addr, + const u8 *ie, size_t ielen, int reassoc); +void hostapd_notif_disassoc(struct hostapd_data *hapd, const u8 *addr); +void hostapd_event_sta_low_ack(struct hostapd_data *hapd, const u8 *addr); +int hostapd_probe_req_rx(struct hostapd_data *hapd, const u8 *sa, const u8 *da, + const u8 *bssid, const u8 *ie, size_t ie_len, + int ssi_signal); +void hostapd_event_ch_switch(struct hostapd_data *hapd, int freq, int ht, + int offset); + +const struct hostapd_eap_user * +hostapd_get_eap_user(struct hostapd_data *hapd, const u8 *identity, + size_t identity_len, int phase2); +#endif + +#endif /* HOSTAPD_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/ieee80211_crypto.h b/tools/sdk/include/wpa_supplicant/wpa/ieee80211_crypto.h new file mode 100644 index 00000000..be0fb9aa --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/ieee80211_crypto.h @@ -0,0 +1,226 @@ +/*- + * Copyright (c) 2001 Atsushi Onoe + * Copyright (c) 2002-2008 Sam Leffler, Errno Consulting + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +/* + * copyright (c) 2010-2011 Espressif System + */ +#ifndef _NET80211_IEEE80211_CRYPTO_H_ +#define _NET80211_IEEE80211_CRYPTO_H_ + +//#include "pp/esf_buf.h" + +/* + * 802.11 protocol crypto-related definitions. + */ +#define IEEE80211_KEYBUF_SIZE 16 +#define IEEE80211_MICBUF_SIZE (8+8) /* space for both tx+rx keys */ + +/* + * Old WEP-style key. Deprecated. + */ + +#if 0 +struct ieee80211_rsnparms { + uint8_t rsn_mcastcipher; /* mcast/group cipher */ + uint8_t rsn_mcastkeylen; /* mcast key length */ + uint8_t rsn_ucastcipher; /* selected unicast cipher */ + uint8_t rsn_ucastkeylen; /* unicast key length */ + uint8_t rsn_keymgmt; /* selected key mgmt algo */ + uint16_t rsn_caps; /* capabilities */ +}; +#endif //0000 + +/* + * Template for a supported cipher. Ciphers register with the + * crypto code and are typically loaded as separate modules + * (the null cipher is always present). + * XXX may need refcnts + */ + +/* + * Crypto key state. There is sufficient room for all supported + * ciphers (see below). The underlying ciphers are handled + * separately through loadable cipher modules that register with + * the generic crypto support. A key has a reference to an instance + * of the cipher; any per-key state is hung off wk_private by the + * cipher when it is attached. Ciphers are automatically called + * to detach and cleanup any such state when the key is deleted. + * + * The generic crypto support handles encap/decap of cipher-related + * frame contents for both hardware- and software-based implementations. + * A key requiring software crypto support is automatically flagged and + * the cipher is expected to honor this and do the necessary work. + * Ciphers such as TKIP may also support mixed hardware/software + * encrypt/decrypt and MIC processing. + */ +typedef uint16_t ieee80211_keyix; /* h/w key index */ + +struct ieee80211_key { + uint8_t wk_keylen; /* key length in bytes */ + uint8_t wk_pad; + uint16_t wk_flags; +#define IEEE80211_KEY_XMIT 0x0001 /* key used for xmit */ +#define IEEE80211_KEY_RECV 0x0002 /* key used for recv */ +#define IEEE80211_KEY_GROUP 0x0004 /* key used for WPA group operation */ +#define IEEE80211_KEY_SWENCRYPT 0x0010 /* host-based encrypt */ +#define IEEE80211_KEY_SWDECRYPT 0x0020 /* host-based decrypt */ +#define IEEE80211_KEY_SWENMIC 0x0040 /* host-based enmic */ +#define IEEE80211_KEY_SWDEMIC 0x0080 /* host-based demic */ +#define IEEE80211_KEY_DEVKEY 0x0100 /* device key request completed */ +#define IEEE80211_KEY_CIPHER0 0x1000 /* cipher-specific action 0 */ +#define IEEE80211_KEY_CIPHER1 0x2000 /* cipher-specific action 1 */ +#define IEEE80211_KEY_EMPTY 0x0000 + ieee80211_keyix wk_keyix; /* h/w key index */ + ieee80211_keyix wk_rxkeyix; /* optional h/w rx key index */ + uint8_t wk_key[IEEE80211_KEYBUF_SIZE+IEEE80211_MICBUF_SIZE]; +#define wk_txmic wk_key+IEEE80211_KEYBUF_SIZE+0 /* XXX can't () right */ +#define wk_rxmic wk_key+IEEE80211_KEYBUF_SIZE+8 /* XXX can't () right */ + /* key receive sequence counter */ + uint64_t wk_keyrsc[IEEE80211_TID_SIZE]; + uint64_t wk_keytsc; /* key transmit sequence counter */ + const struct ieee80211_cipher *wk_cipher; + //void *wk_private; /* private cipher state */ + //uint8_t wk_macaddr[IEEE80211_ADDR_LEN]; //JLU: no need ... +}; +#define IEEE80211_KEY_COMMON /* common flags passed in by apps */\ + (IEEE80211_KEY_XMIT | IEEE80211_KEY_RECV | IEEE80211_KEY_GROUP) +#define IEEE80211_KEY_DEVICE /* flags owned by device driver */\ + (IEEE80211_KEY_DEVKEY|IEEE80211_KEY_CIPHER0|IEEE80211_KEY_CIPHER1) + +#define IEEE80211_KEY_SWCRYPT \ + (IEEE80211_KEY_SWENCRYPT | IEEE80211_KEY_SWDECRYPT) +#define IEEE80211_KEY_SWMIC (IEEE80211_KEY_SWENMIC | IEEE80211_KEY_SWDEMIC) + +//#define IEEE80211_KEYIX_NONE ((ieee80211_keyix) -1) + +/* + * NB: these values are ordered carefully; there are lots of + * of implications in any reordering. Beware that 4 is used + * only to indicate h/w TKIP MIC support in driver capabilities; + * there is no separate cipher support (it's rolled into the + * TKIP cipher support). + */ +#define IEEE80211_CIPHER_NONE 0 /* pseudo value */ +#define IEEE80211_CIPHER_TKIP 1 +#define IEEE80211_CIPHER_AES_OCB 2 +#define IEEE80211_CIPHER_AES_CCM 3 +#define IEEE80211_CIPHER_TKIPMIC 4 /* TKIP MIC capability */ +#define IEEE80211_CIPHER_CKIP 5 +#define IEEE80211_CIPHER_WEP 6 +#define IEEE80211_CIPHER_WEP40 7 +#define IEEE80211_CIPHER_WEP104 8 + + +#define IEEE80211_CIPHER_MAX (IEEE80211_CIPHER_NONE+2) + +/* capability bits in ic_cryptocaps/iv_cryptocaps */ +#define IEEE80211_CRYPTO_NONE (1<wk_cipher == &ieee80211_cipher_none) + +struct ieee80211_key *ieee80211_crypto_encap(struct ieee80211_conn *, + esf_buf *); + +struct ieee80211_key *ieee80211_crypto_decap(struct ieee80211_conn *, + esf_buf *, int); + +#if 0 //H/W MIC +/* + * Check and remove any MIC. + */ +static INLINE int +ieee80211_crypto_demic(struct ieee80211vap *vap, struct ieee80211_key *k, + esf_buf *m, int force) +{ + const struct ieee80211_cipher *cip = k->wk_cipher; + return (cip->ic_miclen > 0 ? cip->ic_demic(k, m, force) : 1); +} + +/* + * Add any MIC. + */ +static INLINE int +ieee80211_crypto_enmic(struct ieee80211vap *vap, + struct ieee80211_key *k, esf_buf *m, int force) +{ + const struct ieee80211_cipher *cip = k->wk_cipher; + return (cip->ic_miclen > 0 ? cip->ic_enmic(k, m, force) : 1); +} +#endif //0000 + +/* + * Setup crypto support for a device/shared instance. + */ +void ieee80211_crypto_attach(struct ieee80211com *ic); + +/* + * Reset key state to an unused state. The crypto + * key allocation mechanism insures other state (e.g. + * key data) is properly setup before a key is used. + */ +static inline void +ieee80211_crypto_resetkey(struct ieee80211_key *k) +{ + k->wk_cipher = NULL; + k->wk_flags = IEEE80211_KEY_XMIT | IEEE80211_KEY_RECV; +} + +/* + * Crypt-related notification methods. + */ +//void ieee80211_notify_replay_failure(const struct ieee80211_frame *, const struct ieee80211_key *, +// uint64_t rsc, int tid); +//void ieee80211_notify_michael_failure(const struct ieee80211_frame *, u_int keyix); + +#endif /* _NET80211_IEEE80211_CRYPTO_H_ */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/ieee802_11_defs.h b/tools/sdk/include/wpa_supplicant/wpa/ieee802_11_defs.h new file mode 100644 index 00000000..4881e39a --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/ieee802_11_defs.h @@ -0,0 +1,607 @@ +/* + * IEEE 802.11 Frame type definitions + * Copyright (c) 2002-2009, Jouni Malinen + * Copyright (c) 2007-2008 Intel Corporation + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef IEEE802_11_DEFS_H +#define IEEE802_11_DEFS_H + +/* IEEE 802.11 defines */ + +#define WLAN_FC_PVER 0x0003 +#define WLAN_FC_TODS 0x0100 +#define WLAN_FC_FROMDS 0x0200 +#define WLAN_FC_MOREFRAG 0x0400 +#define WLAN_FC_RETRY 0x0800 +#define WLAN_FC_PWRMGT 0x1000 +#define WLAN_FC_MOREDATA 0x2000 +#define WLAN_FC_ISWEP 0x4000 +#define WLAN_FC_ORDER 0x8000 + +#define WLAN_FC_GET_TYPE(fc) (((fc) & 0x000c) >> 2) +#define WLAN_FC_GET_STYPE(fc) (((fc) & 0x00f0) >> 4) + +#define WLAN_GET_SEQ_FRAG(seq) ((seq) & (BIT(3) | BIT(2) | BIT(1) | BIT(0))) +#define WLAN_GET_SEQ_SEQ(seq) \ + (((seq) & (~(BIT(3) | BIT(2) | BIT(1) | BIT(0)))) >> 4) + +#define WLAN_FC_TYPE_MGMT 0 +#define WLAN_FC_TYPE_CTRL 1 +#define WLAN_FC_TYPE_DATA 2 + +/* management */ +#define WLAN_FC_STYPE_ASSOC_REQ 0 +#define WLAN_FC_STYPE_ASSOC_RESP 1 +#define WLAN_FC_STYPE_REASSOC_REQ 2 +#define WLAN_FC_STYPE_REASSOC_RESP 3 +#define WLAN_FC_STYPE_PROBE_REQ 4 +#define WLAN_FC_STYPE_PROBE_RESP 5 +#define WLAN_FC_STYPE_BEACON 8 +#define WLAN_FC_STYPE_ATIM 9 +#define WLAN_FC_STYPE_DISASSOC 10 +#define WLAN_FC_STYPE_AUTH 11 +#define WLAN_FC_STYPE_DEAUTH 12 +#define WLAN_FC_STYPE_ACTION 13 + +/* control */ +#define WLAN_FC_STYPE_PSPOLL 10 +#define WLAN_FC_STYPE_RTS 11 +#define WLAN_FC_STYPE_CTS 12 +#define WLAN_FC_STYPE_ACK 13 +#define WLAN_FC_STYPE_CFEND 14 +#define WLAN_FC_STYPE_CFENDACK 15 + +/* data */ +#define WLAN_FC_STYPE_DATA 0 +#define WLAN_FC_STYPE_DATA_CFACK 1 +#define WLAN_FC_STYPE_DATA_CFPOLL 2 +#define WLAN_FC_STYPE_DATA_CFACKPOLL 3 +#define WLAN_FC_STYPE_NULLFUNC 4 +#define WLAN_FC_STYPE_CFACK 5 +#define WLAN_FC_STYPE_CFPOLL 6 +#define WLAN_FC_STYPE_CFACKPOLL 7 +#define WLAN_FC_STYPE_QOS_DATA 8 + +/* Authentication algorithms */ +#define WLAN_AUTH_OPEN 0 +#define WLAN_AUTH_SHARED_KEY 1 +#define WLAN_AUTH_FT 2 +#define WLAN_AUTH_LEAP 128 + +#define WLAN_AUTH_CHALLENGE_LEN 128 + +#define WLAN_CAPABILITY_ESS BIT(0) +#define WLAN_CAPABILITY_IBSS BIT(1) +#define WLAN_CAPABILITY_CF_POLLABLE BIT(2) +#define WLAN_CAPABILITY_CF_POLL_REQUEST BIT(3) +#define WLAN_CAPABILITY_PRIVACY BIT(4) +#define WLAN_CAPABILITY_SHORT_PREAMBLE BIT(5) +#define WLAN_CAPABILITY_PBCC BIT(6) +#define WLAN_CAPABILITY_CHANNEL_AGILITY BIT(7) +#define WLAN_CAPABILITY_SPECTRUM_MGMT BIT(8) +#define WLAN_CAPABILITY_SHORT_SLOT_TIME BIT(10) +#define WLAN_CAPABILITY_DSSS_OFDM BIT(13) + +/* Status codes (IEEE 802.11-2007, 7.3.1.9, Table 7-23) */ +#define WLAN_STATUS_SUCCESS 0 +#define WLAN_STATUS_UNSPECIFIED_FAILURE 1 +#define WLAN_STATUS_CAPS_UNSUPPORTED 10 +#define WLAN_STATUS_REASSOC_NO_ASSOC 11 +#define WLAN_STATUS_ASSOC_DENIED_UNSPEC 12 +#define WLAN_STATUS_NOT_SUPPORTED_AUTH_ALG 13 +#define WLAN_STATUS_UNKNOWN_AUTH_TRANSACTION 14 +#define WLAN_STATUS_CHALLENGE_FAIL 15 +#define WLAN_STATUS_AUTH_TIMEOUT 16 +#define WLAN_STATUS_AP_UNABLE_TO_HANDLE_NEW_STA 17 +#define WLAN_STATUS_ASSOC_DENIED_RATES 18 +/* IEEE 802.11b */ +#define WLAN_STATUS_ASSOC_DENIED_NOSHORT 19 +#define WLAN_STATUS_ASSOC_DENIED_NOPBCC 20 +#define WLAN_STATUS_ASSOC_DENIED_NOAGILITY 21 +/* IEEE 802.11h */ +#define WLAN_STATUS_SPEC_MGMT_REQUIRED 22 +#define WLAN_STATUS_PWR_CAPABILITY_NOT_VALID 23 +#define WLAN_STATUS_SUPPORTED_CHANNEL_NOT_VALID 24 +/* IEEE 802.11g */ +#define WLAN_STATUS_ASSOC_DENIED_NO_SHORT_SLOT_TIME 25 +#define WLAN_STATUS_ASSOC_DENIED_NO_ER_PBCC 26 +#define WLAN_STATUS_ASSOC_DENIED_NO_DSSS_OFDM 27 +#define WLAN_STATUS_R0KH_UNREACHABLE 28 +/* IEEE 802.11w */ +#define WLAN_STATUS_ASSOC_REJECTED_TEMPORARILY 30 +#define WLAN_STATUS_ROBUST_MGMT_FRAME_POLICY_VIOLATION 31 +#define WLAN_STATUS_UNSPECIFIED_QOS_FAILURE 32 +#define WLAN_STATUS_REQUEST_DECLINED 37 +#define WLAN_STATUS_INVALID_PARAMETERS 38 +/* IEEE 802.11i */ +#define WLAN_STATUS_INVALID_IE 40 +#define WLAN_STATUS_GROUP_CIPHER_NOT_VALID 41 +#define WLAN_STATUS_PAIRWISE_CIPHER_NOT_VALID 42 +#define WLAN_STATUS_AKMP_NOT_VALID 43 +#define WLAN_STATUS_UNSUPPORTED_RSN_IE_VERSION 44 +#define WLAN_STATUS_INVALID_RSN_IE_CAPAB 45 +#define WLAN_STATUS_CIPHER_REJECTED_PER_POLICY 46 +#define WLAN_STATUS_TS_NOT_CREATED 47 +#define WLAN_STATUS_DIRECT_LINK_NOT_ALLOWED 48 +#define WLAN_STATUS_DEST_STA_NOT_PRESENT 49 +#define WLAN_STATUS_DEST_STA_NOT_QOS_STA 50 +#define WLAN_STATUS_ASSOC_DENIED_LISTEN_INT_TOO_LARGE 51 +/* IEEE 802.11r */ +#define WLAN_STATUS_INVALID_FT_ACTION_FRAME_COUNT 52 +#define WLAN_STATUS_INVALID_PMKID 53 +#define WLAN_STATUS_INVALID_MDIE 54 +#define WLAN_STATUS_INVALID_FTIE 55 + +/* Reason codes (IEEE 802.11-2007, 7.3.1.7, Table 7-22) */ +#define WLAN_REASON_UNSPECIFIED 1 +#define WLAN_REASON_PREV_AUTH_NOT_VALID 2 +#define WLAN_REASON_DEAUTH_LEAVING 3 +#define WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY 4 +#define WLAN_REASON_DISASSOC_AP_BUSY 5 +#define WLAN_REASON_CLASS2_FRAME_FROM_NONAUTH_STA 6 +#define WLAN_REASON_CLASS3_FRAME_FROM_NONASSOC_STA 7 +#define WLAN_REASON_DISASSOC_STA_HAS_LEFT 8 +#define WLAN_REASON_STA_REQ_ASSOC_WITHOUT_AUTH 9 +/* IEEE 802.11h */ +#define WLAN_REASON_PWR_CAPABILITY_NOT_VALID 10 +#define WLAN_REASON_SUPPORTED_CHANNEL_NOT_VALID 11 +/* IEEE 802.11i */ +#define WLAN_REASON_INVALID_IE 13 +#define WLAN_REASON_MICHAEL_MIC_FAILURE 14 +#define WLAN_REASON_4WAY_HANDSHAKE_TIMEOUT 15 +#define WLAN_REASON_GROUP_KEY_UPDATE_TIMEOUT 16 +#define WLAN_REASON_IE_IN_4WAY_DIFFERS 17 +#define WLAN_REASON_GROUP_CIPHER_NOT_VALID 18 +#define WLAN_REASON_PAIRWISE_CIPHER_NOT_VALID 19 +#define WLAN_REASON_AKMP_NOT_VALID 20 +#define WLAN_REASON_UNSUPPORTED_RSN_IE_VERSION 21 +#define WLAN_REASON_INVALID_RSN_IE_CAPAB 22 +#define WLAN_REASON_IEEE_802_1X_AUTH_FAILED 23 +#define WLAN_REASON_CIPHER_SUITE_REJECTED 24 + + +/* Information Element IDs */ +#define WLAN_EID_SSID 0 +#define WLAN_EID_SUPP_RATES 1 +#define WLAN_EID_FH_PARAMS 2 +#define WLAN_EID_DS_PARAMS 3 +#define WLAN_EID_CF_PARAMS 4 +#define WLAN_EID_TIM 5 +#define WLAN_EID_IBSS_PARAMS 6 +#define WLAN_EID_COUNTRY 7 +#define WLAN_EID_CHALLENGE 16 +/* EIDs defined by IEEE 802.11h - START */ +#define WLAN_EID_PWR_CONSTRAINT 32 +#define WLAN_EID_PWR_CAPABILITY 33 +#define WLAN_EID_TPC_REQUEST 34 +#define WLAN_EID_TPC_REPORT 35 +#define WLAN_EID_SUPPORTED_CHANNELS 36 +#define WLAN_EID_CHANNEL_SWITCH 37 +#define WLAN_EID_MEASURE_REQUEST 38 +#define WLAN_EID_MEASURE_REPORT 39 +#define WLAN_EID_QUITE 40 +#define WLAN_EID_IBSS_DFS 41 +/* EIDs defined by IEEE 802.11h - END */ +#define WLAN_EID_ERP_INFO 42 +#define WLAN_EID_HT_CAP 45 +#define WLAN_EID_RSN 48 +#define WLAN_EID_EXT_SUPP_RATES 50 +#define WLAN_EID_MOBILITY_DOMAIN 54 +#define WLAN_EID_FAST_BSS_TRANSITION 55 +#define WLAN_EID_TIMEOUT_INTERVAL 56 +#define WLAN_EID_RIC_DATA 57 +#define WLAN_EID_HT_OPERATION 61 +#define WLAN_EID_SECONDARY_CHANNEL_OFFSET 62 +#define WLAN_EID_20_40_BSS_COEXISTENCE 72 +#define WLAN_EID_20_40_BSS_INTOLERANT 73 +#define WLAN_EID_OVERLAPPING_BSS_SCAN_PARAMS 74 +#define WLAN_EID_MMIE 76 +#define WLAN_EID_VENDOR_SPECIFIC 221 + + +/* Action frame categories (IEEE 802.11-2007, 7.3.1.11, Table 7-24) */ +#define WLAN_ACTION_SPECTRUM_MGMT 0 +#define WLAN_ACTION_QOS 1 +#define WLAN_ACTION_DLS 2 +#define WLAN_ACTION_BLOCK_ACK 3 +#define WLAN_ACTION_PUBLIC 4 +#define WLAN_ACTION_RADIO_MEASUREMENT 5 +#define WLAN_ACTION_FT 6 +#define WLAN_ACTION_HT 7 +#define WLAN_ACTION_SA_QUERY 8 +#define WLAN_ACTION_WMM 17 /* WMM Specification 1.1 */ + +/* SA Query Action frame (IEEE 802.11w/D8.0, 7.4.9) */ +#define WLAN_SA_QUERY_REQUEST 0 +#define WLAN_SA_QUERY_RESPONSE 1 + +#define WLAN_SA_QUERY_TR_ID_LEN 2 + +/* Timeout Interval Type */ +#define WLAN_TIMEOUT_REASSOC_DEADLINE 1 +#define WLAN_TIMEOUT_KEY_LIFETIME 2 +#define WLAN_TIMEOUT_ASSOC_COMEBACK 3 + + +#ifdef _MSC_VER +#pragma pack(push, 1) +#endif /* _MSC_VER */ + +struct ieee80211_hdr { + le16 frame_control; + le16 duration_id; + u8 addr1[6]; + u8 addr2[6]; + u8 addr3[6]; + le16 seq_ctrl; + /* followed by 'u8 addr4[6];' if ToDS and FromDS is set in data frame + */ +} STRUCT_PACKED; + +#define IEEE80211_DA_FROMDS addr1 +#define IEEE80211_BSSID_FROMDS addr2 +#define IEEE80211_SA_FROMDS addr3 + +#define IEEE80211_HDRLEN (sizeof(struct ieee80211_hdr)) + +#define IEEE80211_FC(type, stype) host_to_le16((type << 2) | (stype << 4)) + +struct ieee80211_mgmt { + le16 frame_control; + le16 duration; + u8 da[6]; + u8 sa[6]; + u8 bssid[6]; + le16 seq_ctrl; + union { + struct { + le16 auth_alg; + le16 auth_transaction; + le16 status_code; + /* possibly followed by Challenge text */ + u8 variable[0]; + } STRUCT_PACKED auth; + struct { + le16 reason_code; + } STRUCT_PACKED deauth; + struct { + le16 capab_info; + le16 listen_interval; + /* followed by SSID and Supported rates */ + u8 variable[0]; + } STRUCT_PACKED assoc_req; + struct { + le16 capab_info; + le16 status_code; + le16 aid; + /* followed by Supported rates */ + u8 variable[0]; + } STRUCT_PACKED assoc_resp, reassoc_resp; + struct { + le16 capab_info; + le16 listen_interval; + u8 current_ap[6]; + /* followed by SSID and Supported rates */ + u8 variable[0]; + } STRUCT_PACKED reassoc_req; + struct { + le16 reason_code; + } STRUCT_PACKED disassoc; + struct { + u8 timestamp[8]; + le16 beacon_int; + le16 capab_info; + /* followed by some of SSID, Supported rates, + * FH Params, DS Params, CF Params, IBSS Params, TIM */ + u8 variable[0]; + } STRUCT_PACKED beacon; + struct { + /* only variable items: SSID, Supported rates */ + u8 variable[0]; + } STRUCT_PACKED probe_req; + struct { + u8 timestamp[8]; + le16 beacon_int; + le16 capab_info; + /* followed by some of SSID, Supported rates, + * FH Params, DS Params, CF Params, IBSS Params */ + u8 variable[0]; + } STRUCT_PACKED probe_resp; + struct { + u8 category; + union { + struct { + u8 action_code; + u8 dialog_token; + u8 status_code; + u8 variable[0]; + } STRUCT_PACKED wmm_action; + struct{ + u8 action_code; + u8 element_id; + u8 length; + u8 switch_mode; + u8 new_chan; + u8 switch_count; + } STRUCT_PACKED chan_switch; + struct { + u8 action; + u8 sta_addr[ETH_ALEN]; + u8 target_ap_addr[ETH_ALEN]; + u8 variable[0]; /* FT Request */ + } STRUCT_PACKED ft_action_req; + struct { + u8 action; + u8 sta_addr[ETH_ALEN]; + u8 target_ap_addr[ETH_ALEN]; + le16 status_code; + u8 variable[0]; /* FT Request */ + } STRUCT_PACKED ft_action_resp; + struct { + u8 action; + u8 trans_id[WLAN_SA_QUERY_TR_ID_LEN]; + } STRUCT_PACKED sa_query_req; + struct { + u8 action; /* */ + u8 trans_id[WLAN_SA_QUERY_TR_ID_LEN]; + } STRUCT_PACKED sa_query_resp; + } u; + } STRUCT_PACKED action; + } u; +} STRUCT_PACKED; + + +struct ieee80211_ht_capabilities { + le16 ht_capabilities_info; + u8 a_mpdu_params; + u8 supported_mcs_set[16]; + le16 ht_extended_capabilities; + le32 tx_bf_capability_info; + u8 asel_capabilities; +} STRUCT_PACKED; + + +struct ieee80211_ht_operation { + u8 control_chan; + u8 ht_param; + le16 operation_mode; + le16 stbc_param; + u8 basic_set[16]; +} STRUCT_PACKED; + +#ifdef _MSC_VER +#pragma pack(pop) +#endif /* _MSC_VER */ + +#define ERP_INFO_NON_ERP_PRESENT BIT(0) +#define ERP_INFO_USE_PROTECTION BIT(1) +#define ERP_INFO_BARKER_PREAMBLE_MODE BIT(2) + + +#define HT_CAP_INFO_LDPC_CODING_CAP ((u16) BIT(0)) +#define HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET ((u16) BIT(1)) +#define HT_CAP_INFO_SMPS_MASK ((u16) (BIT(2) | BIT(3))) +#define HT_CAP_INFO_SMPS_STATIC ((u16) 0) +#define HT_CAP_INFO_SMPS_DYNAMIC ((u16) BIT(2)) +#define HT_CAP_INFO_SMPS_DISABLED ((u16) (BIT(2) | BIT(3))) +#define HT_CAP_INFO_GREEN_FIELD ((u16) BIT(4)) +#define HT_CAP_INFO_SHORT_GI20MHZ ((u16) BIT(5)) +#define HT_CAP_INFO_SHORT_GI40MHZ ((u16) BIT(6)) +#define HT_CAP_INFO_TX_STBC ((u16) BIT(7)) +#define HT_CAP_INFO_RX_STBC_MASK ((u16) (BIT(8) | BIT(9))) +#define HT_CAP_INFO_RX_STBC_1 ((u16) BIT(8)) +#define HT_CAP_INFO_RX_STBC_12 ((u16) BIT(9)) +#define HT_CAP_INFO_RX_STBC_123 ((u16) (BIT(8) | BIT(9))) +#define HT_CAP_INFO_DELAYED_BA ((u16) BIT(10)) +#define HT_CAP_INFO_MAX_AMSDU_SIZE ((u16) BIT(11)) +#define HT_CAP_INFO_DSSS_CCK40MHZ ((u16) BIT(12)) +#define HT_CAP_INFO_PSMP_SUPP ((u16) BIT(13)) +#define HT_CAP_INFO_40MHZ_INTOLERANT ((u16) BIT(14)) +#define HT_CAP_INFO_LSIG_TXOP_PROTECT_SUPPORT ((u16) BIT(15)) + + +#define EXT_HT_CAP_INFO_PCO ((u16) BIT(0)) +#define EXT_HT_CAP_INFO_TRANS_TIME_OFFSET 1 +#define EXT_HT_CAP_INFO_MCS_FEEDBACK_OFFSET 8 +#define EXT_HT_CAP_INFO_HTC_SUPPORTED ((u16) BIT(10)) +#define EXT_HT_CAP_INFO_RD_RESPONDER ((u16) BIT(11)) + + +#define TX_BEAMFORM_CAP_TXBF_CAP ((u32) BIT(0)) +#define TX_BEAMFORM_CAP_RX_STAGGERED_SOUNDING_CAP ((u32) BIT(1)) +#define TX_BEAMFORM_CAP_TX_STAGGERED_SOUNDING_CAP ((u32) BIT(2)) +#define TX_BEAMFORM_CAP_RX_ZLF_CAP ((u32) BIT(3)) +#define TX_BEAMFORM_CAP_TX_ZLF_CAP ((u32) BIT(4)) +#define TX_BEAMFORM_CAP_IMPLICIT_ZLF_CAP ((u32) BIT(5)) +#define TX_BEAMFORM_CAP_CALIB_OFFSET 6 +#define TX_BEAMFORM_CAP_EXPLICIT_CSI_TXBF_CAP ((u32) BIT(8)) +#define TX_BEAMFORM_CAP_EXPLICIT_UNCOMPR_STEERING_MATRIX_CAP ((u32) BIT(9)) +#define TX_BEAMFORM_CAP_EXPLICIT_BF_CSI_FEEDBACK_CAP ((u32) BIT(10)) +#define TX_BEAMFORM_CAP_EXPLICIT_BF_CSI_FEEDBACK_OFFSET 11 +#define TX_BEAMFORM_CAP_EXPLICIT_UNCOMPR_STEERING_MATRIX_FEEDBACK_OFFSET 13 +#define TX_BEAMFORM_CAP_EXPLICIT_COMPRESSED_STEERING_MATRIX_FEEDBACK_OFFSET 15 +#define TX_BEAMFORM_CAP_MINIMAL_GROUPING_OFFSET 17 +#define TX_BEAMFORM_CAP_CSI_NUM_BEAMFORMER_ANT_OFFSET 19 +#define TX_BEAMFORM_CAP_UNCOMPRESSED_STEERING_MATRIX_BEAMFORMER_ANT_OFFSET 21 +#define TX_BEAMFORM_CAP_COMPRESSED_STEERING_MATRIX_BEAMFORMER_ANT_OFFSET 23 +#define TX_BEAMFORM_CAP_SCI_MAX_OF_ROWS_BEANFORMER_SUPPORTED_OFFSET 25 + + +#define ASEL_CAPABILITY_ASEL_CAPABLE ((u8) BIT(0)) +#define ASEL_CAPABILITY_EXPLICIT_CSI_FEEDBACK_BASED_TX_AS_CAP ((u8) BIT(1)) +#define ASEL_CAPABILITY_ANT_INDICES_FEEDBACK_BASED_TX_AS_CAP ((u8) BIT(2)) +#define ASEL_CAPABILITY_EXPLICIT_CSI_FEEDBACK_CAP ((u8) BIT(3)) +#define ASEL_CAPABILITY_ANT_INDICES_FEEDBACK_CAP ((u8) BIT(4)) +#define ASEL_CAPABILITY_RX_AS_CAP ((u8) BIT(5)) +#define ASEL_CAPABILITY_TX_SOUND_PPDUS_CAP ((u8) BIT(6)) + +#define HT_INFO_HT_PARAM_SECONDARY_CHNL_OFF_MASK ((u8) BIT(0) | BIT(1)) +#define HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE ((u8) BIT(0)) +#define HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW ((u8) BIT(0) | BIT(1)) +#define HT_INFO_HT_PARAM_REC_TRANS_CHNL_WIDTH ((u8) BIT(2)) +#define HT_INFO_HT_PARAM_RIFS_MODE ((u8) BIT(3)) +#define HT_INFO_HT_PARAM_CTRL_ACCESS_ONLY ((u8) BIT(4)) +#define HT_INFO_HT_PARAM_SRV_INTERVAL_GRANULARITY ((u8) BIT(5)) + + +#define OP_MODE_PURE 0 +#define OP_MODE_MAY_BE_LEGACY_STAS 1 +#define OP_MODE_20MHZ_HT_STA_ASSOCED 2 +#define OP_MODE_MIXED 3 + +#define HT_INFO_OPERATION_MODE_OP_MODE_MASK \ + ((le16) (0x0001 | 0x0002)) +#define HT_INFO_OPERATION_MODE_OP_MODE_OFFSET 0 +#define HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT ((u8) BIT(2)) +#define HT_INFO_OPERATION_MODE_TRANSMIT_BURST_LIMIT ((u8) BIT(3)) +#define HT_INFO_OPERATION_MODE_NON_HT_STA_PRESENT ((u8) BIT(4)) + +#define HT_INFO_STBC_PARAM_DUAL_BEACON ((u16) BIT(6)) +#define HT_INFO_STBC_PARAM_DUAL_STBC_PROTECT ((u16) BIT(7)) +#define HT_INFO_STBC_PARAM_SECONDARY_BCN ((u16) BIT(8)) +#define HT_INFO_STBC_PARAM_LSIG_TXOP_PROTECT_ALLOWED ((u16) BIT(9)) +#define HT_INFO_STBC_PARAM_PCO_ACTIVE ((u16) BIT(10)) +#define HT_INFO_STBC_PARAM_PCO_PHASE ((u16) BIT(11)) + + +#define OUI_MICROSOFT 0x0050f2 /* Microsoft (also used in Wi-Fi specs) + * 00:50:F2 */ +#define WPA_IE_VENDOR_TYPE 0x0050f201 +#define WPS_IE_VENDOR_TYPE 0x0050f204 + +#define WMM_OUI_TYPE 2 +#define WMM_OUI_SUBTYPE_INFORMATION_ELEMENT 0 +#define WMM_OUI_SUBTYPE_PARAMETER_ELEMENT 1 +#define WMM_OUI_SUBTYPE_TSPEC_ELEMENT 2 +#define WMM_VERSION 1 + +#define WMM_ACTION_CODE_ADDTS_REQ 0 +#define WMM_ACTION_CODE_ADDTS_RESP 1 +#define WMM_ACTION_CODE_DELTS 2 + +#define WMM_ADDTS_STATUS_ADMISSION_ACCEPTED 0 +#define WMM_ADDTS_STATUS_INVALID_PARAMETERS 1 +/* 2 - Reserved */ +#define WMM_ADDTS_STATUS_REFUSED 3 +/* 4-255 - Reserved */ + +/* WMM TSPEC Direction Field Values */ +#define WMM_TSPEC_DIRECTION_UPLINK 0 +#define WMM_TSPEC_DIRECTION_DOWNLINK 1 +/* 2 - Reserved */ +#define WMM_TSPEC_DIRECTION_BI_DIRECTIONAL 3 + +/* + * WMM Information Element (used in (Re)Association Request frames; may also be + * used in Beacon frames) + */ +struct wmm_information_element { + /* Element ID: 221 (0xdd); Length: 7 */ + /* required fields for WMM version 1 */ + u8 oui[3]; /* 00:50:f2 */ + u8 oui_type; /* 2 */ + u8 oui_subtype; /* 0 */ + u8 version; /* 1 for WMM version 1.0 */ + u8 qos_info; /* AP/STA specific QoS info */ + +} STRUCT_PACKED; + +#define WMM_AC_AIFSN_MASK 0x0f +#define WMM_AC_AIFNS_SHIFT 0 +#define WMM_AC_ACM 0x10 +#define WMM_AC_ACI_MASK 0x60 +#define WMM_AC_ACI_SHIFT 5 + +#define WMM_AC_ECWMIN_MASK 0x0f +#define WMM_AC_ECWMIN_SHIFT 0 +#define WMM_AC_ECWMAX_MASK 0xf0 +#define WMM_AC_ECWMAX_SHIFT 4 + +struct wmm_ac_parameter { + u8 aci_aifsn; /* AIFSN, ACM, ACI */ + u8 cw; /* ECWmin, ECWmax (CW = 2^ECW - 1) */ + le16 txop_limit; +} STRUCT_PACKED; + +/* + * WMM Parameter Element (used in Beacon, Probe Response, and (Re)Association + * Response frmaes) + */ +struct wmm_parameter_element { + /* Element ID: 221 (0xdd); Length: 24 */ + /* required fields for WMM version 1 */ + u8 oui[3]; /* 00:50:f2 */ + u8 oui_type; /* 2 */ + u8 oui_subtype; /* 1 */ + u8 version; /* 1 for WMM version 1.0 */ + u8 qos_info; /* AP/STA specif QoS info */ + u8 reserved; /* 0 */ + struct wmm_ac_parameter ac[4]; /* AC_BE, AC_BK, AC_VI, AC_VO */ + +} STRUCT_PACKED; + +/* WMM TSPEC Element */ +struct wmm_tspec_element { + u8 eid; /* 221 = 0xdd */ + u8 length; /* 6 + 55 = 61 */ + u8 oui[3]; /* 00:50:f2 */ + u8 oui_type; /* 2 */ + u8 oui_subtype; /* 2 */ + u8 version; /* 1 */ + /* WMM TSPEC body (55 octets): */ + u8 ts_info[3]; + le16 nominal_msdu_size; + le16 maximum_msdu_size; + le32 minimum_service_interval; + le32 maximum_service_interval; + le32 inactivity_interval; + le32 suspension_interval; + le32 service_start_time; + le32 minimum_data_rate; + le32 mean_data_rate; + le32 peak_data_rate; + le32 maximum_burst_size; + le32 delay_bound; + le32 minimum_phy_rate; + le16 surplus_bandwidth_allowance; + le16 medium_time; +} STRUCT_PACKED; + + +/* Access Categories / ACI to AC coding */ +enum { + WMM_AC_BE = 0 /* Best Effort */, + WMM_AC_BK = 1 /* Background */, + WMM_AC_VI = 2 /* Video */, + WMM_AC_VO = 3 /* Voice */ +}; + + +#define OUI_BROADCOM 0x00904c /* Broadcom (Epigram) */ + +#define VENDOR_HT_CAPAB_OUI_TYPE 0x33 /* 00-90-4c:0x33 */ + +/* cipher suite selectors */ +#define WLAN_CIPHER_SUITE_USE_GROUP 0x000FAC00 +#define WLAN_CIPHER_SUITE_WEP40 0x000FAC01 +#define WLAN_CIPHER_SUITE_TKIP 0x000FAC02 +/* reserved: 0x000FAC03 */ +#define WLAN_CIPHER_SUITE_CCMP 0x000FAC04 +#define WLAN_CIPHER_SUITE_WEP104 0x000FAC05 +#define WLAN_CIPHER_SUITE_AES_CMAC 0x000FAC06 + +/* AKM suite selectors */ +#define WLAN_AKM_SUITE_8021X 0x000FAC01 +#define WLAN_AKM_SUITE_PSK 0x000FAC02 + +#endif /* IEEE802_11_DEFS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/ieee802_1x.h b/tools/sdk/include/wpa_supplicant/wpa/ieee802_1x.h new file mode 100644 index 00000000..e10ff7b3 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/ieee802_1x.h @@ -0,0 +1,64 @@ +/* + * hostapd / IEEE 802.1X-2004 Authenticator + * Copyright (c) 2002-2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef IEEE802_1X_H +#define IEEE802_1X_H + +struct hostapd_data; +struct sta_info; +struct eapol_state_machine; +struct hostapd_config; +struct hostapd_bss_config; +struct hostapd_radius_attr; +struct radius_msg; + + +void ieee802_1x_receive(struct hostapd_data *hapd, const u8 *sa, const u8 *buf, + size_t len); + +#if 0 +void ieee802_1x_new_station(struct hostapd_data *hapd, struct sta_info *sta); +void ieee802_1x_free_station(struct sta_info *sta); + +void ieee802_1x_tx_key(struct hostapd_data *hapd, struct sta_info *sta); +void ieee802_1x_abort_auth(struct hostapd_data *hapd, struct sta_info *sta); +void ieee802_1x_set_sta_authorized(struct hostapd_data *hapd, + struct sta_info *sta, int authorized); +void ieee802_1x_dump_state(FILE *f, const char *prefix, struct sta_info *sta); +int ieee802_1x_init(struct hostapd_data *hapd); +void ieee802_1x_deinit(struct hostapd_data *hapd); +int ieee802_1x_tx_status(struct hostapd_data *hapd, struct sta_info *sta, + const u8 *buf, size_t len, int ack); +int ieee802_1x_eapol_tx_status(struct hostapd_data *hapd, struct sta_info *sta, + const u8 *data, int len, int ack); +u8 * ieee802_1x_get_identity(struct eapol_state_machine *sm, size_t *len); +u8 * ieee802_1x_get_radius_class(struct eapol_state_machine *sm, size_t *len, + int idx); +struct wpabuf * ieee802_1x_get_radius_cui(struct eapol_state_machine *sm); +const u8 * ieee802_1x_get_key(struct eapol_state_machine *sm, size_t *len); +void ieee802_1x_notify_port_enabled(struct eapol_state_machine *sm, + int enabled); +void ieee802_1x_notify_port_valid(struct eapol_state_machine *sm, + int valid); +void ieee802_1x_notify_pre_auth(struct eapol_state_machine *sm, int pre_auth); +int ieee802_1x_get_mib(struct hostapd_data *hapd, char *buf, size_t buflen); +int ieee802_1x_get_mib_sta(struct hostapd_data *hapd, struct sta_info *sta, + char *buf, size_t buflen); +void hostapd_get_ntp_timestamp(u8 *buf); +char *eap_type_text(u8 type); + +const char *radius_mode_txt(struct hostapd_data *hapd); +int radius_sta_rate(struct hostapd_data *hapd, struct sta_info *sta); + +int add_common_radius_attr(struct hostapd_data *hapd, + struct hostapd_radius_attr *req_attr, + struct sta_info *sta, + struct radius_msg *msg); +#endif + +#endif /* IEEE802_1X_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/includes.h b/tools/sdk/include/wpa_supplicant/wpa/includes.h new file mode 100644 index 00000000..993bc499 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/includes.h @@ -0,0 +1,31 @@ +/* + * wpa_supplicant/hostapd - Default include files + * Copyright (c) 2005-2006, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + * + * This header file is included into all C files so that commonly used header + * files can be selected with OS specific ifdef blocks in one place instead of + * having to have OS/C library specific selection in many files. + */ + +#ifndef INCLUDES_H +#define INCLUDES_H + +/* Include possible build time configuration before including anything else */ +//#include "build_config.h" //don't need anymore + +//#include +//#include +//#include +//#include +//#include + +#endif /* INCLUDES_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/list.h b/tools/sdk/include/wpa_supplicant/wpa/list.h new file mode 100644 index 00000000..c8dccee8 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/list.h @@ -0,0 +1,101 @@ +/* + * Doubly-linked list + * Copyright (c) 2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef LIST_H +#define LIST_H + +/** + * struct dl_list - Doubly-linked list + */ +struct dl_list { + struct dl_list *next; + struct dl_list *prev; +}; + +static inline void dl_list_init(struct dl_list *list) +{ + list->next = list; + list->prev = list; +} + +static inline void dl_list_add(struct dl_list *list, struct dl_list *item) +{ + item->next = list->next; + item->prev = list; + list->next->prev = item; + list->next = item; +} + +static inline void dl_list_add_tail(struct dl_list *list, struct dl_list *item) +{ + dl_list_add(list->prev, item); +} + +static inline void dl_list_del(struct dl_list *item) +{ + item->next->prev = item->prev; + item->prev->next = item->next; + item->next = NULL; + item->prev = NULL; +} + +static inline int dl_list_empty(struct dl_list *list) +{ + return list->next == list; +} + +static inline unsigned int dl_list_len(struct dl_list *list) +{ + struct dl_list *item; + int count = 0; + for (item = list->next; item != list; item = item->next) + count++; + return count; +} + +#ifndef offsetof +#define offsetof(type, member) ((long) &((type *) 0)->member) +#endif + +#define dl_list_entry(item, type, member) \ + ((type *) ((char *) item - offsetof(type, member))) + +#define dl_list_first(list, type, member) \ + (dl_list_empty((list)) ? NULL : \ + dl_list_entry((list)->next, type, member)) + +#define dl_list_last(list, type, member) \ + (dl_list_empty((list)) ? NULL : \ + dl_list_entry((list)->prev, type, member)) + +#define dl_list_for_each(item, list, type, member) \ + for (item = dl_list_entry((list)->next, type, member); \ + &item->member != (list); \ + item = dl_list_entry(item->member.next, type, member)) + +#define dl_list_for_each_safe(item, n, list, type, member) \ + for (item = dl_list_entry((list)->next, type, member), \ + n = dl_list_entry(item->member.next, type, member); \ + &item->member != (list); \ + item = n, n = dl_list_entry(n->member.next, type, member)) + +#define dl_list_for_each_reverse(item, list, type, member) \ + for (item = dl_list_entry((list)->prev, type, member); \ + &item->member != (list); \ + item = dl_list_entry(item->member.prev, type, member)) + +#define DEFINE_DL_LIST(name) \ + struct dl_list name = { &(name), &(name) } + +#endif /* LIST_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/sta_info.h b/tools/sdk/include/wpa_supplicant/wpa/sta_info.h new file mode 100644 index 00000000..44874a2f --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/sta_info.h @@ -0,0 +1,194 @@ +/* + * hostapd / Station table + * Copyright (c) 2002-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef STA_INFO_H +#define STA_INFO_H + +/* STA flags */ +#define WLAN_STA_AUTH BIT(0) +#define WLAN_STA_ASSOC BIT(1) +#define WLAN_STA_PS BIT(2) +#define WLAN_STA_TIM BIT(3) +#define WLAN_STA_PERM BIT(4) +#define WLAN_STA_AUTHORIZED BIT(5) +#define WLAN_STA_PENDING_POLL BIT(6) /* pending activity poll not ACKed */ +#define WLAN_STA_SHORT_PREAMBLE BIT(7) +#define WLAN_STA_PREAUTH BIT(8) +#define WLAN_STA_WMM BIT(9) +#define WLAN_STA_MFP BIT(10) +#define WLAN_STA_HT BIT(11) +#define WLAN_STA_WPS BIT(12) +#define WLAN_STA_MAYBE_WPS BIT(13) +#define WLAN_STA_WDS BIT(14) +#define WLAN_STA_ASSOC_REQ_OK BIT(15) +#define WLAN_STA_WPS2 BIT(16) +#define WLAN_STA_GAS BIT(17) +#define WLAN_STA_VHT BIT(18) +#define WLAN_STA_PENDING_DISASSOC_CB BIT(29) +#define WLAN_STA_PENDING_DEAUTH_CB BIT(30) +#define WLAN_STA_NONERP BIT(31) + +/* Maximum number of supported rates (from both Supported Rates and Extended + * Supported Rates IEs). */ +#define WLAN_SUPP_RATES_MAX 32 + + +struct sta_info { + struct sta_info *next; /* next entry in sta list */ + struct sta_info *hnext; /* next entry in hash table list */ + u8 addr[6]; + u16 aid; /* STA's unique AID (1 .. 2007) or 0 if not yet assigned */ + u32 flags; /* Bitfield of WLAN_STA_* */ + u16 capability; + u16 listen_interval; /* or beacon_int for APs */ + u8 supported_rates[WLAN_SUPP_RATES_MAX]; + int supported_rates_len; +// u8 qosinfo; /* Valid when WLAN_STA_WMM is set */ + +// unsigned int nonerp_set:1; +// unsigned int no_short_slot_time_set:1; +// unsigned int no_short_preamble_set:1; +// unsigned int no_ht_gf_set:1; +// unsigned int no_ht_set:1; +// unsigned int ht_20mhz_set:1; +// unsigned int no_p2p_set:1; + + u16 auth_alg; +// u8 previous_ap[6]; + + enum { + STA_NULLFUNC = 0, STA_DISASSOC, STA_DEAUTH, STA_REMOVE + } timeout_next; + +// u16 deauth_reason; +// u16 disassoc_reason; + + /* IEEE 802.1X related data */ +// struct eapol_state_machine *eapol_sm; + + /* IEEE 802.11f (IAPP) related data */ +// struct ieee80211_mgmt *last_assoc_req; + +// u32 acct_session_id_hi; +// u32 acct_session_id_lo; +// time_t acct_session_start; +// int acct_session_started; +// int acct_terminate_cause; /* Acct-Terminate-Cause */ +// int acct_interim_interval; /* Acct-Interim-Interval */ + +// unsigned long last_rx_bytes; +// unsigned long last_tx_bytes; +// u32 acct_input_gigawords; /* Acct-Input-Gigawords */ +// u32 acct_output_gigawords; /* Acct-Output-Gigawords */ + +// u8 *challenge; /* IEEE 802.11 Shared Key Authentication Challenge */ + + struct wpa_state_machine *wpa_sm; +// struct rsn_preauth_interface *preauth_iface; + + struct hostapd_ssid *ssid; /* SSID selection based on (Re)AssocReq */ +// struct hostapd_ssid *ssid_probe; /* SSID selection based on ProbeReq */ + +// int vlan_id; + /* PSKs from RADIUS authentication server */ +// struct hostapd_sta_wpa_psk_short *psk; + +// char *identity; /* User-Name from RADIUS */ +// char *radius_cui; /* Chargeable-User-Identity from RADIUS */ + +// struct ieee80211_ht_capabilities *ht_capabilities; +// struct ieee80211_vht_capabilities *vht_capabilities; + +#ifdef CONFIG_IEEE80211W + int sa_query_count; /* number of pending SA Query requests; + * 0 = no SA Query in progress */ + int sa_query_timed_out; + u8 *sa_query_trans_id; /* buffer of WLAN_SA_QUERY_TR_ID_LEN * + * sa_query_count octets of pending SA Query + * transaction identifiers */ + struct os_time sa_query_start; +#endif /* CONFIG_IEEE80211W */ + +#ifdef CONFIG_INTERWORKING +#define GAS_DIALOG_MAX 8 /* Max concurrent dialog number */ + struct gas_dialog_info *gas_dialog; + u8 gas_dialog_next; +#endif /* CONFIG_INTERWORKING */ + +// struct wpabuf *wps_ie; /* WPS IE from (Re)Association Request */ +// struct wpabuf *p2p_ie; /* P2P IE from (Re)Association Request */ +// struct wpabuf *hs20_ie; /* HS 2.0 IE from (Re)Association Request */ + +// struct os_time connected_time; + +#ifdef CONFIG_SAE + enum { SAE_INIT, SAE_COMMIT, SAE_CONFIRM } sae_state; + u16 sae_send_confirm; +#endif /* CONFIG_SAE */ +}; + + +/* Default value for maximum station inactivity. After AP_MAX_INACTIVITY has + * passed since last received frame from the station, a nullfunc data frame is + * sent to the station. If this frame is not acknowledged and no other frames + * have been received, the station will be disassociated after + * AP_DISASSOC_DELAY seconds. Similarly, the station will be deauthenticated + * after AP_DEAUTH_DELAY seconds has passed after disassociation. */ +#define AP_MAX_INACTIVITY (5 * 60) +#define AP_DISASSOC_DELAY (1) +#define AP_DEAUTH_DELAY (1) +/* Number of seconds to keep STA entry with Authenticated flag after it has + * been disassociated. */ +#define AP_MAX_INACTIVITY_AFTER_DISASSOC (1 * 30) +/* Number of seconds to keep STA entry after it has been deauthenticated. */ +#define AP_MAX_INACTIVITY_AFTER_DEAUTH (1 * 5) + + +struct hostapd_data; + +int ap_for_each_sta(struct hostapd_data *hapd, + int (*cb)(struct hostapd_data *hapd, struct sta_info *sta, + void *ctx), + void *ctx); +struct sta_info * ap_get_sta(struct hostapd_data *hapd, const u8 *sta); +void ap_sta_hash_add(struct hostapd_data *hapd, struct sta_info *sta); +void ap_free_sta(struct hostapd_data *hapd, struct sta_info *sta); +void hostapd_free_stas(struct hostapd_data *hapd); +void ap_handle_timer(void *eloop_ctx, void *timeout_ctx); +void ap_sta_session_timeout(struct hostapd_data *hapd, struct sta_info *sta, + u32 session_timeout); +void ap_sta_no_session_timeout(struct hostapd_data *hapd, + struct sta_info *sta); +struct sta_info * ap_sta_add(struct hostapd_data *hapd, const u8 *addr); +void ap_sta_disassociate(struct hostapd_data *hapd, struct sta_info *sta, + u16 reason); +void ap_sta_deauthenticate(struct hostapd_data *hapd, struct sta_info *sta, + u16 reason); +#ifdef CONFIG_WPS +int ap_sta_wps_cancel(struct hostapd_data *hapd, + struct sta_info *sta, void *ctx); +#endif /* CONFIG_WPS */ +int ap_sta_bind_vlan(struct hostapd_data *hapd, struct sta_info *sta, + int old_vlanid); +void ap_sta_start_sa_query(struct hostapd_data *hapd, struct sta_info *sta); +void ap_sta_stop_sa_query(struct hostapd_data *hapd, struct sta_info *sta); +int ap_check_sa_query_timeout(struct hostapd_data *hapd, struct sta_info *sta); +void ap_sta_disconnect(struct hostapd_data *hapd, struct sta_info *sta, + const u8 *addr, u16 reason); + +void ap_sta_set_authorized(struct hostapd_data *hapd, + struct sta_info *sta, int authorized); +static inline int ap_sta_is_authorized(struct sta_info *sta) +{ + return sta->flags & WLAN_STA_AUTHORIZED; +} + +void ap_sta_deauth_cb(struct hostapd_data *hapd, struct sta_info *sta); +void ap_sta_disassoc_cb(struct hostapd_data *hapd, struct sta_info *sta); + +#endif /* STA_INFO_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/state_machine.h b/tools/sdk/include/wpa_supplicant/wpa/state_machine.h new file mode 100644 index 00000000..ce8c51e7 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/state_machine.h @@ -0,0 +1,138 @@ +/* + * wpa_supplicant/hostapd - State machine definitions + * Copyright (c) 2002-2005, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + * + * This file includes a set of pre-processor macros that can be used to + * implement a state machine. In addition to including this header file, each + * file implementing a state machine must define STATE_MACHINE_DATA to be the + * data structure including state variables (enum machine_state, + * Boolean changed), and STATE_MACHINE_DEBUG_PREFIX to be a string that is used + * as a prefix for all debug messages. If SM_ENTRY_MA macro is used to define + * a group of state machines with shared data structure, STATE_MACHINE_ADDR + * needs to be defined to point to the MAC address used in debug output. + * SM_ENTRY_M macro can be used to define similar group of state machines + * without this additional debug info. + */ + +#ifndef STATE_MACHINE_H +#define STATE_MACHINE_H + +/** + * SM_STATE - Declaration of a state machine function + * @machine: State machine name + * @state: State machine state + * + * This macro is used to declare a state machine function. It is used in place + * of a C function definition to declare functions to be run when the state is + * entered by calling SM_ENTER or SM_ENTER_GLOBAL. + */ +#define SM_STATE(machine, state) \ +static void ICACHE_FLASH_ATTR sm_ ## machine ## _ ## state ## _Enter(STATE_MACHINE_DATA *sm, \ + int global) + +/** + * SM_ENTRY - State machine function entry point + * @machine: State machine name + * @state: State machine state + * + * This macro is used inside each state machine function declared with + * SM_STATE. SM_ENTRY should be in the beginning of the function body, but + * after declaration of possible local variables. This macro prints debug + * information about state transition and update the state machine state. + */ +#define SM_ENTRY(machine, state) \ +if (!global || sm->machine ## _state != machine ## _ ## state) { \ + sm->changed = TRUE; \ + wpa_printf(MSG_DEBUG, STATE_MACHINE_DEBUG_PREFIX ": " #machine \ + " entering state " #state); \ +} \ +sm->machine ## _state = machine ## _ ## state; + +/** + * SM_ENTRY_M - State machine function entry point for state machine group + * @machine: State machine name + * @_state: State machine state + * @data: State variable prefix (full variable: prefix_state) + * + * This macro is like SM_ENTRY, but for state machine groups that use a shared + * data structure for more than one state machine. Both machine and prefix + * parameters are set to "sub-state machine" name. prefix is used to allow more + * than one state variable to be stored in the same data structure. + */ +#define SM_ENTRY_M(machine, _state, data) \ +if (!global || sm->data ## _ ## state != machine ## _ ## _state) { \ + sm->changed = TRUE; \ + wpa_printf(MSG_DEBUG, STATE_MACHINE_DEBUG_PREFIX ": " \ + #machine " entering state " #_state); \ +} \ +sm->data ## _ ## state = machine ## _ ## _state; + +/** + * SM_ENTRY_MA - State machine function entry point for state machine group + * @machine: State machine name + * @_state: State machine state + * @data: State variable prefix (full variable: prefix_state) + * + * This macro is like SM_ENTRY_M, but a MAC address is included in debug + * output. STATE_MACHINE_ADDR has to be defined to point to the MAC address to + * be included in debug. + */ +#define SM_ENTRY_MA(machine, _state, data) \ +if (!global || sm->data ## _ ## state != machine ## _ ## _state) { \ + sm->changed = TRUE; \ + wpa_printf(MSG_DEBUG, STATE_MACHINE_DEBUG_PREFIX ": " MACSTR " " \ + #machine " entering state " #_state"\n", \ + MAC2STR(STATE_MACHINE_ADDR)); \ +} \ +sm->data ## _ ## state = machine ## _ ## _state; + +/** + * SM_ENTER - Enter a new state machine state + * @machine: State machine name + * @state: State machine state + * + * This macro expands to a function call to a state machine function defined + * with SM_STATE macro. SM_ENTER is used in a state machine step function to + * move the state machine to a new state. + */ +#define SM_ENTER(machine, state) \ +sm_ ## machine ## _ ## state ## _Enter(sm, 0) + +/** + * SM_ENTER_GLOBAL - Enter a new state machine state based on global rule + * @machine: State machine name + * @state: State machine state + * + * This macro is like SM_ENTER, but this is used when entering a new state + * based on a global (not specific to any particular state) rule. A separate + * macro is used to avoid unwanted debug message floods when the same global + * rule is forcing a state machine to remain in on state. + */ +#define SM_ENTER_GLOBAL(machine, state) \ +sm_ ## machine ## _ ## state ## _Enter(sm, 1) + +/** + * SM_STEP - Declaration of a state machine step function + * @machine: State machine name + * + * This macro is used to declare a state machine step function. It is used in + * place of a C function definition to declare a function that is used to move + * state machine to a new state based on state variables. This function uses + * SM_ENTER and SM_ENTER_GLOBAL macros to enter new state. + */ +#define SM_STEP(machine) \ +static void ICACHE_FLASH_ATTR sm_ ## machine ## _Step(STATE_MACHINE_DATA *sm) + +/** + * SM_STEP_RUN - Call the state machine step function + * @machine: State machine name + * + * This macro expands to a function call to a state machine step function + * defined with SM_STEP macro. + */ +#define SM_STEP_RUN(machine) sm_ ## machine ## _Step(sm) + +#endif /* STATE_MACHINE_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa.h b/tools/sdk/include/wpa_supplicant/wpa/wpa.h new file mode 100644 index 00000000..2a1adfc5 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa.h @@ -0,0 +1,193 @@ +/* + * wpa_supplicant - WPA definitions + * Copyright (c) 2003-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPA_H +#define WPA_H + +#include "c_types.h" +#include "os_type.h" +#include "common.h" +#include "ets_sys.h" +#include "wpa/defs.h" +#include "wpa/wpa_common.h" + +//#include "net80211/ieee80211_var.h" +//#include "net80211/ieee80211_node.h" + +#define WPA_SM_STATE(_sm) ((_sm)->wpa_state) + +struct wpa_sm; + +int wpa_sm_rx_eapol(u8 *src_addr, u8 *buf, u32 len); + +#define WPA_ASSERT ASSERT + +struct install_key { + int mic_errors_seen; /* Michael MIC errors with the current PTK */ + int keys_cleared; + enum wpa_alg alg; + u8 addr[ETH_ALEN]; + int key_idx; + int set_tx; + u8 seq[10]; + u8 key[32]; +}; + +/** + * struct wpa_sm - Internal WPA state machine data + */ +struct wpa_sm { + u8 pmk[PMK_LEN]; + size_t pmk_len; + +// char *passphrase; //wlan password +// u8 *ssid; //wlan network name +// size_t ssid_len; + + struct wpa_ptk ptk, tptk; + int ptk_set, tptk_set; + u8 snonce[WPA_NONCE_LEN]; + u8 anonce[WPA_NONCE_LEN]; /* ANonce from the last 1/4 msg */ + int renew_snonce; + u8 rx_replay_counter[WPA_REPLAY_COUNTER_LEN]; + int rx_replay_counter_set; + u8 request_counter[WPA_REPLAY_COUNTER_LEN]; + +// void *network_ctx; + + unsigned int pairwise_cipher; + unsigned int group_cipher; + unsigned int key_mgmt; + unsigned int mgmt_group_cipher; + + int rsn_enabled; /* Whether RSN is enabled in configuration */ + + int countermeasures; /*TKIP countermeasures state flag, 1:in countermeasures state*/ + os_timer_t cm_timer; + + u8 *assoc_wpa_ie; /* Own WPA/RSN IE from (Re)AssocReq */ + size_t assoc_wpa_ie_len; + + u8 eapol_version; + + int wpa_ptk_rekey; + u8 own_addr[ETH_ALEN]; + + u8 bssid[ETH_ALEN]; + + unsigned int proto; + enum wpa_states wpa_state; + + u8 *ap_wpa_ie, *ap_rsn_ie; + size_t ap_wpa_ie_len, ap_rsn_ie_len; + + struct install_key install_ptk; + struct install_key install_gtk; + int key_entry_valid; //present current avaliable entry for bssid, for pairkey:0,5,10,15,20, gtk: pairkey_no+i (i:1~4) + +// char *msg; //send eapol msg buff +// size_t msg_len; //msg length:6 + sizeof(eth) + data_len + +// struct netif *ifp; + struct pbuf *pb; + + void (* sendto) (struct pbuf *pb); + void (*config_assoc_ie) (uint8 proto, u8 *assoc_buf, u32 assoc_wpa_ie_len); + void (*install_ppkey) (enum wpa_alg alg, uint8 *addr, int key_idx, int set_tx, + uint8 *seq, size_t seq_len, uint8 *key, size_t key_len, int key_entry_valid); + void (*wpa_deauthenticate)(uint8 reason_code); + void (*wpa_neg_complete)(); + struct wpa_gtk_data gd; //used for calllback save param + uint16 key_info; //used for txcallback param +}; + +struct l2_ethhdr { + u8 h_dest[ETH_ALEN]; + u8 h_source[ETH_ALEN]; + be16 h_proto; +} STRUCT_PACKED; + +/** + * set_key - Configure encryption key + * @ifname: Interface name (for multi-SSID/VLAN support) + * @priv: private driver interface data + * @alg: encryption algorithm (%WPA_ALG_NONE, %WPA_ALG_WEP, + * %WPA_ALG_TKIP, %WPA_ALG_CCMP, %WPA_ALG_IGTK, %WPA_ALG_PMK); + * %WPA_ALG_NONE clears the key. + * @addr: address of the peer STA or ff:ff:ff:ff:ff:ff for + * broadcast/default keys + * @key_idx: key index (0..3), usually 0 for unicast keys; 0..4095 for + * IGTK + * @set_tx: configure this key as the default Tx key (only used when + * driver does not support separate unicast/individual key + * @seq: sequence number/packet number, seq_len octets, the next + * packet number to be used for in replay protection; configured + * for Rx keys (in most cases, this is only used with broadcast + * keys and set to zero for unicast keys) + * @seq_len: length of the seq, depends on the algorithm: + * TKIP: 6 octets, CCMP: 6 octets, IGTK: 6 octets + * @key: key buffer; TKIP: 16-byte temporal key, 8-byte Tx Mic key, + * 8-byte Rx Mic Key + * @key_len: length of the key buffer in octets (WEP: 5 or 13, + * TKIP: 32, CCMP: 16, IGTK: 16) + * + * Returns: 0 on success, -1 on failure + * + * Configure the given key for the kernel driver. If the driver + * supports separate individual keys (4 default keys + 1 individual), + * addr can be used to determine whether the key is default or + * individual. If only 4 keys are supported, the default key with key + * index 0 is used as the individual key. STA must be configured to use + * it as the default Tx key (set_tx is set) and accept Rx for all the + * key indexes. In most cases, WPA uses only key indexes 1 and 2 for + * broadcast keys, so key index 0 is available for this kind of + * configuration. + * + * Please note that TKIP keys include separate TX and RX MIC keys and + * some drivers may expect them in different order than wpa_supplicant + * is using. If the TX/RX keys are swapped, all TKIP encrypted packets + * will tricker Michael MIC errors. This can be fixed by changing the + * order of MIC keys by swapping te bytes 16..23 and 24..31 of the key + * in driver_*.c set_key() implementation, see driver_ndis.c for an + * example on how this can be done. + */ + + +/** + * send_eapol - Optional function for sending EAPOL packets + * @priv: private driver interface data + * @dest: Destination MAC address + * @proto: Ethertype + * @data: EAPOL packet starting with IEEE 802.1X header + * @data_len: Size of the EAPOL packet + * + * Returns: 0 on success, -1 on failure + * + * This optional function can be used to override l2_packet operations + * with driver specific functionality. If this function pointer is set, + * l2_packet module is not used at all and the driver interface code is + * responsible for receiving and sending all EAPOL packets. The + * received EAPOL packets are sent to core code with EVENT_EAPOL_RX + * event. The driver interface is required to implement get_mac_addr() + * handler if send_eapol() is used. + */ + +#define KEYENTRY_TABLE_MAP(key_entry_valid) ((key_entry_valid)%5) + +void pp_michael_mic_failure(uint16 isunicast); + +void wpa_sm_set_state(enum wpa_states state); + +#endif /* WPA_H */ + diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_auth.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth.h new file mode 100644 index 00000000..c7299234 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth.h @@ -0,0 +1,292 @@ +/* + * hostapd - IEEE 802.11i-2004 / WPA Authenticator + * Copyright (c) 2004-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef WPA_AUTH_H +#define WPA_AUTH_H + +#include "wpa/defs.h" +#include "wpa/eapol_common.h" +#include "wpa/wpa_common.h" + +#ifdef _MSC_VER +#pragma pack(push, 1) +#endif /* _MSC_VER */ + +/* IEEE Std 802.11r-2008, 11A.10.3 - Remote request/response frame definition + */ +struct ft_rrb_frame { + u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ + u8 packet_type; /* FT_PACKET_REQUEST/FT_PACKET_RESPONSE */ + le16 action_length; /* little endian length of action_frame */ + u8 ap_address[ETH_ALEN]; + /* + * Followed by action_length bytes of FT Action frame (from Category + * field to the end of Action Frame body. + */ +} STRUCT_PACKED; + +#define RSN_REMOTE_FRAME_TYPE_FT_RRB 1 + +#define FT_PACKET_REQUEST 0 +#define FT_PACKET_RESPONSE 1 +/* Vendor-specific types for R0KH-R1KH protocol; not defined in 802.11r */ +#define FT_PACKET_R0KH_R1KH_PULL 200 +#define FT_PACKET_R0KH_R1KH_RESP 201 +#define FT_PACKET_R0KH_R1KH_PUSH 202 + +#define FT_R0KH_R1KH_PULL_DATA_LEN 44 +#define FT_R0KH_R1KH_RESP_DATA_LEN 76 +#define FT_R0KH_R1KH_PUSH_DATA_LEN 88 + +struct ft_r0kh_r1kh_pull_frame { + u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ + u8 packet_type; /* FT_PACKET_R0KH_R1KH_PULL */ + le16 data_length; /* little endian length of data (44) */ + u8 ap_address[ETH_ALEN]; + + u8 nonce[16]; + u8 pmk_r0_name[WPA_PMK_NAME_LEN]; + u8 r1kh_id[FT_R1KH_ID_LEN]; + u8 s1kh_id[ETH_ALEN]; + u8 pad[4]; /* 8-octet boundary for AES key wrap */ + u8 key_wrap_extra[8]; +} STRUCT_PACKED; + +struct ft_r0kh_r1kh_resp_frame { + u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ + u8 packet_type; /* FT_PACKET_R0KH_R1KH_RESP */ + le16 data_length; /* little endian length of data (76) */ + u8 ap_address[ETH_ALEN]; + + u8 nonce[16]; /* copied from pull */ + u8 r1kh_id[FT_R1KH_ID_LEN]; /* copied from pull */ + u8 s1kh_id[ETH_ALEN]; /* copied from pull */ + u8 pmk_r1[PMK_LEN]; + u8 pmk_r1_name[WPA_PMK_NAME_LEN]; + le16 pairwise; + u8 pad[2]; /* 8-octet boundary for AES key wrap */ + u8 key_wrap_extra[8]; +} STRUCT_PACKED; + +struct ft_r0kh_r1kh_push_frame { + u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ + u8 packet_type; /* FT_PACKET_R0KH_R1KH_PUSH */ + le16 data_length; /* little endian length of data (88) */ + u8 ap_address[ETH_ALEN]; + + /* Encrypted with AES key-wrap */ + u8 timestamp[4]; /* current time in seconds since unix epoch, little + * endian */ + u8 r1kh_id[FT_R1KH_ID_LEN]; + u8 s1kh_id[ETH_ALEN]; + u8 pmk_r0_name[WPA_PMK_NAME_LEN]; + u8 pmk_r1[PMK_LEN]; + u8 pmk_r1_name[WPA_PMK_NAME_LEN]; + le16 pairwise; + u8 pad[6]; /* 8-octet boundary for AES key wrap */ + u8 key_wrap_extra[8]; +} STRUCT_PACKED; + +#ifdef _MSC_VER +#pragma pack(pop) +#endif /* _MSC_VER */ + + +/* per STA state machine data */ + +struct wpa_authenticator; +struct wpa_state_machine; +struct rsn_pmksa_cache_entry; +struct eapol_state_machine; + + +struct ft_remote_r0kh { + struct ft_remote_r0kh *next; + u8 addr[ETH_ALEN]; + u8 id[FT_R0KH_ID_MAX_LEN]; + size_t id_len; + u8 key[16]; +}; + + +struct ft_remote_r1kh { + struct ft_remote_r1kh *next; + u8 addr[ETH_ALEN]; + u8 id[FT_R1KH_ID_LEN]; + u8 key[16]; +}; + + +struct wpa_auth_config { + int wpa; + int wpa_key_mgmt; + int wpa_pairwise; + int wpa_group; + int wpa_group_rekey; + int wpa_strict_rekey; + int wpa_gmk_rekey; + int wpa_ptk_rekey; + int rsn_pairwise; + int rsn_preauth; + int eapol_version; + int peerkey; + int wmm_enabled; + int wmm_uapsd; + int disable_pmksa_caching; + int okc; + int tx_status; +#ifdef CONFIG_IEEE80211W + enum mfp_options ieee80211w; +#endif /* CONFIG_IEEE80211W */ +#ifdef CONFIG_IEEE80211R +#define SSID_LEN 32 + u8 ssid[SSID_LEN]; + size_t ssid_len; + u8 mobility_domain[MOBILITY_DOMAIN_ID_LEN]; + u8 r0_key_holder[FT_R0KH_ID_MAX_LEN]; + size_t r0_key_holder_len; + u8 r1_key_holder[FT_R1KH_ID_LEN]; + u32 r0_key_lifetime; + u32 reassociation_deadline; + struct ft_remote_r0kh *r0kh_list; + struct ft_remote_r1kh *r1kh_list; + int pmk_r1_push; + int ft_over_ds; +#endif /* CONFIG_IEEE80211R */ + int disable_gtk; + int ap_mlme; +}; + +typedef enum { + LOGGER_DEBUG, LOGGER_INFO, LOGGER_WARNING +} logger_level; + +typedef enum { + WPA_EAPOL_portEnabled, WPA_EAPOL_portValid, WPA_EAPOL_authorized, + WPA_EAPOL_portControl_Auto, WPA_EAPOL_keyRun, WPA_EAPOL_keyAvailable, + WPA_EAPOL_keyDone, WPA_EAPOL_inc_EapolFramesTx +} wpa_eapol_variable; + +struct wpa_auth_callbacks { + void *ctx; + void (*logger)(void *ctx, const u8 *addr, logger_level level, + const char *txt); + void (*disconnect)(void *ctx, const u8 *addr, u16 reason); + int (*mic_failure_report)(void *ctx, const u8 *addr); + void (*set_eapol)(void *ctx, const u8 *addr, wpa_eapol_variable var, + int value); + int (*get_eapol)(void *ctx, const u8 *addr, wpa_eapol_variable var); + const u8 * (*get_psk)(void *ctx, const u8 *addr, const u8 *prev_psk); + int (*get_msk)(void *ctx, const u8 *addr, u8 *msk, size_t *len); + int (*set_key)(void *ctx, int vlan_id, enum wpa_alg alg, + const u8 *addr, int idx, u8 *key, size_t key_len); + int (*get_seqnum)(void *ctx, const u8 *addr, int idx, u8 *seq); + int (*send_eapol)(void *ctx, const u8 *addr, const u8 *data, + size_t data_len, int encrypt); + int (*for_each_sta)(void *ctx, int (*cb)(struct wpa_state_machine *sm, + void *ctx), void *cb_ctx); + int (*for_each_auth)(void *ctx, int (*cb)(struct wpa_authenticator *a, + void *ctx), void *cb_ctx); + int (*send_ether)(void *ctx, const u8 *dst, u16 proto, const u8 *data, + size_t data_len); +#ifdef CONFIG_IEEE80211R + struct wpa_state_machine * (*add_sta)(void *ctx, const u8 *sta_addr); + int (*send_ft_action)(void *ctx, const u8 *dst, + const u8 *data, size_t data_len); + int (*add_tspec)(void *ctx, const u8 *sta_addr, u8 *tspec_ie, + size_t tspec_ielen); +#endif /* CONFIG_IEEE80211R */ +}; + +struct wpa_authenticator * wpa_init(const u8 *addr, + struct wpa_auth_config *conf, + struct wpa_auth_callbacks *cb); +int wpa_init_keys(struct wpa_authenticator *wpa_auth); +void wpa_deinit(struct wpa_authenticator *wpa_auth); +int wpa_reconfig(struct wpa_authenticator *wpa_auth, + struct wpa_auth_config *conf); + +enum { + WPA_IE_OK, WPA_INVALID_IE, WPA_INVALID_GROUP, WPA_INVALID_PAIRWISE, + WPA_INVALID_AKMP, WPA_NOT_ENABLED, WPA_ALLOC_FAIL, + WPA_MGMT_FRAME_PROTECTION_VIOLATION, WPA_INVALID_MGMT_GROUP_CIPHER, + WPA_INVALID_MDIE, WPA_INVALID_PROTO +}; + +int wpa_validate_wpa_ie(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, + const u8 *wpa_ie, size_t wpa_ie_len/*, + const u8 *mdie, size_t mdie_len*/); +int wpa_auth_uses_mfp(struct wpa_state_machine *sm); +struct wpa_state_machine * +wpa_auth_sta_init(struct wpa_authenticator *wpa_auth, const u8 *addr); +int wpa_auth_sta_associated(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm); +void wpa_auth_sta_no_wpa(struct wpa_state_machine *sm); +void wpa_auth_sta_deinit(struct wpa_state_machine *sm); +void wpa_receive(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, + u8 *data, size_t data_len); +typedef enum { + WPA_AUTH, WPA_ASSOC, WPA_DISASSOC, WPA_DEAUTH, WPA_REAUTH, + WPA_REAUTH_EAPOL, WPA_ASSOC_FT +} wpa_event; +void wpa_remove_ptk(struct wpa_state_machine *sm); +int wpa_auth_sm_event(struct wpa_state_machine *sm, wpa_event event); +void wpa_auth_sm_notify(struct wpa_state_machine *sm); +void wpa_gtk_rekey(struct wpa_authenticator *wpa_auth); +int wpa_get_mib(struct wpa_authenticator *wpa_auth, char *buf, size_t buflen); +int wpa_get_mib_sta(struct wpa_state_machine *sm, char *buf, size_t buflen); +void wpa_auth_countermeasures_start(struct wpa_authenticator *wpa_auth); +int wpa_auth_pairwise_set(struct wpa_state_machine *sm); +int wpa_auth_get_pairwise(struct wpa_state_machine *sm); +int wpa_auth_sta_key_mgmt(struct wpa_state_machine *sm); +int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm); +int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm, + struct rsn_pmksa_cache_entry *entry); +struct rsn_pmksa_cache_entry * +wpa_auth_sta_get_pmksa(struct wpa_state_machine *sm); +void wpa_auth_sta_local_mic_failure_report(struct wpa_state_machine *sm); +const u8 * wpa_auth_get_wpa_ie(struct wpa_authenticator *wpa_auth, + size_t *len); +int wpa_auth_pmksa_add(struct wpa_state_machine *sm, const u8 *pmk, + int session_timeout, struct eapol_state_machine *eapol); +int wpa_auth_pmksa_add_preauth(struct wpa_authenticator *wpa_auth, + const u8 *pmk, size_t len, const u8 *sta_addr, + int session_timeout, + struct eapol_state_machine *eapol); +int wpa_auth_sta_set_vlan(struct wpa_state_machine *sm, int vlan_id); +void wpa_auth_eapol_key_tx_status(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, int ack); + +#ifdef CONFIG_IEEE80211R +u8 * wpa_sm_write_assoc_resp_ies(struct wpa_state_machine *sm, u8 *pos, + size_t max_len, int auth_alg, + const u8 *req_ies, size_t req_ies_len); +void wpa_ft_process_auth(struct wpa_state_machine *sm, const u8 *bssid, + u16 auth_transaction, const u8 *ies, size_t ies_len, + void (*cb)(void *ctx, const u8 *dst, const u8 *bssid, + u16 auth_transaction, u16 resp, + const u8 *ies, size_t ies_len), + void *ctx); +u16 wpa_ft_validate_reassoc(struct wpa_state_machine *sm, const u8 *ies, + size_t ies_len); +int wpa_ft_action_rx(struct wpa_state_machine *sm, const u8 *data, size_t len); +int wpa_ft_rrb_rx(struct wpa_authenticator *wpa_auth, const u8 *src_addr, + const u8 *data, size_t data_len); +void wpa_ft_push_pmk_r1(struct wpa_authenticator *wpa_auth, const u8 *addr); +#endif /* CONFIG_IEEE80211R */ + +void wpa_wnmsleep_rekey_gtk(struct wpa_state_machine *sm); +void wpa_set_wnmsleep(struct wpa_state_machine *sm, int flag); +int wpa_wnmsleep_gtk_subelem(struct wpa_state_machine *sm, u8 *pos); +int wpa_wnmsleep_igtk_subelem(struct wpa_state_machine *sm, u8 *pos); + +int wpa_auth_uses_sae(struct wpa_state_machine *sm); + +#endif /* WPA_AUTH_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_i.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_i.h new file mode 100644 index 00000000..53ad8ea9 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_i.h @@ -0,0 +1,234 @@ +/* + * hostapd - IEEE 802.11i-2004 / WPA Authenticator: Internal definitions + * Copyright (c) 2004-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef WPA_AUTH_I_H +#define WPA_AUTH_I_H + +/* max(dot11RSNAConfigGroupUpdateCount,dot11RSNAConfigPairwiseUpdateCount) */ +#define RSNA_MAX_EAPOL_RETRIES 4 + +struct wpa_group; + +struct wpa_stsl_negotiation { + struct wpa_stsl_negotiation *next; + u8 initiator[ETH_ALEN]; + u8 peer[ETH_ALEN]; +}; + + +struct wpa_state_machine { + struct wpa_authenticator *wpa_auth; + struct wpa_group *group; + + u8 addr[ETH_ALEN]; + + enum { + WPA_PTK_INITIALIZE, WPA_PTK_DISCONNECT, WPA_PTK_DISCONNECTED, + WPA_PTK_AUTHENTICATION, WPA_PTK_AUTHENTICATION2, + WPA_PTK_INITPMK, WPA_PTK_INITPSK, WPA_PTK_PTKSTART, + WPA_PTK_PTKCALCNEGOTIATING, WPA_PTK_PTKCALCNEGOTIATING2, + WPA_PTK_PTKINITNEGOTIATING, WPA_PTK_PTKINITDONE + } wpa_ptk_state; + + enum { + WPA_PTK_GROUP_IDLE = 0, + WPA_PTK_GROUP_REKEYNEGOTIATING, + WPA_PTK_GROUP_REKEYESTABLISHED, + WPA_PTK_GROUP_KEYERROR + } wpa_ptk_group_state; + + Boolean Init; + Boolean DeauthenticationRequest; + Boolean AuthenticationRequest; + Boolean ReAuthenticationRequest; + Boolean Disconnect; + int TimeoutCtr; + int GTimeoutCtr; + Boolean TimeoutEvt; + Boolean EAPOLKeyReceived; + Boolean EAPOLKeyPairwise; + Boolean EAPOLKeyRequest; + Boolean MICVerified; + Boolean GUpdateStationKeys; + u8 ANonce[WPA_NONCE_LEN]; + u8 SNonce[WPA_NONCE_LEN]; + u8 PMK[PMK_LEN]; + struct wpa_ptk PTK; + Boolean PTK_valid; + Boolean pairwise_set; + int keycount; + Boolean Pair; + struct wpa_key_replay_counter { + u8 counter[WPA_REPLAY_COUNTER_LEN]; + Boolean valid; + } key_replay[RSNA_MAX_EAPOL_RETRIES], + prev_key_replay[RSNA_MAX_EAPOL_RETRIES]; + Boolean PInitAKeys; /* WPA only, not in IEEE 802.11i */ + Boolean PTKRequest; /* not in IEEE 802.11i state machine */ + Boolean has_GTK; + Boolean PtkGroupInit; /* init request for PTK Group state machine */ + + u8 *last_rx_eapol_key; /* starting from IEEE 802.1X header */ + size_t last_rx_eapol_key_len; + + unsigned int changed:1; + unsigned int in_step_loop:1; + unsigned int pending_deinit:1; + unsigned int started:1; + unsigned int mgmt_frame_prot:1; + unsigned int rx_eapol_key_secure:1; + unsigned int update_snonce:1; +#ifdef CONFIG_IEEE80211R + unsigned int ft_completed:1; + unsigned int pmk_r1_name_valid:1; +#endif /* CONFIG_IEEE80211R */ + unsigned int is_wnmsleep:1; + + u8 req_replay_counter[WPA_REPLAY_COUNTER_LEN]; + int req_replay_counter_used; + + u8 *wpa_ie; + size_t wpa_ie_len; + + enum { + WPA_VERSION_NO_WPA = 0 /* WPA not used */, + WPA_VERSION_WPA = 1 /* WPA / IEEE 802.11i/D3.0 */, + WPA_VERSION_WPA2 = 2 /* WPA2 / IEEE 802.11i */ + } wpa; + int pairwise; /* Pairwise cipher suite, WPA_CIPHER_* */ + int wpa_key_mgmt; /* the selected WPA_KEY_MGMT_* */ +// struct rsn_pmksa_cache_entry *pmksa; + +// u32 dot11RSNAStatsTKIPLocalMICFailures; +// u32 dot11RSNAStatsTKIPRemoteMICFailures; + +#ifdef CONFIG_IEEE80211R + u8 xxkey[PMK_LEN]; /* PSK or the second 256 bits of MSK */ + size_t xxkey_len; + u8 pmk_r1_name[WPA_PMK_NAME_LEN]; /* PMKR1Name derived from FT Auth + * Request */ + u8 r0kh_id[FT_R0KH_ID_MAX_LEN]; /* R0KH-ID from FT Auth Request */ + size_t r0kh_id_len; + u8 sup_pmk_r1_name[WPA_PMK_NAME_LEN]; /* PMKR1Name from EAPOL-Key + * message 2/4 */ + u8 *assoc_resp_ftie; +#endif /* CONFIG_IEEE80211R */ + + int pending_1_of_4_timeout; +}; + + +/* per group key state machine data */ +struct wpa_group { + struct wpa_group *next; + int vlan_id; + + Boolean GInit; + int GKeyDoneStations; + Boolean GTKReKey; + int GTK_len; + int GN, GM; + Boolean GTKAuthenticator; + u8 Counter[WPA_NONCE_LEN]; + + enum { + WPA_GROUP_GTK_INIT = 0, + WPA_GROUP_SETKEYS, WPA_GROUP_SETKEYSDONE + } wpa_group_state; + + u8 GMK[WPA_GMK_LEN]; + u8 GTK[2][WPA_GTK_MAX_LEN]; + u8 GNonce[WPA_NONCE_LEN]; + Boolean changed; + Boolean first_sta_seen; + Boolean reject_4way_hs_for_entropy; +#ifdef CONFIG_IEEE80211W + u8 IGTK[2][WPA_IGTK_LEN]; + int GN_igtk, GM_igtk; +#endif /* CONFIG_IEEE80211W */ +}; + + +struct wpa_ft_pmk_cache; + +/* per authenticator data */ +struct wpa_authenticator { + struct wpa_group *group; + +// unsigned int dot11RSNAStatsTKIPRemoteMICFailures; +// u32 dot11RSNAAuthenticationSuiteSelected; +// u32 dot11RSNAPairwiseCipherSelected; +// u32 dot11RSNAGroupCipherSelected; +// u8 dot11RSNAPMKIDUsed[PMKID_LEN]; +// u32 dot11RSNAAuthenticationSuiteRequested; /* FIX: update */ +// u32 dot11RSNAPairwiseCipherRequested; /* FIX: update */ +// u32 dot11RSNAGroupCipherRequested; /* FIX: update */ +// unsigned int dot11RSNATKIPCounterMeasuresInvoked; +// unsigned int dot11RSNA4WayHandshakeFailures; + +// struct wpa_stsl_negotiation *stsl_negotiations; + + struct wpa_auth_config conf; +// struct wpa_auth_callbacks cb; + + u8 *wpa_ie; + size_t wpa_ie_len; + + u8 addr[ETH_ALEN]; + +// struct rsn_pmksa_cache *pmksa; +// struct wpa_ft_pmk_cache *ft_pmk_cache; +}; + + +int wpa_write_rsn_ie(struct wpa_auth_config *conf, u8 *buf, size_t len, + const u8 *pmkid); +#if 0 +void wpa_auth_logger(struct wpa_authenticator *wpa_auth, const u8 *addr, + logger_level level, const char *txt); +void wpa_auth_vlogger(struct wpa_authenticator *wpa_auth, const u8 *addr, + logger_level level, const char *fmt, ...); +#endif +void __wpa_send_eapol(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, int key_info, + const u8 *key_rsc, const u8 *nonce, + const u8 *kde, size_t kde_len, + int keyidx, int encr, int force_version); +int wpa_auth_for_each_sta(struct wpa_authenticator *wpa_auth, + int (*cb)(struct wpa_state_machine *sm, void *ctx), + void *cb_ctx); +int wpa_auth_for_each_auth(struct wpa_authenticator *wpa_auth, + int (*cb)(struct wpa_authenticator *a, void *ctx), + void *cb_ctx); + +#ifdef CONFIG_PEERKEY +int wpa_stsl_remove(struct wpa_authenticator *wpa_auth, + struct wpa_stsl_negotiation *neg); +void wpa_smk_error(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, struct wpa_eapol_key *key); +void wpa_smk_m1(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, struct wpa_eapol_key *key); +void wpa_smk_m3(struct wpa_authenticator *wpa_auth, + struct wpa_state_machine *sm, struct wpa_eapol_key *key); +#endif /* CONFIG_PEERKEY */ + +#ifdef CONFIG_IEEE80211R +int wpa_write_mdie(struct wpa_auth_config *conf, u8 *buf, size_t len); +int wpa_write_ftie(struct wpa_auth_config *conf, const u8 *r0kh_id, + size_t r0kh_id_len, + const u8 *anonce, const u8 *snonce, + u8 *buf, size_t len, const u8 *subelem, + size_t subelem_len); +int wpa_auth_derive_ptk_ft(struct wpa_state_machine *sm, const u8 *pmk, + struct wpa_ptk *ptk, size_t ptk_len); +struct wpa_ft_pmk_cache * wpa_ft_pmk_cache_init(void); +void wpa_ft_pmk_cache_deinit(struct wpa_ft_pmk_cache *cache); +void wpa_ft_install_ptk(struct wpa_state_machine *sm); +#endif /* CONFIG_IEEE80211R */ + +#endif /* WPA_AUTH_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_ie.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_ie.h new file mode 100644 index 00000000..49991395 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_auth_ie.h @@ -0,0 +1,50 @@ +/* + * hostapd - WPA/RSN IE and KDE definitions + * Copyright (c) 2004-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef WPA_AUTH_IE_H +#define WPA_AUTH_IE_H + +struct wpa_eapol_ie_parse { + const u8 *wpa_ie; + size_t wpa_ie_len; + const u8 *rsn_ie; + size_t rsn_ie_len; + const u8 *pmkid; + const u8 *gtk; + size_t gtk_len; + const u8 *mac_addr; + size_t mac_addr_len; +#ifdef CONFIG_PEERKEY + const u8 *smk; + size_t smk_len; + const u8 *nonce; + size_t nonce_len; + const u8 *lifetime; + size_t lifetime_len; + const u8 *error; + size_t error_len; +#endif /* CONFIG_PEERKEY */ +#ifdef CONFIG_IEEE80211W + const u8 *igtk; + size_t igtk_len; +#endif /* CONFIG_IEEE80211W */ +#ifdef CONFIG_IEEE80211R + const u8 *mdie; + size_t mdie_len; + const u8 *ftie; + size_t ftie_len; +#endif /* CONFIG_IEEE80211R */ +}; + +int wpa_parse_kde_ies(const u8 *buf, size_t len, + struct wpa_eapol_ie_parse *ie); +u8 * wpa_add_kde(u8 *pos, u32 kde, const u8 *data, size_t data_len, + const u8 *data2, size_t data2_len); +int wpa_auth_gen_wpa_ie(struct wpa_authenticator *wpa_auth); + +#endif /* WPA_AUTH_IE_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_common.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_common.h new file mode 100644 index 00000000..480cf0e2 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_common.h @@ -0,0 +1,332 @@ +/* + * WPA definitions shared between hostapd and wpa_supplicant + * Copyright (c) 2002-2008, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#include "os.h" +#ifndef WPA_COMMON_H +#define WPA_COMMON_H + +#define WPA_MAX_SSID_LEN 32 + +/* IEEE 802.11i */ +#define PMKID_LEN 16 +#define PMK_LEN 32 +#define WPA_REPLAY_COUNTER_LEN 8 +#define WPA_NONCE_LEN 32 +#define WPA_KEY_RSC_LEN 8 +#define WPA_GMK_LEN 32 +#define WPA_GTK_MAX_LEN 32 + +#define WPA_SELECTOR_LEN 4 +#define WPA_VERSION 1 +#define RSN_SELECTOR_LEN 4 +#define RSN_VERSION 1 + +#define RSN_SELECTOR(a, b, c, d) \ + ((((u32) (a)) << 24) | (((u32) (b)) << 16) | (((u32) (c)) << 8) | \ + (u32) (d)) + +#define WPA_AUTH_KEY_MGMT_NONE RSN_SELECTOR(0x00, 0x50, 0xf2, 0) +#define WPA_AUTH_KEY_MGMT_UNSPEC_802_1X RSN_SELECTOR(0x00, 0x50, 0xf2, 1) +#define WPA_AUTH_KEY_MGMT_PSK_OVER_802_1X RSN_SELECTOR(0x00, 0x50, 0xf2, 2) +#define WPA_CIPHER_SUITE_NONE RSN_SELECTOR(0x00, 0x50, 0xf2, 0) +#define WPA_CIPHER_SUITE_WEP40 RSN_SELECTOR(0x00, 0x50, 0xf2, 1) +#define WPA_CIPHER_SUITE_TKIP RSN_SELECTOR(0x00, 0x50, 0xf2, 2) +#if 0 +#define WPA_CIPHER_SUITE_WRAP RSN_SELECTOR(0x00, 0x50, 0xf2, 3) +#endif +#define WPA_CIPHER_SUITE_CCMP RSN_SELECTOR(0x00, 0x50, 0xf2, 4) +#define WPA_CIPHER_SUITE_WEP104 RSN_SELECTOR(0x00, 0x50, 0xf2, 5) + + +#define RSN_AUTH_KEY_MGMT_UNSPEC_802_1X RSN_SELECTOR(0x00, 0x0f, 0xac, 1) +#define RSN_AUTH_KEY_MGMT_PSK_OVER_802_1X RSN_SELECTOR(0x00, 0x0f, 0xac, 2) +#ifdef CONFIG_IEEE80211R +#define RSN_AUTH_KEY_MGMT_FT_802_1X RSN_SELECTOR(0x00, 0x0f, 0xac, 3) +#define RSN_AUTH_KEY_MGMT_FT_PSK RSN_SELECTOR(0x00, 0x0f, 0xac, 4) +#endif /* CONFIG_IEEE80211R */ +#define RSN_AUTH_KEY_MGMT_802_1X_SHA256 RSN_SELECTOR(0x00, 0x0f, 0xac, 5) +#define RSN_AUTH_KEY_MGMT_PSK_SHA256 RSN_SELECTOR(0x00, 0x0f, 0xac, 6) + +#define RSN_CIPHER_SUITE_NONE RSN_SELECTOR(0x00, 0x0f, 0xac, 0) +#define RSN_CIPHER_SUITE_WEP40 RSN_SELECTOR(0x00, 0x0f, 0xac, 1) +#define RSN_CIPHER_SUITE_TKIP RSN_SELECTOR(0x00, 0x0f, 0xac, 2) +#if 0 +#define RSN_CIPHER_SUITE_WRAP RSN_SELECTOR(0x00, 0x0f, 0xac, 3) +#endif +#define RSN_CIPHER_SUITE_CCMP RSN_SELECTOR(0x00, 0x0f, 0xac, 4) +#define RSN_CIPHER_SUITE_WEP104 RSN_SELECTOR(0x00, 0x0f, 0xac, 5) +#ifdef CONFIG_IEEE80211W +#define RSN_CIPHER_SUITE_AES_128_CMAC RSN_SELECTOR(0x00, 0x0f, 0xac, 6) +#endif /* CONFIG_IEEE80211W */ +#define RSN_CIPHER_SUITE_NO_GROUP_ADDRESSED RSN_SELECTOR(0x00, 0x0f, 0xac, 7) +#define RSN_CIPHER_SUITE_GCMP RSN_SELECTOR(0x00, 0x0f, 0xac, 8) + +/* EAPOL-Key Key Data Encapsulation + * GroupKey and PeerKey require encryption, otherwise, encryption is optional. + */ +#define RSN_KEY_DATA_GROUPKEY RSN_SELECTOR(0x00, 0x0f, 0xac, 1) +#if 0 +#define RSN_KEY_DATA_STAKEY RSN_SELECTOR(0x00, 0x0f, 0xac, 2) +#endif +#define RSN_KEY_DATA_MAC_ADDR RSN_SELECTOR(0x00, 0x0f, 0xac, 3) +#define RSN_KEY_DATA_PMKID RSN_SELECTOR(0x00, 0x0f, 0xac, 4) +#ifdef CONFIG_PEERKEY +#define RSN_KEY_DATA_SMK RSN_SELECTOR(0x00, 0x0f, 0xac, 5) +#define RSN_KEY_DATA_NONCE RSN_SELECTOR(0x00, 0x0f, 0xac, 6) +#define RSN_KEY_DATA_LIFETIME RSN_SELECTOR(0x00, 0x0f, 0xac, 7) +#define RSN_KEY_DATA_ERROR RSN_SELECTOR(0x00, 0x0f, 0xac, 8) +#endif /* CONFIG_PEERKEY */ +#ifdef CONFIG_IEEE80211W +#define RSN_KEY_DATA_IGTK RSN_SELECTOR(0x00, 0x0f, 0xac, 9) +#endif /* CONFIG_IEEE80211W */ + +#define WPA_OUI_TYPE RSN_SELECTOR(0x00, 0x50, 0xf2, 1) + +#define RSN_SELECTOR_PUT(a, val) WPA_PUT_BE32((u8 *) (a), (val)) +#define RSN_SELECTOR_GET(a) WPA_GET_BE32((const u8 *) (a)) + +#define RSN_NUM_REPLAY_COUNTERS_1 0 +#define RSN_NUM_REPLAY_COUNTERS_2 1 +#define RSN_NUM_REPLAY_COUNTERS_4 2 +#define RSN_NUM_REPLAY_COUNTERS_16 3 + +#ifdef _MSC_VER +#pragma pack(push, 1) +#endif /* _MSC_VER */ + +#ifdef CONFIG_IEEE80211W +#define WPA_IGTK_LEN 16 +#endif /* CONFIG_IEEE80211W */ + + +/* IEEE 802.11, 7.3.2.25.3 RSN Capabilities */ +#define WPA_CAPABILITY_PREAUTH BIT(0) +#define WPA_CAPABILITY_NO_PAIRWISE BIT(1) +/* B2-B3: PTKSA Replay Counter */ +/* B4-B5: GTKSA Replay Counter */ +#define WPA_CAPABILITY_MFPR BIT(6) +#define WPA_CAPABILITY_MFPC BIT(7) +#define WPA_CAPABILITY_PEERKEY_ENABLED BIT(9) + + +/* IEEE 802.11r */ +#define MOBILITY_DOMAIN_ID_LEN 2 +#define FT_R0KH_ID_MAX_LEN 48 +#define FT_R1KH_ID_LEN 6 +#define WPA_PMK_NAME_LEN 16 + + +/* IEEE 802.11, 8.5.2 EAPOL-Key frames */ +#define WPA_KEY_INFO_TYPE_MASK ((u16) (BIT(0) | BIT(1) | BIT(2))) +#define WPA_KEY_INFO_TYPE_HMAC_MD5_RC4 BIT(0) +#define WPA_KEY_INFO_TYPE_HMAC_SHA1_AES BIT(1) +#define WPA_KEY_INFO_TYPE_AES_128_CMAC 3 +#define WPA_KEY_INFO_KEY_TYPE BIT(3) /* 1 = Pairwise, 0 = Group key */ +/* bit4..5 is used in WPA, but is reserved in IEEE 802.11i/RSN */ +#define WPA_KEY_INFO_KEY_INDEX_MASK (BIT(4) | BIT(5)) +#define WPA_KEY_INFO_KEY_INDEX_SHIFT 4 +#define WPA_KEY_INFO_INSTALL BIT(6) /* pairwise */ +#define WPA_KEY_INFO_TXRX BIT(6) /* group */ +#define WPA_KEY_INFO_ACK BIT(7) +#define WPA_KEY_INFO_MIC BIT(8) +#define WPA_KEY_INFO_SECURE BIT(9) +#define WPA_KEY_INFO_ERROR BIT(10) +#define WPA_KEY_INFO_REQUEST BIT(11) +#define WPA_KEY_INFO_ENCR_KEY_DATA BIT(12) /* IEEE 802.11i/RSN only */ +#define WPA_KEY_INFO_SMK_MESSAGE BIT(13) + + +struct wpa_eapol_key { + u8 type; + /* Note: key_info, key_length, and key_data_length are unaligned */ + u8 key_info[2]; /* big endian */ + u8 key_length[2]; /* big endian */ + u8 replay_counter[WPA_REPLAY_COUNTER_LEN]; + u8 key_nonce[WPA_NONCE_LEN]; + u8 key_iv[16]; + u8 key_rsc[WPA_KEY_RSC_LEN]; + u8 key_id[8]; /* Reserved in IEEE 802.11i/RSN */ + u8 key_mic[16]; + u8 key_data_length[2]; /* big endian */ + /* followed by key_data_length bytes of key_data */ +} STRUCT_PACKED; + +/** + * struct wpa_ptk - WPA Pairwise Transient Key + * IEEE Std 802.11i-2004 - 8.5.1.2 Pairwise key hierarchy + */ +struct wpa_ptk { + u8 kck[16]; /* EAPOL-Key Key Confirmation Key (KCK) */ + u8 kek[16]; /* EAPOL-Key Key Encryption Key (KEK) */ + u8 tk1[16]; /* Temporal Key 1 (TK1) */ + union { + u8 tk2[16]; /* Temporal Key 2 (TK2) */ + struct { + u8 tx_mic_key[8]; + u8 rx_mic_key[8]; + } auth; + } u; +} STRUCT_PACKED; + +struct wpa_gtk_data { + enum wpa_alg alg; + int tx, key_rsc_len, keyidx; + u8 gtk[32]; + int gtk_len; +}; + + +/* WPA IE version 1 + * 00-50-f2:1 (OUI:OUI type) + * 0x01 0x00 (version; little endian) + * (all following fields are optional:) + * Group Suite Selector (4 octets) (default: TKIP) + * Pairwise Suite Count (2 octets, little endian) (default: 1) + * Pairwise Suite List (4 * n octets) (default: TKIP) + * Authenticated Key Management Suite Count (2 octets, little endian) + * (default: 1) + * Authenticated Key Management Suite List (4 * n octets) + * (default: unspec 802.1X) + * WPA Capabilities (2 octets, little endian) (default: 0) + */ + +struct wpa_ie_hdr { + u8 elem_id; + u8 len; + u8 oui[4]; /* 24-bit OUI followed by 8-bit OUI type */ + u8 version[2]; /* little endian */ +} STRUCT_PACKED; + + +/* 1/4: PMKID + * 2/4: RSN IE + * 3/4: one or two RSN IEs + GTK IE (encrypted) + * 4/4: empty + * 1/2: GTK IE (encrypted) + * 2/2: empty + */ + +/* RSN IE version 1 + * 0x01 0x00 (version; little endian) + * (all following fields are optional:) + * Group Suite Selector (4 octets) (default: CCMP) + * Pairwise Suite Count (2 octets, little endian) (default: 1) + * Pairwise Suite List (4 * n octets) (default: CCMP) + * Authenticated Key Management Suite Count (2 octets, little endian) + * (default: 1) + * Authenticated Key Management Suite List (4 * n octets) + * (default: unspec 802.1X) + * RSN Capabilities (2 octets, little endian) (default: 0) + * PMKID Count (2 octets) (default: 0) + * PMKID List (16 * n octets) + * Management Group Cipher Suite (4 octets) (default: AES-128-CMAC) + */ + +struct rsn_ie_hdr { + u8 elem_id; /* WLAN_EID_RSN */ + u8 len; + u8 version[2]; /* little endian */ +} STRUCT_PACKED; + + +#ifdef CONFIG_PEERKEY +enum { + STK_MUI_4WAY_STA_AP = 1, + STK_MUI_4WAY_STAT_STA = 2, + STK_MUI_GTK = 3, + STK_MUI_SMK = 4 +}; + +enum { + STK_ERR_STA_NR = 1, + STK_ERR_STA_NRSN = 2, + STK_ERR_CPHR_NS = 3, + STK_ERR_NO_STSL = 4 +}; +#endif /* CONFIG_PEERKEY */ + +struct rsn_error_kde { + be16 mui; + be16 error_type; +} STRUCT_PACKED; + +#ifdef CONFIG_IEEE80211W +struct wpa_igtk_kde { + u8 keyid[2]; + u8 pn[6]; + u8 igtk[WPA_IGTK_LEN]; +} STRUCT_PACKED; +#endif /* CONFIG_IEEE80211W */ + +#ifdef CONFIG_IEEE80211R +struct rsn_mdie { + u8 mobility_domain[MOBILITY_DOMAIN_ID_LEN]; + u8 ft_capab; +} STRUCT_PACKED; + +#define RSN_FT_CAPAB_FT_OVER_DS BIT(0) +#define RSN_FT_CAPAB_FT_RESOURCE_REQ_SUPP BIT(1) + +struct rsn_ftie { + u8 mic_control[2]; + u8 mic[16]; + u8 anonce[WPA_NONCE_LEN]; + u8 snonce[WPA_NONCE_LEN]; + /* followed by optional parameters */ +} STRUCT_PACKED; + +#define FTIE_SUBELEM_R1KH_ID 1 +#define FTIE_SUBELEM_GTK 2 +#define FTIE_SUBELEM_R0KH_ID 3 +#define FTIE_SUBELEM_IGTK 4 + +struct rsn_rdie { + u8 id; + u8 descr_count; + le16 status_code; +} STRUCT_PACKED; + +#endif /* CONFIG_IEEE80211R */ + +struct wpa_ie_data { + int proto; + int pairwise_cipher; + int group_cipher; + int key_mgmt; + int capabilities; + size_t num_pmkid; + const u8 *pmkid; + int mgmt_group_cipher; +}; + +const char * wpa_cipher_txt(int cipher); + +int wpa_parse_wpa_ie_rsn(const u8 *rsn_ie, size_t rsn_ie_len, + struct wpa_ie_data *data); + +int wpa_eapol_key_mic(const u8 *key, int ver, const u8 *buf, size_t len, + u8 *mic); +int wpa_compare_rsn_ie(int ft_initial_assoc, + const u8 *ie1, size_t ie1len, + const u8 *ie2, size_t ie2len); + +void wpa_pmk_to_ptk(const u8 *pmk, size_t pmk_len, const char *label, + const u8 *addr1, const u8 *addr2, + const u8 *nonce1, const u8 *nonce2, + u8 *ptk, size_t ptk_len, int use_sha256); + +void rsn_pmkid(const u8 *pmk, size_t pmk_len, const u8 *aa, const u8 *spa, + u8 *pmkid, int use_sha256); + +#endif /* WPA_COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_debug.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_debug.h new file mode 100644 index 00000000..b78a657e --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_debug.h @@ -0,0 +1,193 @@ +/* + * wpa_supplicant/hostapd / Debug prints + * Copyright (c) 2002-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPA_DEBUG_H +#define WPA_DEBUG_H + + +enum { MSG_MSGDUMP, MSG_DEBUG, MSG_INFO, MSG_WARNING, MSG_ERROR }; + +/** EAP authentication completed successfully */ +#define WPA_EVENT_EAP_SUCCESS "CTRL-EVENT-EAP-SUCCESS " + +int wpa_debug_open_file(const char *path); +void wpa_debug_close_file(void); + +/** + * wpa_debug_printf_timestamp - Print timestamp for debug output + * + * This function prints a timestamp in seconds_from_1970.microsoconds + * format if debug output has been configured to include timestamps in debug + * messages. + */ +void wpa_debug_print_timestamp(void); + +/** + * wpa_printf - conditional printf + * @level: priority level (MSG_*) of the message + * @fmt: printf format string, followed by optional arguments + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. + * + * Note: New line '\n' is added to the end of the text when printing to stdout. + */ +//#define DEBUG_PRINT +//#define MSG_PRINT + +/** + * wpa_hexdump - conditional hex dump + * @level: priority level (MSG_*) of the message + * @title: title of for the message + * @buf: data buffer to be dumped + * @len: length of the buf + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. The contents of buf is printed out has hex dump. + */ +#ifdef DEBUG_PRINT +#define wpa_printf(level,fmt, args...) ets_printf(fmt,## args) + +static inline void wpa_hexdump_ascii(int level, const char *title, const u8 *buf, size_t len) +{ + +} + +static inline void wpa_hexdump_ascii_key(int level, const char *title, const u8 *buf, size_t len) +{ +} + + +void wpa_hexdump(int level, const char *title, const u8 *buf, size_t len); + +static inline void wpa_hexdump_buf(int level, const char *title, + const struct wpabuf *buf) +{ + wpa_hexdump(level, title, wpabuf_head(buf), wpabuf_len(buf)); +} + +/** + * wpa_hexdump_key - conditional hex dump, hide keys + * @level: priority level (MSG_*) of the message + * @title: title of for the message + * @buf: data buffer to be dumped + * @len: length of the buf + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. The contents of buf is printed out has hex dump. This works + * like wpa_hexdump(), but by default, does not include secret keys (passwords, + * etc.) in debug output. + */ +void wpa_hexdump_key(int level, const char *title, const u8 *buf, size_t len); + + +static inline void wpa_hexdump_buf_key(int level, const char *title, + const struct wpabuf *buf) +{ + wpa_hexdump_key(level, title, wpabuf_head(buf), wpabuf_len(buf)); +} + +/** + * wpa_hexdump_ascii - conditional hex dump + * @level: priority level (MSG_*) of the message + * @title: title of for the message + * @buf: data buffer to be dumped + * @len: length of the buf + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. The contents of buf is printed out has hex dump with both + * the hex numbers and ASCII characters (for printable range) are shown. 16 + * bytes per line will be shown. + */ +void wpa_hexdump_ascii(int level, const char *title, const u8 *buf, + size_t len); + +/** + * wpa_hexdump_ascii_key - conditional hex dump, hide keys + * @level: priority level (MSG_*) of the message + * @title: title of for the message + * @buf: data buffer to be dumped + * @len: length of the buf + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. The contents of buf is printed out has hex dump with both + * the hex numbers and ASCII characters (for printable range) are shown. 16 + * bytes per line will be shown. This works like wpa_hexdump_ascii(), but by + * default, does not include secret keys (passwords, etc.) in debug output. + */ +void wpa_hexdump_ascii_key(int level, const char *title, const u8 *buf, + size_t len); +#else +#define wpa_printf(level,fmt, args...) +#define wpa_hexdump(...) +#define wpa_hexdump_buf(...) +#define wpa_hexdump_key(...) +#define wpa_hexdump_buf_key(...) +#define wpa_hexdump_ascii(...) +#define wpa_hexdump_ascii_key(...) +#endif + +#define wpa_auth_logger +#define wpa_auth_vlogger + +/** + * wpa_msg - Conditional printf for default target and ctrl_iface monitors + * @ctx: Pointer to context data; this is the ctx variable registered + * with struct wpa_driver_ops::init() + * @level: priority level (MSG_*) of the message + * @fmt: printf format string, followed by optional arguments + * + * This function is used to print conditional debugging and error messages. The + * output may be directed to stdout, stderr, and/or syslog based on + * configuration. This function is like wpa_printf(), but it also sends the + * same message to all attached ctrl_iface monitors. + * + * Note: New line '\n' is added to the end of the text when printing to stdout. + */ +void wpa_msg(void *ctx, int level, const char *fmt, ...) PRINTF_FORMAT(3, 4); + +/** + * wpa_msg_ctrl - Conditional printf for ctrl_iface monitors + * @ctx: Pointer to context data; this is the ctx variable registered + * with struct wpa_driver_ops::init() + * @level: priority level (MSG_*) of the message + * @fmt: printf format string, followed by optional arguments + * + * This function is used to print conditional debugging and error messages. + * This function is like wpa_msg(), but it sends the output only to the + * attached ctrl_iface monitors. In other words, it can be used for frequent + * events that do not need to be sent to syslog. + */ +void wpa_msg_ctrl(void *ctx, int level, const char *fmt, ...) +PRINTF_FORMAT(3, 4); + +typedef void (*wpa_msg_cb_func)(void *ctx, int level, const char *txt, + size_t len); + +typedef void (*eloop_timeout_handler)(void *eloop_data, void *user_ctx); + +int eloop_cancel_timeout(eloop_timeout_handler handler, + void *eloop_data, void *user_data); + +int eloop_register_timeout(unsigned int secs, unsigned int usecs, + eloop_timeout_handler handler, + void *eloop_data, void *user_data); + + +#endif /* WPA_DEBUG_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_i.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_i.h new file mode 100644 index 00000000..a43c33d3 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_i.h @@ -0,0 +1,89 @@ +/* + * Internal WPA/RSN supplicant state machine definitions + * Copyright (c) 2004-2010, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPA_I_H +#define WPA_I_H + +/** + * set_key - Configure encryption key + * @ifname: Interface name (for multi-SSID/VLAN support) + * @priv: private driver interface data + * @alg: encryption algorithm (%WPA_ALG_NONE, %WPA_ALG_WEP, + * %WPA_ALG_TKIP, %WPA_ALG_CCMP, %WPA_ALG_IGTK, %WPA_ALG_PMK); + * %WPA_ALG_NONE clears the key. + * @addr: address of the peer STA or ff:ff:ff:ff:ff:ff for + * broadcast/default keys + * @key_idx: key index (0..3), usually 0 for unicast keys; 0..4095 for + * IGTK + * @set_tx: configure this key as the default Tx key (only used when + * driver does not support separate unicast/individual key + * @seq: sequence number/packet number, seq_len octets, the next + * packet number to be used for in replay protection; configured + * for Rx keys (in most cases, this is only used with broadcast + * keys and set to zero for unicast keys) + * @seq_len: length of the seq, depends on the algorithm: + * TKIP: 6 octets, CCMP: 6 octets, IGTK: 6 octets + * @key: key buffer; TKIP: 16-byte temporal key, 8-byte Tx Mic key, + * 8-byte Rx Mic Key + * @key_len: length of the key buffer in octets (WEP: 5 or 13, + * TKIP: 32, CCMP: 16, IGTK: 16) + * + * Returns: 0 on success, -1 on failure + * + * Configure the given key for the kernel driver. If the driver + * supports separate individual keys (4 default keys + 1 individual), + * addr can be used to determine whether the key is default or + * individual. If only 4 keys are supported, the default key with key + * index 0 is used as the individual key. STA must be configured to use + * it as the default Tx key (set_tx is set) and accept Rx for all the + * key indexes. In most cases, WPA uses only key indexes 1 and 2 for + * broadcast keys, so key index 0 is available for this kind of + * configuration. + * + * Please note that TKIP keys include separate TX and RX MIC keys and + * some drivers may expect them in different order than wpa_supplicant + * is using. If the TX/RX keys are swapped, all TKIP encrypted packets + * will tricker Michael MIC errors. This can be fixed by changing the + * order of MIC keys by swapping te bytes 16..23 and 24..31 of the key + * in driver_*.c set_key() implementation, see driver_ndis.c for an + * example on how this can be done. + */ + +typedef void (* WPA_SEND_FUNC)(struct pbuf *pb); + +typedef void (* WPA_SET_ASSOC_IE)(uint8 proto, u8 *assoc_buf, u32 assoc_wpa_ie_len); + +typedef void (*WPA_INSTALL_KEY) (enum wpa_alg alg, uint8 *addr, int key_idx, int set_tx, + uint8 *seq, size_t seq_len, uint8 *key, size_t key_len, int key_entry_valid); + +typedef void (*WPA_DEAUTH)(uint8 reason_code); + +typedef void (*WPA_NEG_COMPLETE)(); + +void wpa_register(char * payload, WPA_SEND_FUNC snd_func, \ + WPA_SET_ASSOC_IE set_assoc_ie_func, \ + WPA_INSTALL_KEY ppinstallkey, \ + WPA_DEAUTH wpa_deauth, \ + WPA_NEG_COMPLETE wpa_neg_complete); + +#include "pp/esf_buf.h" +void eapol_txcb(esf_buf_t *eb); + +void wpa_set_profile(uint32 wpa_proto); + +void wpa_set_bss(char *macddr, char * bssid, uint8 pairwise_cipher, uint8 group_cipher, char *passphrase, u8 *ssid, size_t ssid_len); + +int wpa_sm_rx_eapol(u8 *src_addr, u8 *buf, u32 len); +#endif /* WPA_I_H */ + diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpa_ie.h b/tools/sdk/include/wpa_supplicant/wpa/wpa_ie.h new file mode 100644 index 00000000..94518d84 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpa_ie.h @@ -0,0 +1,56 @@ +/* + * wpa_supplicant - WPA/RSN IE and KDE definitions + * Copyright (c) 2004-2007, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPA_IE_H +#define WPA_IE_H + +struct wpa_eapol_ie_parse { + const u8 *wpa_ie; + size_t wpa_ie_len; + const u8 *rsn_ie; + size_t rsn_ie_len; + const u8 *pmkid; + const u8 *gtk; + size_t gtk_len; + const u8 *mac_addr; + size_t mac_addr_len; +#ifdef CONFIG_PEERKEY + const u8 *smk; + size_t smk_len; + const u8 *nonce; + size_t nonce_len; + const u8 *lifetime; + size_t lifetime_len; + const u8 *error; + size_t error_len; +#endif /* CONFIG_PEERKEY */ +#ifdef CONFIG_IEEE80211W + const u8 *igtk; + size_t igtk_len; +#endif /* CONFIG_IEEE80211W */ +#ifdef CONFIG_IEEE80211R + const u8 *mdie; + size_t mdie_len; + const u8 *ftie; + size_t ftie_len; + const u8 *reassoc_deadline; + const u8 *key_lifetime; +#endif /* CONFIG_IEEE80211R */ +}; + +int wpa_supplicant_parse_ies(const u8 *buf, size_t len, + struct wpa_eapol_ie_parse *ie); +int wpa_gen_wpa_ie(struct wpa_sm *sm, u8 *wpa_ie, size_t wpa_ie_len); + +#endif /* WPA_IE_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpabuf.h b/tools/sdk/include/wpa_supplicant/wpa/wpabuf.h new file mode 100644 index 00000000..cccfcc80 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpabuf.h @@ -0,0 +1,168 @@ +/* + * Dynamic data buffer + * Copyright (c) 2007-2009, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPABUF_H +#define WPABUF_H + +/* + * Internal data structure for wpabuf. Please do not touch this directly from + * elsewhere. This is only defined in header file to allow inline functions + * from this file to access data. + */ +struct wpabuf { + size_t size; /* total size of the allocated buffer */ + size_t used; /* length of data in the buffer */ + u8 *ext_data; /* pointer to external data; NULL if data follows + * struct wpabuf */ + /* optionally followed by the allocated buffer */ +}; + + +int wpabuf_resize(struct wpabuf **buf, size_t add_len); +struct wpabuf * wpabuf_alloc(size_t len); +struct wpabuf * wpabuf_alloc_ext_data(u8 *data, size_t len); +struct wpabuf * wpabuf_alloc_copy(const void *data, size_t len); +struct wpabuf * wpabuf_dup(const struct wpabuf *src); +void wpabuf_free(struct wpabuf *buf); +void * wpabuf_put(struct wpabuf *buf, size_t len); +struct wpabuf * wpabuf_concat(struct wpabuf *a, struct wpabuf *b); +struct wpabuf * wpabuf_zeropad(struct wpabuf *buf, size_t len); +void wpabuf_printf(struct wpabuf *buf, char *fmt, ...) PRINTF_FORMAT(2, 3); + + +/** + * wpabuf_size - Get the currently allocated size of a wpabuf buffer + * @buf: wpabuf buffer + * Returns: Currently allocated size of the buffer + */ +static inline size_t wpabuf_size(const struct wpabuf *buf) +{ + return buf->size; +} + +/** + * wpabuf_len - Get the current length of a wpabuf buffer data + * @buf: wpabuf buffer + * Returns: Currently used length of the buffer + */ +static inline size_t wpabuf_len(const struct wpabuf *buf) +{ + return buf->used; +} + +/** + * wpabuf_tailroom - Get size of available tail room in the end of the buffer + * @buf: wpabuf buffer + * Returns: Tail room (in bytes) of available space in the end of the buffer + */ +static inline size_t wpabuf_tailroom(const struct wpabuf *buf) +{ + return buf->size - buf->used; +} + +/** + * wpabuf_head - Get pointer to the head of the buffer data + * @buf: wpabuf buffer + * Returns: Pointer to the head of the buffer data + */ +static inline const void * wpabuf_head(const struct wpabuf *buf) +{ + if (buf->ext_data) + return buf->ext_data; + return buf + 1; +} + +static inline const u8 * wpabuf_head_u8(const struct wpabuf *buf) +{ + return wpabuf_head(buf); +} + +/** + * wpabuf_mhead - Get modifiable pointer to the head of the buffer data + * @buf: wpabuf buffer + * Returns: Pointer to the head of the buffer data + */ +static inline void * wpabuf_mhead(struct wpabuf *buf) +{ + if (buf->ext_data) + return buf->ext_data; + return buf + 1; +} + +static inline u8 * wpabuf_mhead_u8(struct wpabuf *buf) +{ + return wpabuf_mhead(buf); +} + +static inline void wpabuf_put_u8(struct wpabuf *buf, u8 data) +{ + u8 *pos = wpabuf_put(buf, 1); + *pos = data; +} + +static inline void wpabuf_put_le16(struct wpabuf *buf, u16 data) +{ + u8 *pos = wpabuf_put(buf, 2); + WPA_PUT_LE16(pos, data); +} + +static inline void wpabuf_put_le32(struct wpabuf *buf, u32 data) +{ + u8 *pos = wpabuf_put(buf, 4); + WPA_PUT_LE32(pos, data); +} + +static inline void wpabuf_put_be16(struct wpabuf *buf, u16 data) +{ + u8 *pos = wpabuf_put(buf, 2); + WPA_PUT_BE16(pos, data); +} + +static inline void wpabuf_put_be24(struct wpabuf *buf, u32 data) +{ + u8 *pos = wpabuf_put(buf, 3); + WPA_PUT_BE24(pos, data); +} + +static inline void wpabuf_put_be32(struct wpabuf *buf, u32 data) +{ + u8 *pos = wpabuf_put(buf, 4); + WPA_PUT_BE32(pos, data); +} + +static inline void wpabuf_put_data(struct wpabuf *buf, const void *data, + size_t len) +{ + if (data) + os_memcpy(wpabuf_put(buf, len), data, len); +} + +static inline void wpabuf_put_buf(struct wpabuf *dst, + const struct wpabuf *src) +{ + wpabuf_put_data(dst, wpabuf_head(src), wpabuf_len(src)); +} + +static inline void wpabuf_set(struct wpabuf *buf, const void *data, size_t len) +{ + buf->ext_data = (u8 *) data; + buf->size = buf->used = len; +} + +static inline void wpabuf_put_str(struct wpabuf *dst, const char *str) +{ + wpabuf_put_data(dst, str, os_strlen(str)); +} + +#endif /* WPABUF_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa/wpas_glue.h b/tools/sdk/include/wpa_supplicant/wpa/wpas_glue.h new file mode 100644 index 00000000..7e254a2d --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa/wpas_glue.h @@ -0,0 +1,31 @@ +/* + * WPA Supplicant - Glue code to setup EAPOL and RSN modules + * Copyright (c) 2003-2008, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef WPAS_GLUE_H +#define WPAS_GLUE_H + +u8 * wpa_sm_alloc_eapol(struct wpa_sm *sm, u8 type, + const void *data, u16 data_len, + size_t *msg_len, void **data_pos); + +int wpa_sm_mlme_setprotection(struct wpa_sm *sm, const u8 *addr, + int protect_type, int key_type); + +void wpa_sm_deauthenticate(struct wpa_sm *sm, uint8 reason_code); + +void wpa_sm_disassociate(struct wpa_sm *sm, int reason_code); + +int wpa_sm_get_beacon_ie(struct wpa_sm *sm); + +#endif /* WPAS_GLUE_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap.h new file mode 100644 index 00000000..e2cd2dd8 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap.h @@ -0,0 +1,24 @@ +/* + * EAP peer state machine functions (RFC 4137) + * Copyright (c) 2004-2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_H +#define EAP_H + +#include "wpa/defs.h" +#include "eap/eap_defs.h" + +struct eap_sm; + +struct eap_method_type { + int vendor; + u32 method; +}; + +const u8 * eap_get_eapKeyData(struct eap_sm *sm, size_t *len); + +#endif /* EAP_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_common.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_common.h new file mode 100644 index 00000000..38c57100 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_common.h @@ -0,0 +1,23 @@ +/* + * EAP common peer/server definitions + * Copyright (c) 2004-2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_COMMON_H +#define EAP_COMMON_H + +#include "wpa/wpabuf.h" + +int eap_hdr_len_valid(const struct wpabuf *msg, size_t min_payload); +const u8 * eap_hdr_validate(int vendor, EapType eap_type, + const struct wpabuf *msg, size_t *plen); +struct wpabuf * eap_msg_alloc(int vendor, EapType type, size_t payload_len, + u8 code, u8 identifier); +void eap_update_len(struct wpabuf *msg); +u8 eap_get_id(const struct wpabuf *msg); +EapType eap_get_type(const struct wpabuf *msg); + +#endif /* EAP_COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_config.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_config.h new file mode 100644 index 00000000..f35cbf43 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_config.h @@ -0,0 +1,220 @@ +/* + * EAP peer configuration data + * Copyright (c) 2003-2013, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_CONFIG_H +#define EAP_CONFIG_H + +/** + * struct eap_peer_config - EAP peer configuration/credentials + */ +struct eap_peer_config { + /** + * identity - EAP Identity + * + * This field is used to set the real user identity or NAI (for + * EAP-PSK/PAX/SAKE/GPSK). + */ + u8 *identity; + + /** + * identity_len - EAP Identity length + */ + size_t identity_len; + + /** + * password - Password string for EAP + * + * This field can include either the plaintext password (default + * option) or a NtPasswordHash (16-byte MD4 hash of the unicode + * presentation of the password) if flags field has + * EAP_CONFIG_FLAGS_PASSWORD_NTHASH bit set to 1. NtPasswordHash can + * only be used with authentication mechanism that use this hash as the + * starting point for operation: MSCHAP and MSCHAPv2 (EAP-MSCHAPv2, + * EAP-TTLS/MSCHAPv2, EAP-TTLS/MSCHAP, LEAP). + * + * In addition, this field is used to configure a pre-shared key for + * EAP-PSK/PAX/SAKE/GPSK. The length of the PSK must be 16 for EAP-PSK + * and EAP-PAX and 32 for EAP-SAKE. EAP-GPSK can use a variable length + * PSK. + */ + u8 *password; + + /** + * password_len - Length of password field + */ + size_t password_len; + + /** + * ca_cert - File path to CA certificate file (PEM/DER) + * + * This file can have one or more trusted CA certificates. If ca_cert + * and ca_path are not included, server certificate will not be + * verified. This is insecure and a trusted CA certificate should + * always be configured when using EAP-TLS/TTLS/PEAP. Full path to the + * file should be used since working directory may change when + * wpa_supplicant is run in the background. + * + * Alternatively, a named configuration blob can be used by setting + * this to blob://blob_name. + * + * Alternatively, this can be used to only perform matching of the + * server certificate (SHA-256 hash of the DER encoded X.509 + * certificate). In this case, the possible CA certificates in the + * server certificate chain are ignored and only the server certificate + * is verified. This is configured with the following format: + * hash:://server/sha256/cert_hash_in_hex + * For example: "hash://server/sha256/ + * 5a1bc1296205e6fdbe3979728efe3920798885c1c4590b5f90f43222d239ca6a" + * + * On Windows, trusted CA certificates can be loaded from the system + * certificate store by setting this to cert_store://name, e.g., + * ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT". + * Note that when running wpa_supplicant as an application, the user + * certificate store (My user account) is used, whereas computer store + * (Computer account) is used when running wpasvc as a service. + */ + u8 *ca_cert; + + /** + * ca_path - Directory path for CA certificate files (PEM) + * + * This path may contain multiple CA certificates in OpenSSL format. + * Common use for this is to point to system trusted CA list which is + * often installed into directory like /etc/ssl/certs. If configured, + * these certificates are added to the list of trusted CAs. ca_cert + * may also be included in that case, but it is not required. + */ + u8 *ca_path; + + /** + * client_cert - File path to client certificate file (PEM/DER) + * + * This field is used with EAP method that use TLS authentication. + * Usually, this is only configured for EAP-TLS, even though this could + * in theory be used with EAP-TTLS and EAP-PEAP, too. Full path to the + * file should be used since working directory may change when + * wpa_supplicant is run in the background. + * + * Alternatively, a named configuration blob can be used by setting + * this to blob://blob_name. + */ + u8 *client_cert; + + /** + * private_key - File path to client private key file (PEM/DER/PFX) + * + * When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be + * commented out. Both the private key and certificate will be read + * from the PKCS#12 file in this case. Full path to the file should be + * used since working directory may change when wpa_supplicant is run + * in the background. + * + * Windows certificate store can be used by leaving client_cert out and + * configuring private_key in one of the following formats: + * + * cert://substring_to_match + * + * hash://certificate_thumbprint_in_hex + * + * For example: private_key="hash://63093aa9c47f56ae88334c7b65a4" + * + * Note that when running wpa_supplicant as an application, the user + * certificate store (My user account) is used, whereas computer store + * (Computer account) is used when running wpasvc as a service. + * + * Alternatively, a named configuration blob can be used by setting + * this to blob://blob_name. + */ + u8 *private_key; + + /** + * private_key_passwd - Password for private key file + * + * If left out, this will be asked through control interface. + */ + u8 *private_key_passwd; + + char *phase1; + + /** + * pin - PIN for USIM, GSM SIM, and smartcards + * + * This field is used to configure PIN for SIM and smartcards for + * EAP-SIM and EAP-AKA. In addition, this is used with EAP-TLS if a + * smartcard is used for private key operations. + * + * If left out, this will be asked through control interface. + */ + char *pin; + + /** + * fragment_size - Maximum EAP fragment size in bytes (default 1398) + * + * This value limits the fragment size for EAP methods that support + * fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set + * small enough to make the EAP messages fit in MTU of the network + * interface used for EAPOL. The default value is suitable for most + * cases. + */ + int fragment_size; + +#define EAP_CONFIG_FLAGS_PASSWORD_NTHASH BIT(0) +#define EAP_CONFIG_FLAGS_EXT_PASSWORD BIT(1) + /** + * flags - Network configuration flags (bitfield) + * + * This variable is used for internal flags to describe further details + * for the network parameters. + * bit 0 = password is represented as a 16-byte NtPasswordHash value + * instead of plaintext password + * bit 1 = password is stored in external storage; the value in the + * password field is the name of that external entry + */ + u32 flags; + + /** + * ocsp - Whether to use/require OCSP to check server certificate + * + * 0 = do not use OCSP stapling (TLS certificate status extension) + * 1 = try to use OCSP stapling, but not require response + * 2 = require valid OCSP stapling response + */ + int ocsp; +}; + + +/** + * struct wpa_config_blob - Named configuration blob + * + * This data structure is used to provide storage for binary objects to store + * abstract information like certificates and private keys inlined with the + * configuration data. + */ +struct wpa_config_blob { + /** + * name - Blob name + */ + char *name; + + /** + * data - Pointer to binary data + */ + u8 *data; + + /** + * len - Length of binary data + */ + size_t len; + + /** + * next - Pointer to next blob in the configuration + */ + struct wpa_config_blob *next; +}; + +#endif /* EAP_CONFIG_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_defs.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_defs.h new file mode 100644 index 00000000..10995d38 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_defs.h @@ -0,0 +1,92 @@ +/* + * EAP server/peer: Shared EAP definitions + * Copyright (c) 2004-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_DEFS_H +#define EAP_DEFS_H + +/* RFC 3748 - Extensible Authentication Protocol (EAP) */ + +#ifdef _MSC_VER +#pragma pack(push, 1) +#endif /* _MSC_VER */ + +struct eap_hdr { + u8 code; + u8 identifier; + be16 length; /* including code and identifier; network byte order */ + /* followed by length-4 octets of data */ +} STRUCT_PACKED; + + +#ifdef _MSC_VER +#pragma pack(pop) +#endif /* _MSC_VER */ + +enum { EAP_CODE_REQUEST = 1, EAP_CODE_RESPONSE = 2, EAP_CODE_SUCCESS = 3, + EAP_CODE_FAILURE = 4 }; + +/* EAP Request and Response data begins with one octet Type. Success and + * Failure do not have additional data. */ + +/* + * EAP Method Types as allocated by IANA: + * http://www.iana.org/assignments/eap-numbers + */ +typedef enum { + EAP_TYPE_NONE = 0, + EAP_TYPE_IDENTITY = 1 /* RFC 3748 */, + EAP_TYPE_NOTIFICATION = 2 /* RFC 3748 */, + EAP_TYPE_NAK = 3 /* Response only, RFC 3748 */, + EAP_TYPE_MD5 = 4, /* RFC 3748 */ + EAP_TYPE_OTP = 5 /* RFC 3748 */, + EAP_TYPE_GTC = 6, /* RFC 3748 */ + EAP_TYPE_TLS = 13 /* RFC 2716 */, + EAP_TYPE_LEAP = 17 /* Cisco proprietary */, + EAP_TYPE_SIM = 18 /* RFC 4186 */, + EAP_TYPE_TTLS = 21 /* RFC 5281 */, + EAP_TYPE_AKA = 23 /* RFC 4187 */, + EAP_TYPE_PEAP = 25 /* draft-josefsson-pppext-eap-tls-eap-06.txt */, + EAP_TYPE_MSCHAPV2 = 26 /* draft-kamath-pppext-eap-mschapv2-00.txt */, + EAP_TYPE_TLV = 33 /* draft-josefsson-pppext-eap-tls-eap-07.txt */, + EAP_TYPE_TNC = 38 /* TNC IF-T v1.0-r3; note: tentative assignment; + * type 38 has previously been allocated for + * EAP-HTTP Digest, (funk.com) */, + EAP_TYPE_FAST = 43 /* RFC 4851 */, + EAP_TYPE_PAX = 46 /* RFC 4746 */, + EAP_TYPE_PSK = 47 /* RFC 4764 */, + EAP_TYPE_SAKE = 48 /* RFC 4763 */, + EAP_TYPE_IKEV2 = 49 /* RFC 5106 */, + EAP_TYPE_AKA_PRIME = 50 /* RFC 5448 */, + EAP_TYPE_GPSK = 51 /* RFC 5433 */, + EAP_TYPE_PWD = 52 /* RFC 5931 */, + EAP_TYPE_EKE = 53 /* RFC 6124 */, + EAP_TYPE_EXPANDED = 254 /* RFC 3748 */ +} EapType; + + +/* SMI Network Management Private Enterprise Code for vendor specific types */ +enum { + EAP_VENDOR_IETF = 0, + EAP_VENDOR_MICROSOFT = 0x000137 /* Microsoft */, + EAP_VENDOR_WFA = 0x00372A /* Wi-Fi Alliance */, + EAP_VENDOR_HOSTAP = 39068 /* hostapd/wpa_supplicant project */ +}; + +struct eap_expand { + u8 vendor_id[3]; + be32 vendor_type; + u8 opcode; +} STRUCT_PACKED; + +#define EAP_VENDOR_UNAUTH_TLS EAP_VENDOR_HOSTAP +#define EAP_VENDOR_TYPE_UNAUTH_TLS 1 + +#define EAP_MSK_LEN 64 +#define EAP_EMSK_LEN 64 + +#endif /* EAP_DEFS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_i.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_i.h new file mode 100644 index 00000000..a4779d13 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_i.h @@ -0,0 +1,88 @@ +/* + * EAP peer state machines internal structures (RFC 4137) + * Copyright (c) 2004-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_I_H +#define EAP_I_H + +#include "wpa/wpabuf.h" +#include "eap.h" +#include "eap_common.h" +#include "eap_config.h" + +/* RFC 4137 - EAP Peer state machine */ + +typedef enum { + DECISION_FAIL, DECISION_COND_SUCC, DECISION_UNCOND_SUCC +} EapDecision; + +typedef enum { + METHOD_NONE, METHOD_INIT, METHOD_CONT, METHOD_MAY_CONT, METHOD_DONE +} EapMethodState; + +/** + * struct eap_method_ret - EAP return values from struct eap_method::process() + * + * These structure contains OUT variables for the interface between peer state + * machine and methods (RFC 4137, Sect. 4.2). eapRespData will be returned as + * the return value of struct eap_method::process() so it is not included in + * this structure. + */ +struct eap_method_ret { + /** + * ignore - Whether method decided to drop the current packed (OUT) + */ + Boolean ignore; + + /** + * methodState - Method-specific state (IN/OUT) + */ + EapMethodState methodState; + + /** + * decision - Authentication decision (OUT) + */ + EapDecision decision; + + /** + * allowNotifications - Whether method allows notifications (OUT) + */ + Boolean allowNotifications; +}; + +#define CLIENT_CERT_NAME "CLC" +#define CA_CERT_NAME "CAC" +#define PRIVATE_KEY_NAME "PVK" +#define BLOB_NAME_LEN 3 +#define BLOB_NUM 2 + +/** + * struct eap_sm - EAP state machine data + */ +struct eap_sm { + void *eap_method_priv; + + void *ssl_ctx; + + unsigned int workaround; +///////////////////////////////////////////////// + struct pbuf *outbuf; + struct wpa_config_blob blob[BLOB_NUM]; + struct eap_peer_config config; + u8 current_identifier; + u8 ownaddr[ETH_ALEN]; +#ifdef USE_WPA2_TASK +#define SIG_WPA2_NUM 2 + u8 wpa2_sig_cnt[SIG_WPA2_NUM]; +#endif + u8 finish_state; +}; + +struct eap_peer_config * eap_get_config(struct eap_sm *sm); +const struct wpa_config_blob * eap_get_config_blob(struct eap_sm *sm, const char *name); + +#endif /* EAP_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls.h new file mode 100644 index 00000000..a8a386f2 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls.h @@ -0,0 +1,25 @@ +/* + * EAP peer: EAP-TLS/PEAP/TTLS/FAST common functions + * Copyright (c) 2004-2009, 2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_TLS_H +#define EAP_TLS_H + +#include "eap_i.h" +#include "eap_common.h" +#include "eap.h" +#include "wpa/wpabuf.h" + +void * eap_tls_init(struct eap_sm *sm); +void eap_tls_deinit(struct eap_sm *sm, void *priv); +struct wpabuf * eap_tls_process(struct eap_sm *sm, void *priv, + struct eap_method_ret *ret, + const struct wpabuf *reqData); + +u8 * eap_tls_getKey(struct eap_sm *sm, void *priv, size_t *len); + +#endif /* EAP_TLS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls_common.h b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls_common.h new file mode 100644 index 00000000..1a5e0f89 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/eap_peer/eap_tls_common.h @@ -0,0 +1,131 @@ +/* + * EAP peer: EAP-TLS/PEAP/TTLS/FAST common functions + * Copyright (c) 2004-2009, 2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EAP_TLS_COMMON_H +#define EAP_TLS_COMMON_H + +/** + * struct eap_ssl_data - TLS data for EAP methods + */ +struct eap_ssl_data { + /** + * conn - TLS connection context data from tls_connection_init() + */ + struct tls_connection *conn; + + /** + * tls_out - TLS message to be sent out in fragments + */ + struct wpabuf *tls_out; + + /** + * tls_out_pos - The current position in the outgoing TLS message + */ + size_t tls_out_pos; + + /** + * tls_out_limit - Maximum fragment size for outgoing TLS messages + */ + size_t tls_out_limit; + + /** + * tls_in - Received TLS message buffer for re-assembly + */ + struct wpabuf *tls_in; + + /** + * tls_in_left - Number of remaining bytes in the incoming TLS message + */ + size_t tls_in_left; + + /** + * tls_in_total - Total number of bytes in the incoming TLS message + */ + size_t tls_in_total; + + /** + * phase2 - Whether this TLS connection is used in EAP phase 2 (tunnel) + */ + int phase2; + + /** + * include_tls_length - Whether the TLS length field is included even + * if the TLS data is not fragmented + */ + int include_tls_length; + + /** + * eap - EAP state machine allocated with eap_peer_sm_init() + */ + struct eap_sm *eap; + + /** + * ssl_ctx - TLS library context to use for the connection + */ + void *ssl_ctx; + + /** + * eap_type - EAP method used in Phase 1 (EAP_TYPE_TLS/PEAP/TTLS/FAST) + */ + u8 eap_type; +}; + + +/* EAP TLS Flags */ +#define EAP_TLS_FLAGS_LENGTH_INCLUDED 0x80 +#define EAP_TLS_FLAGS_MORE_FRAGMENTS 0x40 +#define EAP_TLS_FLAGS_START 0x20 +#define EAP_TLS_VERSION_MASK 0x07 + + /* could be up to 128 bytes, but only the first 64 bytes are used */ +#define EAP_TLS_KEY_LEN 64 + +/* dummy type used as a flag for UNAUTH-TLS */ +#define EAP_UNAUTH_TLS_TYPE 255 + + +int eap_peer_tls_ssl_init(struct eap_sm *sm, struct eap_ssl_data *data, + struct eap_peer_config *config, u8 eap_type); +void eap_peer_tls_ssl_deinit(struct eap_sm *sm, struct eap_ssl_data *data); +u8 * eap_peer_tls_derive_key(struct eap_sm *sm, struct eap_ssl_data *data, + const char *label, size_t len); +u8 * eap_peer_tls_derive_session_id(struct eap_sm *sm, + struct eap_ssl_data *data, u8 eap_type, + size_t *len); +int eap_peer_tls_process_helper(struct eap_sm *sm, struct eap_ssl_data *data, + EapType eap_type, int peap_version, + u8 id, const u8 *in_data, size_t in_len, + struct wpabuf **out_data); +struct wpabuf * eap_peer_tls_build_ack(u8 id, EapType eap_type, + int peap_version); +int eap_peer_tls_reauth_init(struct eap_sm *sm, struct eap_ssl_data *data); +int eap_peer_tls_status(struct eap_sm *sm, struct eap_ssl_data *data, + char *buf, size_t buflen, int verbose); +const u8 * eap_peer_tls_process_init(struct eap_sm *sm, + struct eap_ssl_data *data, + EapType eap_type, + struct eap_method_ret *ret, + const struct wpabuf *reqData, + size_t *len, u8 *flags); +void eap_peer_tls_reset_input(struct eap_ssl_data *data); +void eap_peer_tls_reset_output(struct eap_ssl_data *data); +int eap_peer_tls_decrypt(struct eap_sm *sm, struct eap_ssl_data *data, + const struct wpabuf *in_data, + struct wpabuf **in_decrypted); +int eap_peer_tls_encrypt(struct eap_sm *sm, struct eap_ssl_data *data, + EapType eap_type, int peap_version, u8 id, + const struct wpabuf *in_data, + struct wpabuf **out_data); +int eap_peer_select_phase2_methods(struct eap_peer_config *config, + const char *prefix, + struct eap_method_type **types, + size_t *num_types); +int eap_peer_tls_phase2_nak(struct eap_method_type *types, size_t num_types, + struct eap_hdr *hdr, struct wpabuf **resp); + +#endif /* EAP_TLS_COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/asn1.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/asn1.h new file mode 100644 index 00000000..6342c4cc --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/asn1.h @@ -0,0 +1,66 @@ +/* + * ASN.1 DER parsing + * Copyright (c) 2006, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef ASN1_H +#define ASN1_H + +#define ASN1_TAG_EOC 0x00 /* not used with DER */ +#define ASN1_TAG_BOOLEAN 0x01 +#define ASN1_TAG_INTEGER 0x02 +#define ASN1_TAG_BITSTRING 0x03 +#define ASN1_TAG_OCTETSTRING 0x04 +#define ASN1_TAG_NULL 0x05 +#define ASN1_TAG_OID 0x06 +#define ASN1_TAG_OBJECT_DESCRIPTOR 0x07 /* not yet parsed */ +#define ASN1_TAG_EXTERNAL 0x08 /* not yet parsed */ +#define ASN1_TAG_REAL 0x09 /* not yet parsed */ +#define ASN1_TAG_ENUMERATED 0x0A /* not yet parsed */ +#define ASN1_TAG_UTF8STRING 0x0C /* not yet parsed */ +#define ANS1_TAG_RELATIVE_OID 0x0D +#define ASN1_TAG_SEQUENCE 0x10 /* shall be constructed */ +#define ASN1_TAG_SET 0x11 +#define ASN1_TAG_NUMERICSTRING 0x12 /* not yet parsed */ +#define ASN1_TAG_PRINTABLESTRING 0x13 +#define ASN1_TAG_TG1STRING 0x14 /* not yet parsed */ +#define ASN1_TAG_VIDEOTEXSTRING 0x15 /* not yet parsed */ +#define ASN1_TAG_IA5STRING 0x16 +#define ASN1_TAG_UTCTIME 0x17 +#define ASN1_TAG_GENERALIZEDTIME 0x18 /* not yet parsed */ +#define ASN1_TAG_GRAPHICSTRING 0x19 /* not yet parsed */ +#define ASN1_TAG_VISIBLESTRING 0x1A +#define ASN1_TAG_GENERALSTRING 0x1B /* not yet parsed */ +#define ASN1_TAG_UNIVERSALSTRING 0x1C /* not yet parsed */ +#define ASN1_TAG_BMPSTRING 0x1D /* not yet parsed */ + +#define ASN1_CLASS_UNIVERSAL 0 +#define ASN1_CLASS_APPLICATION 1 +#define ASN1_CLASS_CONTEXT_SPECIFIC 2 +#define ASN1_CLASS_PRIVATE 3 + + +struct asn1_hdr { + const u8 *payload; + u8 identifier, class, constructed; + unsigned int tag, length; +}; + +#define ASN1_MAX_OID_LEN 20 +struct asn1_oid { + unsigned long oid[ASN1_MAX_OID_LEN]; + size_t len; +}; + + +int asn1_get_next(const u8 *buf, size_t len, struct asn1_hdr *hdr); +int asn1_parse_oid(const u8 *buf, size_t len, struct asn1_oid *oid); +int asn1_get_oid(const u8 *buf, size_t len, struct asn1_oid *oid, + const u8 **next); +void asn1_oid_to_str(struct asn1_oid *oid, char *buf, size_t len); +unsigned long asn1_bit_string_to_long(const u8 *buf, size_t len); + +#endif /* ASN1_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/bignum.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/bignum.h new file mode 100644 index 00000000..f25e2678 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/bignum.h @@ -0,0 +1,38 @@ +/* + * Big number math + * Copyright (c) 2006, Jouni Malinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef BIGNUM_H +#define BIGNUM_H + +struct bignum; + +struct bignum * bignum_init(void); +void bignum_deinit(struct bignum *n); +size_t bignum_get_unsigned_bin_len(struct bignum *n); +int bignum_get_unsigned_bin(const struct bignum *n, u8 *buf, size_t *len); +int bignum_set_unsigned_bin(struct bignum *n, const u8 *buf, size_t len); +int bignum_cmp(const struct bignum *a, const struct bignum *b); +int bignum_cmp_d(const struct bignum *a, unsigned long b); +int bignum_add(const struct bignum *a, const struct bignum *b, + struct bignum *c); +int bignum_sub(const struct bignum *a, const struct bignum *b, + struct bignum *c); +int bignum_mul(const struct bignum *a, const struct bignum *b, + struct bignum *c); +int bignum_mulmod(const struct bignum *a, const struct bignum *b, + const struct bignum *c, struct bignum *d); +int bignum_exptmod(const struct bignum *a, const struct bignum *b, + const struct bignum *c, struct bignum *d); + +#endif /* BIGNUM_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/libtommath.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/libtommath.h new file mode 100644 index 00000000..c0409b5e --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/libtommath.h @@ -0,0 +1,3443 @@ +/* + * Minimal code for RSA support from LibTomMath 0.41 + * http://libtom.org/ + * http://libtom.org/files/ltm-0.41.tar.bz2 + * This library was released in public domain by Tom St Denis. + * + * The combination in this file may not use all of the optimized algorithms + * from LibTomMath and may be considerable slower than the LibTomMath with its + * default settings. The main purpose of having this version here is to make it + * easier to build bignum.c wrapper without having to install and build an + * external library. + * + * If CONFIG_INTERNAL_LIBTOMMATH is defined, bignum.c includes this + * libtommath.c file instead of using the external LibTomMath library. + */ +#include "c_types.h" +#include "os.h" +#include "stdarg.h" + +#ifdef MEMLEAK_DEBUG +static const char mem_debug_file[] ICACHE_RODATA_ATTR = __FILE__; +#endif + +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif + +#define BN_MP_INVMOD_C +#define BN_S_MP_EXPTMOD_C /* Note: #undef in tommath_superclass.h; this would + * require BN_MP_EXPTMOD_FAST_C instead */ +#define BN_S_MP_MUL_DIGS_C +#define BN_MP_INVMOD_SLOW_C +#define BN_S_MP_SQR_C +#define BN_S_MP_MUL_HIGH_DIGS_C /* Note: #undef in tommath_superclass.h; this + * would require other than mp_reduce */ + +#ifdef LTM_FAST + +/* Use faster div at the cost of about 1 kB */ +#define BN_MP_MUL_D_C + +/* Include faster exptmod (Montgomery) at the cost of about 2.5 kB in code */ +#define BN_MP_EXPTMOD_FAST_C +#define BN_MP_MONTGOMERY_SETUP_C +#define BN_FAST_MP_MONTGOMERY_REDUCE_C +#define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C +#define BN_MP_MUL_2_C + +/* Include faster sqr at the cost of about 0.5 kB in code */ +#define BN_FAST_S_MP_SQR_C + +#else /* LTM_FAST */ + +#define BN_MP_DIV_SMALL +#define BN_MP_INIT_MULTI_C +#define BN_MP_CLEAR_MULTI_C +#define BN_MP_ABS_C +#endif /* LTM_FAST */ + +/* Current uses do not require support for negative exponent in exptmod, so we + * can save about 1.5 kB in leaving out invmod. */ +#define LTM_NO_NEG_EXP + +/* from tommath.h */ + +#ifndef MIN + #define MIN(x,y) ((x)<(y)?(x):(y)) +#endif + +#ifndef MAX + #define MAX(x,y) ((x)>(y)?(x):(y)) +#endif + +#define OPT_CAST(x) (x *) + +typedef unsigned long mp_digit; +typedef u64 mp_word; + +#define DIGIT_BIT 28 +#define MP_28BIT + + +#define XMALLOC os_malloc +#define XFREE os_free +#define XREALLOC os_realloc + + +#define MP_MASK ((((mp_digit)1)<<((mp_digit)DIGIT_BIT))-((mp_digit)1)) + +#define MP_LT -1 /* less than */ +#define MP_EQ 0 /* equal to */ +#define MP_GT 1 /* greater than */ + +#define MP_ZPOS 0 /* positive integer */ +#define MP_NEG 1 /* negative */ + +#define MP_OKAY 0 /* ok result */ +#define MP_MEM -2 /* out of mem */ +#define MP_VAL -3 /* invalid input */ + +#define MP_YES 1 /* yes response */ +#define MP_NO 0 /* no response */ + +typedef int mp_err; + +/* define this to use lower memory usage routines (exptmods mostly) */ +#define MP_LOW_MEM + +/* default precision */ +#ifndef MP_PREC + #ifndef MP_LOW_MEM + #define MP_PREC 32 /* default digits of precision */ + #else + #define MP_PREC 8 /* default digits of precision */ + #endif +#endif + +/* size of comba arrays, should be at least 2 * 2**(BITS_PER_WORD - BITS_PER_DIGIT*2) */ +#define MP_WARRAY (1 << (sizeof(mp_word) * CHAR_BIT - 2 * DIGIT_BIT + 1)) + +/* the infamous mp_int structure */ +typedef struct { + int used, alloc, sign; + mp_digit *dp; +} mp_int; + + +/* ---> Basic Manipulations <--- */ +#define mp_iszero(a) (((a)->used == 0) ? MP_YES : MP_NO) +#define mp_iseven(a) (((a)->used > 0 && (((a)->dp[0] & 1) == 0)) ? MP_YES : MP_NO) +#define mp_isodd(a) (((a)->used > 0 && (((a)->dp[0] & 1) == 1)) ? MP_YES : MP_NO) + + +/* prototypes for copied functions */ +#define s_mp_mul(a, b, c) s_mp_mul_digs(a, b, c, (a)->used + (b)->used + 1) +static int s_mp_exptmod(mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode); +static int s_mp_mul_digs (mp_int * a, mp_int * b, mp_int * c, int digs); +static int s_mp_sqr(mp_int * a, mp_int * b); +static int s_mp_mul_high_digs(mp_int * a, mp_int * b, mp_int * c, int digs); + +static int fast_s_mp_mul_digs (mp_int * a, mp_int * b, mp_int * c, int digs); + +#ifdef BN_MP_INIT_MULTI_C +static int mp_init_multi(mp_int *mp, ...); +#endif +#ifdef BN_MP_CLEAR_MULTI_C +static void mp_clear_multi(mp_int *mp, ...); +#endif +static int mp_lshd(mp_int * a, int b); +static void mp_set(mp_int * a, mp_digit b); +static void mp_clamp(mp_int * a); +static void mp_exch(mp_int * a, mp_int * b); +static void mp_rshd(mp_int * a, int b); +static void mp_zero(mp_int * a); +static int mp_mod_2d(mp_int * a, int b, mp_int * c); +static int mp_div_2d(mp_int * a, int b, mp_int * c, mp_int * d); +static int mp_init_copy(mp_int * a, mp_int * b); +static int mp_mul_2d(mp_int * a, int b, mp_int * c); +#ifndef LTM_NO_NEG_EXP +static int mp_div_2(mp_int * a, mp_int * b); +static int mp_invmod(mp_int * a, mp_int * b, mp_int * c); +static int mp_invmod_slow(mp_int * a, mp_int * b, mp_int * c); +#endif /* LTM_NO_NEG_EXP */ +static int mp_copy(mp_int * a, mp_int * b); +static int mp_count_bits(mp_int * a); +static int mp_div(mp_int * a, mp_int * b, mp_int * c, mp_int * d); +static int mp_mod(mp_int * a, mp_int * b, mp_int * c); +static int mp_grow(mp_int * a, int size); +static int mp_cmp_mag(mp_int * a, mp_int * b); +#ifdef BN_MP_ABS_C +static int mp_abs(mp_int * a, mp_int * b); +#endif +static int mp_sqr(mp_int * a, mp_int * b); +static int mp_reduce_2k_l(mp_int *a, mp_int *n, mp_int *d); +static int mp_reduce_2k_setup_l(mp_int *a, mp_int *d); +static int mp_2expt(mp_int * a, int b); +static int mp_reduce_setup(mp_int * a, mp_int * b); +static int mp_reduce(mp_int * x, mp_int * m, mp_int * mu); +static int mp_init_size(mp_int * a, int size); +#ifdef BN_MP_EXPTMOD_FAST_C +static int mp_exptmod_fast (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode); +#endif /* BN_MP_EXPTMOD_FAST_C */ +#ifdef BN_FAST_S_MP_SQR_C +static int fast_s_mp_sqr (mp_int * a, mp_int * b); +#endif /* BN_FAST_S_MP_SQR_C */ +#ifdef BN_MP_MUL_D_C +static int mp_mul_d (mp_int * a, mp_digit b, mp_int * c); +#endif /* BN_MP_MUL_D_C */ + + + +/* functions from bn_.c */ + + +/* reverse an array, used for radix code */ +static void ICACHE_FLASH_ATTR +bn_reverse (unsigned char *s, int len) +{ + int ix, iy; + unsigned char t; + + ix = 0; + iy = len - 1; + while (ix < iy) { + t = s[ix]; + s[ix] = s[iy]; + s[iy] = t; + ++ix; + --iy; + } +} + + +/* low level addition, based on HAC pp.594, Algorithm 14.7 */ +static int ICACHE_FLASH_ATTR +s_mp_add (mp_int * a, mp_int * b, mp_int * c) +{ + mp_int *x; + int olduse, res, min, max; + + /* find sizes, we let |a| <= |b| which means we have to sort + * them. "x" will point to the input with the most digits + */ + if (a->used > b->used) { + min = b->used; + max = a->used; + x = a; + } else { + min = a->used; + max = b->used; + x = b; + } + + /* init result */ + if (c->alloc < max + 1) { + if ((res = mp_grow (c, max + 1)) != MP_OKAY) { + return res; + } + } + + /* get old used digit count and set new one */ + olduse = c->used; + c->used = max + 1; + + { + register mp_digit u, *tmpa, *tmpb, *tmpc; + register int i; + + /* alias for digit pointers */ + + /* first input */ + tmpa = a->dp; + + /* second input */ + tmpb = b->dp; + + /* destination */ + tmpc = c->dp; + + /* zero the carry */ + u = 0; + for (i = 0; i < min; i++) { + /* Compute the sum at one digit, T[i] = A[i] + B[i] + U */ + *tmpc = *tmpa++ + *tmpb++ + u; + + /* U = carry bit of T[i] */ + u = *tmpc >> ((mp_digit)DIGIT_BIT); + + /* take away carry bit from T[i] */ + *tmpc++ &= MP_MASK; + } + + /* now copy higher words if any, that is in A+B + * if A or B has more digits add those in + */ + if (min != max) { + for (; i < max; i++) { + /* T[i] = X[i] + U */ + *tmpc = x->dp[i] + u; + + /* U = carry bit of T[i] */ + u = *tmpc >> ((mp_digit)DIGIT_BIT); + + /* take away carry bit from T[i] */ + *tmpc++ &= MP_MASK; + } + } + + /* add carry */ + *tmpc++ = u; + + /* clear digits above oldused */ + for (i = c->used; i < olduse; i++) { + *tmpc++ = 0; + } + } + + mp_clamp (c); + return MP_OKAY; +} + + +/* low level subtraction (assumes |a| > |b|), HAC pp.595 Algorithm 14.9 */ +static int ICACHE_FLASH_ATTR +s_mp_sub (mp_int * a, mp_int * b, mp_int * c) +{ + int olduse, res, min, max; + + /* find sizes */ + min = b->used; + max = a->used; + + /* init result */ + if (c->alloc < max) { + if ((res = mp_grow (c, max)) != MP_OKAY) { + return res; + } + } + olduse = c->used; + c->used = max; + + { + register mp_digit u, *tmpa, *tmpb, *tmpc; + register int i; + + /* alias for digit pointers */ + tmpa = a->dp; + tmpb = b->dp; + tmpc = c->dp; + + /* set carry to zero */ + u = 0; + for (i = 0; i < min; i++) { + /* T[i] = A[i] - B[i] - U */ + *tmpc = *tmpa++ - *tmpb++ - u; + + /* U = carry bit of T[i] + * Note this saves performing an AND operation since + * if a carry does occur it will propagate all the way to the + * MSB. As a result a single shift is enough to get the carry + */ + u = *tmpc >> ((mp_digit)(CHAR_BIT * sizeof (mp_digit) - 1)); + + /* Clear carry from T[i] */ + *tmpc++ &= MP_MASK; + } + + /* now copy higher words if any, e.g. if A has more digits than B */ + for (; i < max; i++) { + /* T[i] = A[i] - U */ + *tmpc = *tmpa++ - u; + + /* U = carry bit of T[i] */ + u = *tmpc >> ((mp_digit)(CHAR_BIT * sizeof (mp_digit) - 1)); + + /* Clear carry from T[i] */ + *tmpc++ &= MP_MASK; + } + + /* clear digits above used (since we may not have grown result above) */ + for (i = c->used; i < olduse; i++) { + *tmpc++ = 0; + } + } + + mp_clamp (c); + return MP_OKAY; +} + + +/* init a new mp_int */ +static int ICACHE_FLASH_ATTR +mp_init (mp_int * a) +{ + int i; + + /* allocate memory required and clear it */ + a->dp = OPT_CAST(mp_digit) XMALLOC (sizeof (mp_digit) * MP_PREC); + if (a->dp == NULL) { + return MP_MEM; + } + + /* set the digits to zero */ + for (i = 0; i < MP_PREC; i++) { + a->dp[i] = 0; + } + + /* set the used to zero, allocated digits to the default precision + * and sign to positive */ + a->used = 0; + a->alloc = MP_PREC; + a->sign = MP_ZPOS; + + return MP_OKAY; +} + + +/* clear one (frees) */ +static void ICACHE_FLASH_ATTR +mp_clear (mp_int * a) +{ + int i; + + /* only do anything if a hasn't been freed previously */ + if (a->dp != NULL) { + /* first zero the digits */ + for (i = 0; i < a->used; i++) { + a->dp[i] = 0; + } + + /* free ram */ + XFREE(a->dp); + + /* reset members to make debugging easier */ + a->dp = NULL; + a->alloc = a->used = 0; + a->sign = MP_ZPOS; + } +} + + +/* high level addition (handles signs) */ +static int ICACHE_FLASH_ATTR +mp_add (mp_int * a, mp_int * b, mp_int * c) +{ + int sa, sb, res; + + /* get sign of both inputs */ + sa = a->sign; + sb = b->sign; + + /* handle two cases, not four */ + if (sa == sb) { + /* both positive or both negative */ + /* add their magnitudes, copy the sign */ + c->sign = sa; + res = s_mp_add (a, b, c); + } else { + /* one positive, the other negative */ + /* subtract the one with the greater magnitude from */ + /* the one of the lesser magnitude. The result gets */ + /* the sign of the one with the greater magnitude. */ + if (mp_cmp_mag (a, b) == MP_LT) { + c->sign = sb; + res = s_mp_sub (b, a, c); + } else { + c->sign = sa; + res = s_mp_sub (a, b, c); + } + } + return res; +} + + +/* high level subtraction (handles signs) */ +static int ICACHE_FLASH_ATTR +mp_sub (mp_int * a, mp_int * b, mp_int * c) +{ + int sa, sb, res; + + sa = a->sign; + sb = b->sign; + + if (sa != sb) { + /* subtract a negative from a positive, OR */ + /* subtract a positive from a negative. */ + /* In either case, ADD their magnitudes, */ + /* and use the sign of the first number. */ + c->sign = sa; + res = s_mp_add (a, b, c); + } else { + /* subtract a positive from a positive, OR */ + /* subtract a negative from a negative. */ + /* First, take the difference between their */ + /* magnitudes, then... */ + if (mp_cmp_mag (a, b) != MP_LT) { + /* Copy the sign from the first */ + c->sign = sa; + /* The first has a larger or equal magnitude */ + res = s_mp_sub (a, b, c); + } else { + /* The result has the *opposite* sign from */ + /* the first number. */ + c->sign = (sa == MP_ZPOS) ? MP_NEG : MP_ZPOS; + /* The second has a larger magnitude */ + res = s_mp_sub (b, a, c); + } + } + return res; +} + + +/* high level multiplication (handles sign) */ +static int ICACHE_FLASH_ATTR +mp_mul (mp_int * a, mp_int * b, mp_int * c) +{ + int res, neg; + neg = (a->sign == b->sign) ? MP_ZPOS : MP_NEG; + + /* use Toom-Cook? */ +#ifdef BN_MP_TOOM_MUL_C + if (MIN (a->used, b->used) >= TOOM_MUL_CUTOFF) { + res = mp_toom_mul(a, b, c); + } else +#endif +#ifdef BN_MP_KARATSUBA_MUL_C + /* use Karatsuba? */ + if (MIN (a->used, b->used) >= KARATSUBA_MUL_CUTOFF) { + res = mp_karatsuba_mul (a, b, c); + } else +#endif + { + /* can we use the fast multiplier? + * + * The fast multiplier can be used if the output will + * have less than MP_WARRAY digits and the number of + * digits won't affect carry propagation + */ +#ifdef BN_FAST_S_MP_MUL_DIGS_C + int digs = a->used + b->used + 1; + + if ((digs < MP_WARRAY) && + MIN(a->used, b->used) <= + (1 << ((CHAR_BIT * sizeof (mp_word)) - (2 * DIGIT_BIT)))) { + res = fast_s_mp_mul_digs (a, b, c, digs); + } else +#endif +#ifdef BN_S_MP_MUL_DIGS_C + res = s_mp_mul (a, b, c); /* uses s_mp_mul_digs */ +#else +#error mp_mul could fail + res = MP_VAL; +#endif + + } + c->sign = (c->used > 0) ? neg : MP_ZPOS; + return res; +} + + +/* d = a * b (mod c) */ +static int ICACHE_FLASH_ATTR +mp_mulmod (mp_int * a, mp_int * b, mp_int * c, mp_int * d) +{ + int res; + mp_int t; + + if ((res = mp_init (&t)) != MP_OKAY) { + return res; + } + + if ((res = mp_mul (a, b, &t)) != MP_OKAY) { + mp_clear (&t); + return res; + } + res = mp_mod (&t, c, d); + mp_clear (&t); + return res; +} + + +/* c = a mod b, 0 <= c < b */ +static int ICACHE_FLASH_ATTR +mp_mod (mp_int * a, mp_int * b, mp_int * c) +{ + mp_int t; + int res; + + if ((res = mp_init (&t)) != MP_OKAY) { + return res; + } + + if ((res = mp_div (a, b, NULL, &t)) != MP_OKAY) { + mp_clear (&t); + return res; + } + + if (t.sign != b->sign) { + res = mp_add (b, &t, c); + } else { + res = MP_OKAY; + mp_exch (&t, c); + } + + mp_clear (&t); + return res; +} + + +/* this is a shell function that calls either the normal or Montgomery + * exptmod functions. Originally the call to the montgomery code was + * embedded in the normal function but that wasted a lot of stack space + * for nothing (since 99% of the time the Montgomery code would be called) + */ +static int ICACHE_FLASH_ATTR +mp_exptmod (mp_int * G, mp_int * X, mp_int * P, mp_int * Y) +{ + int dr; + + /* modulus P must be positive */ + if (P->sign == MP_NEG) { + return MP_VAL; + } + + /* if exponent X is negative we have to recurse */ + if (X->sign == MP_NEG) { +#ifdef LTM_NO_NEG_EXP + return MP_VAL; +#else /* LTM_NO_NEG_EXP */ +#ifdef BN_MP_INVMOD_C + mp_int tmpG, tmpX; + int err; + + /* first compute 1/G mod P */ + if ((err = mp_init(&tmpG)) != MP_OKAY) { + return err; + } + if ((err = mp_invmod(G, P, &tmpG)) != MP_OKAY) { + mp_clear(&tmpG); + return err; + } + + /* now get |X| */ + if ((err = mp_init(&tmpX)) != MP_OKAY) { + mp_clear(&tmpG); + return err; + } + if ((err = mp_abs(X, &tmpX)) != MP_OKAY) { + mp_clear_multi(&tmpG, &tmpX, NULL); + return err; + } + + /* and now compute (1/G)**|X| instead of G**X [X < 0] */ + err = mp_exptmod(&tmpG, &tmpX, P, Y); + mp_clear_multi(&tmpG, &tmpX, NULL); + return err; +#else +#error mp_exptmod would always fail + /* no invmod */ + return MP_VAL; +#endif +#endif /* LTM_NO_NEG_EXP */ + } + +/* modified diminished radix reduction */ +#if defined(BN_MP_REDUCE_IS_2K_L_C) && defined(BN_MP_REDUCE_2K_L_C) && defined(BN_S_MP_EXPTMOD_C) + if (mp_reduce_is_2k_l(P) == MP_YES) { + return s_mp_exptmod(G, X, P, Y, 1); + } +#endif + +#ifdef BN_MP_DR_IS_MODULUS_C + /* is it a DR modulus? */ + dr = mp_dr_is_modulus(P); +#else + /* default to no */ + dr = 0; +#endif + +#ifdef BN_MP_REDUCE_IS_2K_C + /* if not, is it a unrestricted DR modulus? */ + if (dr == 0) { + dr = mp_reduce_is_2k(P) << 1; + } +#endif + + /* if the modulus is odd or dr != 0 use the montgomery method */ +#ifdef BN_MP_EXPTMOD_FAST_C + if (mp_isodd (P) == 1 || dr != 0) { + return mp_exptmod_fast (G, X, P, Y, dr); + } else { +#endif +#ifdef BN_S_MP_EXPTMOD_C + /* otherwise use the generic Barrett reduction technique */ + return s_mp_exptmod (G, X, P, Y, 0); +#else +#error mp_exptmod could fail + /* no exptmod for evens */ + return MP_VAL; +#endif +#ifdef BN_MP_EXPTMOD_FAST_C + } +#endif +} + + +/* compare two ints (signed)*/ +static int ICACHE_FLASH_ATTR +mp_cmp (mp_int * a, mp_int * b) +{ + /* compare based on sign */ + if (a->sign != b->sign) { + if (a->sign == MP_NEG) { + return MP_LT; + } else { + return MP_GT; + } + } + + /* compare digits */ + if (a->sign == MP_NEG) { + /* if negative compare opposite direction */ + return mp_cmp_mag(b, a); + } else { + return mp_cmp_mag(a, b); + } +} + + +/* compare a digit */ +static int ICACHE_FLASH_ATTR +mp_cmp_d(mp_int * a, mp_digit b) +{ + /* compare based on sign */ + if (a->sign == MP_NEG) { + return MP_LT; + } + + /* compare based on magnitude */ + if (a->used > 1) { + return MP_GT; + } + + /* compare the only digit of a to b */ + if (a->dp[0] > b) { + return MP_GT; + } else if (a->dp[0] < b) { + return MP_LT; + } else { + return MP_EQ; + } +} + + +#ifndef LTM_NO_NEG_EXP +/* hac 14.61, pp608 */ +static int ICACHE_FLASH_ATTR +mp_invmod (mp_int * a, mp_int * b, mp_int * c) +{ + /* b cannot be negative */ + if (b->sign == MP_NEG || mp_iszero(b) == 1) { + return MP_VAL; + } + +#ifdef BN_FAST_MP_INVMOD_C + /* if the modulus is odd we can use a faster routine instead */ + if (mp_isodd (b) == 1) { + return fast_mp_invmod (a, b, c); + } +#endif + +#ifdef BN_MP_INVMOD_SLOW_C + return mp_invmod_slow(a, b, c); +#endif + +#ifndef BN_FAST_MP_INVMOD_C +#ifndef BN_MP_INVMOD_SLOW_C +#error mp_invmod would always fail +#endif +#endif + return MP_VAL; +} +#endif /* LTM_NO_NEG_EXP */ + + +/* get the size for an unsigned equivalent */ +static int ICACHE_FLASH_ATTR +mp_unsigned_bin_size (mp_int * a) +{ + int size = mp_count_bits (a); + return (size / 8 + ((size & 7) != 0 ? 1 : 0)); +} + + +#ifndef LTM_NO_NEG_EXP +/* hac 14.61, pp608 */ +static int ICACHE_FLASH_ATTR +mp_invmod_slow (mp_int * a, mp_int * b, mp_int * c) +{ + mp_int x, y, u, v, A, B, C, D; + int res; + + /* b cannot be negative */ + if (b->sign == MP_NEG || mp_iszero(b) == 1) { + return MP_VAL; + } + + /* init temps */ + if ((res = mp_init_multi(&x, &y, &u, &v, + &A, &B, &C, &D, NULL)) != MP_OKAY) { + return res; + } + + /* x = a, y = b */ + if ((res = mp_mod(a, b, &x)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_copy (b, &y)) != MP_OKAY) { + goto LBL_ERR; + } + + /* 2. [modified] if x,y are both even then return an error! */ + if (mp_iseven (&x) == 1 && mp_iseven (&y) == 1) { + res = MP_VAL; + goto LBL_ERR; + } + + /* 3. u=x, v=y, A=1, B=0, C=0,D=1 */ + if ((res = mp_copy (&x, &u)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_copy (&y, &v)) != MP_OKAY) { + goto LBL_ERR; + } + mp_set (&A, 1); + mp_set (&D, 1); + +top: + /* 4. while u is even do */ + while (mp_iseven (&u) == 1) { + /* 4.1 u = u/2 */ + if ((res = mp_div_2 (&u, &u)) != MP_OKAY) { + goto LBL_ERR; + } + /* 4.2 if A or B is odd then */ + if (mp_isodd (&A) == 1 || mp_isodd (&B) == 1) { + /* A = (A+y)/2, B = (B-x)/2 */ + if ((res = mp_add (&A, &y, &A)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_sub (&B, &x, &B)) != MP_OKAY) { + goto LBL_ERR; + } + } + /* A = A/2, B = B/2 */ + if ((res = mp_div_2 (&A, &A)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_div_2 (&B, &B)) != MP_OKAY) { + goto LBL_ERR; + } + } + + /* 5. while v is even do */ + while (mp_iseven (&v) == 1) { + /* 5.1 v = v/2 */ + if ((res = mp_div_2 (&v, &v)) != MP_OKAY) { + goto LBL_ERR; + } + /* 5.2 if C or D is odd then */ + if (mp_isodd (&C) == 1 || mp_isodd (&D) == 1) { + /* C = (C+y)/2, D = (D-x)/2 */ + if ((res = mp_add (&C, &y, &C)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_sub (&D, &x, &D)) != MP_OKAY) { + goto LBL_ERR; + } + } + /* C = C/2, D = D/2 */ + if ((res = mp_div_2 (&C, &C)) != MP_OKAY) { + goto LBL_ERR; + } + if ((res = mp_div_2 (&D, &D)) != MP_OKAY) { + goto LBL_ERR; + } + } + + /* 6. if u >= v then */ + if (mp_cmp (&u, &v) != MP_LT) { + /* u = u - v, A = A - C, B = B - D */ + if ((res = mp_sub (&u, &v, &u)) != MP_OKAY) { + goto LBL_ERR; + } + + if ((res = mp_sub (&A, &C, &A)) != MP_OKAY) { + goto LBL_ERR; + } + + if ((res = mp_sub (&B, &D, &B)) != MP_OKAY) { + goto LBL_ERR; + } + } else { + /* v - v - u, C = C - A, D = D - B */ + if ((res = mp_sub (&v, &u, &v)) != MP_OKAY) { + goto LBL_ERR; + } + + if ((res = mp_sub (&C, &A, &C)) != MP_OKAY) { + goto LBL_ERR; + } + + if ((res = mp_sub (&D, &B, &D)) != MP_OKAY) { + goto LBL_ERR; + } + } + + /* if not zero goto step 4 */ + if (mp_iszero (&u) == 0) + goto top; + + /* now a = C, b = D, gcd == g*v */ + + /* if v != 1 then there is no inverse */ + if (mp_cmp_d (&v, 1) != MP_EQ) { + res = MP_VAL; + goto LBL_ERR; + } + + /* if its too low */ + while (mp_cmp_d(&C, 0) == MP_LT) { + if ((res = mp_add(&C, b, &C)) != MP_OKAY) { + goto LBL_ERR; + } + } + + /* too big */ + while (mp_cmp_mag(&C, b) != MP_LT) { + if ((res = mp_sub(&C, b, &C)) != MP_OKAY) { + goto LBL_ERR; + } + } + + /* C is now the inverse */ + mp_exch (&C, c); + res = MP_OKAY; +LBL_ERR:mp_clear_multi (&x, &y, &u, &v, &A, &B, &C, &D, NULL); + return res; +} +#endif /* LTM_NO_NEG_EXP */ + + +/* compare maginitude of two ints (unsigned) */ +static int ICACHE_FLASH_ATTR +mp_cmp_mag (mp_int * a, mp_int * b) +{ + int n; + mp_digit *tmpa, *tmpb; + + /* compare based on # of non-zero digits */ + if (a->used > b->used) { + return MP_GT; + } + + if (a->used < b->used) { + return MP_LT; + } + + /* alias for a */ + tmpa = a->dp + (a->used - 1); + + /* alias for b */ + tmpb = b->dp + (a->used - 1); + + /* compare based on digits */ + for (n = 0; n < a->used; ++n, --tmpa, --tmpb) { + if (*tmpa > *tmpb) { + return MP_GT; + } + + if (*tmpa < *tmpb) { + return MP_LT; + } + } + return MP_EQ; +} + + +/* reads a unsigned char array, assumes the msb is stored first [big endian] */ +static int ICACHE_FLASH_ATTR +mp_read_unsigned_bin (mp_int * a, const unsigned char *b, int c) +{ + int res; + + /* make sure there are at least two digits */ + if (a->alloc < 2) { + if ((res = mp_grow(a, 2)) != MP_OKAY) { + return res; + } + } + + /* zero the int */ + mp_zero (a); + + /* read the bytes in */ + while (c-- > 0) { + if ((res = mp_mul_2d (a, 8, a)) != MP_OKAY) { + return res; + } + +#ifndef MP_8BIT + a->dp[0] |= *b++; + a->used += 1; +#else + a->dp[0] = (*b & MP_MASK); + a->dp[1] |= ((*b++ >> 7U) & 1); + a->used += 2; +#endif + } + mp_clamp (a); + return MP_OKAY; +} + + +/* store in unsigned [big endian] format */ +static int ICACHE_FLASH_ATTR +mp_to_unsigned_bin (mp_int * a, unsigned char *b) +{ + int x, res; + mp_int t; + + if ((res = mp_init_copy (&t, a)) != MP_OKAY) { + return res; + } + + x = 0; + while (mp_iszero (&t) == 0) { +#ifndef MP_8BIT + b[x++] = (unsigned char) (t.dp[0] & 255); +#else + b[x++] = (unsigned char) (t.dp[0] | ((t.dp[1] & 0x01) << 7)); +#endif + if ((res = mp_div_2d (&t, 8, &t, NULL)) != MP_OKAY) { + mp_clear (&t); + return res; + } + } + bn_reverse (b, x); + mp_clear (&t); + return MP_OKAY; +} + + +/* shift right by a certain bit count (store quotient in c, optional remainder in d) */ +static int ICACHE_FLASH_ATTR +mp_div_2d (mp_int * a, int b, mp_int * c, mp_int * d) +{ + mp_digit D, r, rr; + int x, res; + mp_int t; + + + /* if the shift count is <= 0 then we do no work */ + if (b <= 0) { + res = mp_copy (a, c); + if (d != NULL) { + mp_zero (d); + } + return res; + } + + if ((res = mp_init (&t)) != MP_OKAY) { + return res; + } + + /* get the remainder */ + if (d != NULL) { + if ((res = mp_mod_2d (a, b, &t)) != MP_OKAY) { + mp_clear (&t); + return res; + } + } + + /* copy */ + if ((res = mp_copy (a, c)) != MP_OKAY) { + mp_clear (&t); + return res; + } + + /* shift by as many digits in the bit count */ + if (b >= (int)DIGIT_BIT) { + mp_rshd (c, b / DIGIT_BIT); + } + + /* shift any bit count < DIGIT_BIT */ + D = (mp_digit) (b % DIGIT_BIT); + if (D != 0) { + register mp_digit *tmpc, mask, shift; + + /* mask */ + mask = (((mp_digit)1) << D) - 1; + + /* shift for lsb */ + shift = DIGIT_BIT - D; + + /* alias */ + tmpc = c->dp + (c->used - 1); + + /* carry */ + r = 0; + for (x = c->used - 1; x >= 0; x--) { + /* get the lower bits of this word in a temp */ + rr = *tmpc & mask; + + /* shift the current word and mix in the carry bits from the previous word */ + *tmpc = (*tmpc >> D) | (r << shift); + --tmpc; + + /* set the carry to the carry bits of the current word found above */ + r = rr; + } + } + mp_clamp (c); + if (d != NULL) { + mp_exch (&t, d); + } + mp_clear (&t); + return MP_OKAY; +} + + +static int ICACHE_FLASH_ATTR +mp_init_copy (mp_int * a, mp_int * b) +{ + int res; + + if ((res = mp_init (a)) != MP_OKAY) { + return res; + } + return mp_copy (b, a); +} + + +/* set to zero */ +static void ICACHE_FLASH_ATTR +mp_zero (mp_int * a) +{ + int n; + mp_digit *tmp; + + a->sign = MP_ZPOS; + a->used = 0; + + tmp = a->dp; + for (n = 0; n < a->alloc; n++) { + *tmp++ = 0; + } +} + + +/* copy, b = a */ +static int ICACHE_FLASH_ATTR +mp_copy (mp_int * a, mp_int * b) +{ + int res, n; + + /* if dst == src do nothing */ + if (a == b) { + return MP_OKAY; + } + + /* grow dest */ + if (b->alloc < a->used) { + if ((res = mp_grow (b, a->used)) != MP_OKAY) { + return res; + } + } + + /* zero b and copy the parameters over */ + { + register mp_digit *tmpa, *tmpb; + + /* pointer aliases */ + + /* source */ + tmpa = a->dp; + + /* destination */ + tmpb = b->dp; + + /* copy all the digits */ + for (n = 0; n < a->used; n++) { + *tmpb++ = *tmpa++; + } + + /* clear high digits */ + for (; n < b->used; n++) { + *tmpb++ = 0; + } + } + + /* copy used count and sign */ + b->used = a->used; + b->sign = a->sign; + return MP_OKAY; +} + + +/* shift right a certain amount of digits */ +static void ICACHE_FLASH_ATTR +mp_rshd (mp_int * a, int b) +{ + int x; + + /* if b <= 0 then ignore it */ + if (b <= 0) { + return; + } + + /* if b > used then simply zero it and return */ + if (a->used <= b) { + mp_zero (a); + return; + } + + { + register mp_digit *bottom, *top; + + /* shift the digits down */ + + /* bottom */ + bottom = a->dp; + + /* top [offset into digits] */ + top = a->dp + b; + + /* this is implemented as a sliding window where + * the window is b-digits long and digits from + * the top of the window are copied to the bottom + * + * e.g. + + b-2 | b-1 | b0 | b1 | b2 | ... | bb | ----> + /\ | ----> + \-------------------/ ----> + */ + for (x = 0; x < (a->used - b); x++) { + *bottom++ = *top++; + } + + /* zero the top digits */ + for (; x < a->used; x++) { + *bottom++ = 0; + } + } + + /* remove excess digits */ + a->used -= b; +} + + +/* swap the elements of two integers, for cases where you can't simply swap the + * mp_int pointers around + */ +static void ICACHE_FLASH_ATTR +mp_exch (mp_int * a, mp_int * b) +{ + mp_int t; + + t = *a; + *a = *b; + *b = t; +} + + +/* trim unused digits + * + * This is used to ensure that leading zero digits are + * trimed and the leading "used" digit will be non-zero + * Typically very fast. Also fixes the sign if there + * are no more leading digits + */ +static void ICACHE_FLASH_ATTR +mp_clamp (mp_int * a) +{ + /* decrease used while the most significant digit is + * zero. + */ + while (a->used > 0 && a->dp[a->used - 1] == 0) { + --(a->used); + } + + /* reset the sign flag if used == 0 */ + if (a->used == 0) { + a->sign = MP_ZPOS; + } +} + + +/* grow as required */ +static int ICACHE_FLASH_ATTR +mp_grow (mp_int * a, int size) +{ + int i; + mp_digit *tmp; + + /* if the alloc size is smaller alloc more ram */ + if (a->alloc < size) { + /* ensure there are always at least MP_PREC digits extra on top */ + size += (MP_PREC * 2) - (size % MP_PREC); + + /* reallocate the array a->dp + * + * We store the return in a temporary variable + * in case the operation failed we don't want + * to overwrite the dp member of a. + */ + tmp = OPT_CAST(mp_digit) XREALLOC (a->dp, sizeof (mp_digit) * size); + if (tmp == NULL) { + /* reallocation failed but "a" is still valid [can be freed] */ + return MP_MEM; + } + + /* reallocation succeeded so set a->dp */ + a->dp = tmp; + + /* zero excess digits */ + i = a->alloc; + a->alloc = size; + for (; i < a->alloc; i++) { + a->dp[i] = 0; + } + } + return MP_OKAY; +} + + +#ifdef BN_MP_ABS_C +/* b = |a| + * + * Simple function copies the input and fixes the sign to positive + */ +static int ICACHE_FLASH_ATTR +mp_abs (mp_int * a, mp_int * b) +{ + int res; + + /* copy a to b */ + if (a != b) { + if ((res = mp_copy (a, b)) != MP_OKAY) { + return res; + } + } + + /* force the sign of b to positive */ + b->sign = MP_ZPOS; + + return MP_OKAY; +} +#endif + + +/* set to a digit */ +static void ICACHE_FLASH_ATTR +mp_set (mp_int * a, mp_digit b) +{ + mp_zero (a); + a->dp[0] = b & MP_MASK; + a->used = (a->dp[0] != 0) ? 1 : 0; +} + + +#ifndef LTM_NO_NEG_EXP +/* b = a/2 */ +static int ICACHE_FLASH_ATTR +mp_div_2(mp_int * a, mp_int * b) +{ + int x, res, oldused; + + /* copy */ + if (b->alloc < a->used) { + if ((res = mp_grow (b, a->used)) != MP_OKAY) { + return res; + } + } + + oldused = b->used; + b->used = a->used; + { + register mp_digit r, rr, *tmpa, *tmpb; + + /* source alias */ + tmpa = a->dp + b->used - 1; + + /* dest alias */ + tmpb = b->dp + b->used - 1; + + /* carry */ + r = 0; + for (x = b->used - 1; x >= 0; x--) { + /* get the carry for the next iteration */ + rr = *tmpa & 1; + + /* shift the current digit, add in carry and store */ + *tmpb-- = (*tmpa-- >> 1) | (r << (DIGIT_BIT - 1)); + + /* forward carry to next iteration */ + r = rr; + } + + /* zero excess digits */ + tmpb = b->dp + b->used; + for (x = b->used; x < oldused; x++) { + *tmpb++ = 0; + } + } + b->sign = a->sign; + mp_clamp (b); + return MP_OKAY; +} +#endif /* LTM_NO_NEG_EXP */ + + +/* shift left by a certain bit count */ +static int ICACHE_FLASH_ATTR +mp_mul_2d (mp_int * a, int b, mp_int * c) +{ + mp_digit d; + int res; + + /* copy */ + if (a != c) { + if ((res = mp_copy (a, c)) != MP_OKAY) { + return res; + } + } + + if (c->alloc < (int)(c->used + b/DIGIT_BIT + 1)) { + if ((res = mp_grow (c, c->used + b / DIGIT_BIT + 1)) != MP_OKAY) { + return res; + } + } + + /* shift by as many digits in the bit count */ + if (b >= (int)DIGIT_BIT) { + if ((res = mp_lshd (c, b / DIGIT_BIT)) != MP_OKAY) { + return res; + } + } + + /* shift any bit count < DIGIT_BIT */ + d = (mp_digit) (b % DIGIT_BIT); + if (d != 0) { + register mp_digit *tmpc, shift, mask, r, rr; + register int x; + + /* bitmask for carries */ + mask = (((mp_digit)1) << d) - 1; + + /* shift for msbs */ + shift = DIGIT_BIT - d; + + /* alias */ + tmpc = c->dp; + + /* carry */ + r = 0; + for (x = 0; x < c->used; x++) { + /* get the higher bits of the current word */ + rr = (*tmpc >> shift) & mask; + + /* shift the current word and OR in the carry */ + *tmpc = ((*tmpc << d) | r) & MP_MASK; + ++tmpc; + + /* set the carry to the carry bits of the current word */ + r = rr; + } + + /* set final carry */ + if (r != 0) { + c->dp[(c->used)++] = r; + } + } + mp_clamp (c); + return MP_OKAY; +} + + +#ifdef BN_MP_INIT_MULTI_C +static int ICACHE_FLASH_ATTR +mp_init_multi(mp_int *mp, ...) +{ + mp_err res = MP_OKAY; /* Assume ok until proven otherwise */ + int n = 0; /* Number of ok inits */ + mp_int* cur_arg = mp; + va_list args; + + va_start(args, mp); /* init args to next argument from caller */ + while (cur_arg != NULL) { + if (mp_init(cur_arg) != MP_OKAY) { + /* Oops - error! Back-track and mp_clear what we already + succeeded in init-ing, then return error. + */ + va_list clean_args; + + /* end the current list */ + va_end(args); + + /* now start cleaning up */ + cur_arg = mp; + va_start(clean_args, mp); + while (n--) { + mp_clear(cur_arg); + cur_arg = va_arg(clean_args, mp_int*); + } + va_end(clean_args); + res = MP_MEM; + break; + } + n++; + cur_arg = va_arg(args, mp_int*); + } + va_end(args); + return res; /* Assumed ok, if error flagged above. */ +} +#endif + + +#ifdef BN_MP_CLEAR_MULTI_C +static void ICACHE_FLASH_ATTR +mp_clear_multi(mp_int *mp, ...) +{ + mp_int* next_mp = mp; + va_list args; + va_start(args, mp); + while (next_mp != NULL) { + mp_clear(next_mp); + next_mp = va_arg(args, mp_int*); + } + va_end(args); +} +#endif + + +/* shift left a certain amount of digits */ +static int ICACHE_FLASH_ATTR +mp_lshd (mp_int * a, int b) +{ + int x, res; + + /* if its less than zero return */ + if (b <= 0) { + return MP_OKAY; + } + + /* grow to fit the new digits */ + if (a->alloc < a->used + b) { + if ((res = mp_grow (a, a->used + b)) != MP_OKAY) { + return res; + } + } + + { + register mp_digit *top, *bottom; + + /* increment the used by the shift amount then copy upwards */ + a->used += b; + + /* top */ + top = a->dp + a->used - 1; + + /* base */ + bottom = a->dp + a->used - 1 - b; + + /* much like mp_rshd this is implemented using a sliding window + * except the window goes the otherway around. Copying from + * the bottom to the top. see bn_mp_rshd.c for more info. + */ + for (x = a->used - 1; x >= b; x--) { + *top-- = *bottom--; + } + + /* zero the lower digits */ + top = a->dp; + for (x = 0; x < b; x++) { + *top++ = 0; + } + } + return MP_OKAY; +} + + +/* returns the number of bits in an int */ +static int ICACHE_FLASH_ATTR +mp_count_bits (mp_int * a) +{ + int r; + mp_digit q; + + /* shortcut */ + if (a->used == 0) { + return 0; + } + + /* get number of digits and add that */ + r = (a->used - 1) * DIGIT_BIT; + + /* take the last digit and count the bits in it */ + q = a->dp[a->used - 1]; + while (q > ((mp_digit) 0)) { + ++r; + q >>= ((mp_digit) 1); + } + return r; +} + + +/* calc a value mod 2**b */ +static int ICACHE_FLASH_ATTR +mp_mod_2d (mp_int * a, int b, mp_int * c) +{ + int x, res; + + /* if b is <= 0 then zero the int */ + if (b <= 0) { + mp_zero (c); + return MP_OKAY; + } + + /* if the modulus is larger than the value than return */ + if (b >= (int) (a->used * DIGIT_BIT)) { + res = mp_copy (a, c); + return res; + } + + /* copy */ + if ((res = mp_copy (a, c)) != MP_OKAY) { + return res; + } + + /* zero digits above the last digit of the modulus */ + for (x = (b / DIGIT_BIT) + ((b % DIGIT_BIT) == 0 ? 0 : 1); x < c->used; x++) { + c->dp[x] = 0; + } + /* clear the digit that is not completely outside/inside the modulus */ + c->dp[b / DIGIT_BIT] &= + (mp_digit) ((((mp_digit) 1) << (((mp_digit) b) % DIGIT_BIT)) - ((mp_digit) 1)); + mp_clamp (c); + return MP_OKAY; +} + + +#ifdef BN_MP_DIV_SMALL + +/* slower bit-bang division... also smaller */ +static int ICACHE_FLASH_ATTR +mp_div(mp_int * a, mp_int * b, mp_int * c, mp_int * d) +{ + mp_int ta, tb, tq, q; + int res, n, n2; + + /* is divisor zero ? */ + if (mp_iszero (b) == 1) { + return MP_VAL; + } + + /* if a < b then q=0, r = a */ + if (mp_cmp_mag (a, b) == MP_LT) { + if (d != NULL) { + res = mp_copy (a, d); + } else { + res = MP_OKAY; + } + if (c != NULL) { + mp_zero (c); + } + return res; + } + + /* init our temps */ + if ((res = mp_init_multi(&ta, &tb, &tq, &q, NULL) != MP_OKAY)) { + return res; + } + + + mp_set(&tq, 1); + n = mp_count_bits(a) - mp_count_bits(b); + if (((res = mp_abs(a, &ta)) != MP_OKAY) || + ((res = mp_abs(b, &tb)) != MP_OKAY) || + ((res = mp_mul_2d(&tb, n, &tb)) != MP_OKAY) || + ((res = mp_mul_2d(&tq, n, &tq)) != MP_OKAY)) { + goto LBL_ERR; + } + + while (n-- >= 0) { + if (mp_cmp(&tb, &ta) != MP_GT) { + if (((res = mp_sub(&ta, &tb, &ta)) != MP_OKAY) || + ((res = mp_add(&q, &tq, &q)) != MP_OKAY)) { + goto LBL_ERR; + } + } + if (((res = mp_div_2d(&tb, 1, &tb, NULL)) != MP_OKAY) || + ((res = mp_div_2d(&tq, 1, &tq, NULL)) != MP_OKAY)) { + goto LBL_ERR; + } + } + + /* now q == quotient and ta == remainder */ + n = a->sign; + n2 = (a->sign == b->sign ? MP_ZPOS : MP_NEG); + if (c != NULL) { + mp_exch(c, &q); + c->sign = (mp_iszero(c) == MP_YES) ? MP_ZPOS : n2; + } + if (d != NULL) { + mp_exch(d, &ta); + d->sign = (mp_iszero(d) == MP_YES) ? MP_ZPOS : n; + } +LBL_ERR: + mp_clear_multi(&ta, &tb, &tq, &q, NULL); + return res; +} + +#else + +/* integer signed division. + * c*b + d == a [e.g. a/b, c=quotient, d=remainder] + * HAC pp.598 Algorithm 14.20 + * + * Note that the description in HAC is horribly + * incomplete. For example, it doesn't consider + * the case where digits are removed from 'x' in + * the inner loop. It also doesn't consider the + * case that y has fewer than three digits, etc.. + * + * The overall algorithm is as described as + * 14.20 from HAC but fixed to treat these cases. +*/ +static int ICACHE_FLASH_ATTR +mp_div (mp_int * a, mp_int * b, mp_int * c, mp_int * d) +{ + mp_int q, x, y, t1, t2; + int res, n, t, i, norm, neg; + + /* is divisor zero ? */ + if (mp_iszero (b) == 1) { + return MP_VAL; + } + + /* if a < b then q=0, r = a */ + if (mp_cmp_mag (a, b) == MP_LT) { + if (d != NULL) { + res = mp_copy (a, d); + } else { + res = MP_OKAY; + } + if (c != NULL) { + mp_zero (c); + } + return res; + } + + if ((res = mp_init_size (&q, a->used + 2)) != MP_OKAY) { + return res; + } + q.used = a->used + 2; + + if ((res = mp_init (&t1)) != MP_OKAY) { + goto LBL_Q; + } + + if ((res = mp_init (&t2)) != MP_OKAY) { + goto LBL_T1; + } + + if ((res = mp_init_copy (&x, a)) != MP_OKAY) { + goto LBL_T2; + } + + if ((res = mp_init_copy (&y, b)) != MP_OKAY) { + goto LBL_X; + } + + /* fix the sign */ + neg = (a->sign == b->sign) ? MP_ZPOS : MP_NEG; + x.sign = y.sign = MP_ZPOS; + + /* normalize both x and y, ensure that y >= b/2, [b == 2**DIGIT_BIT] */ + norm = mp_count_bits(&y) % DIGIT_BIT; + if (norm < (int)(DIGIT_BIT-1)) { + norm = (DIGIT_BIT-1) - norm; + if ((res = mp_mul_2d (&x, norm, &x)) != MP_OKAY) { + goto LBL_Y; + } + if ((res = mp_mul_2d (&y, norm, &y)) != MP_OKAY) { + goto LBL_Y; + } + } else { + norm = 0; + } + + /* note hac does 0 based, so if used==5 then its 0,1,2,3,4, e.g. use 4 */ + n = x.used - 1; + t = y.used - 1; + + /* while (x >= y*b**n-t) do { q[n-t] += 1; x -= y*b**{n-t} } */ + if ((res = mp_lshd (&y, n - t)) != MP_OKAY) { /* y = y*b**{n-t} */ + goto LBL_Y; + } + + while (mp_cmp (&x, &y) != MP_LT) { + ++(q.dp[n - t]); + if ((res = mp_sub (&x, &y, &x)) != MP_OKAY) { + goto LBL_Y; + } + } + + /* reset y by shifting it back down */ + mp_rshd (&y, n - t); + + /* step 3. for i from n down to (t + 1) */ + for (i = n; i >= (t + 1); i--) { + if (i > x.used) { + continue; + } + + /* step 3.1 if xi == yt then set q{i-t-1} to b-1, + * otherwise set q{i-t-1} to (xi*b + x{i-1})/yt */ + if (x.dp[i] == y.dp[t]) { + q.dp[i - t - 1] = ((((mp_digit)1) << DIGIT_BIT) - 1); + } else { + mp_word tmp; + tmp = ((mp_word) x.dp[i]) << ((mp_word) DIGIT_BIT); + tmp |= ((mp_word) x.dp[i - 1]); + tmp /= ((mp_word) y.dp[t]); + if (tmp > (mp_word) MP_MASK) + tmp = MP_MASK; + q.dp[i - t - 1] = (mp_digit) (tmp & (mp_word) (MP_MASK)); + } + + /* while (q{i-t-1} * (yt * b + y{t-1})) > + xi * b**2 + xi-1 * b + xi-2 + + do q{i-t-1} -= 1; + */ + q.dp[i - t - 1] = (q.dp[i - t - 1] + 1) & MP_MASK; + do { + q.dp[i - t - 1] = (q.dp[i - t - 1] - 1) & MP_MASK; + + /* find left hand */ + mp_zero (&t1); + t1.dp[0] = (t - 1 < 0) ? 0 : y.dp[t - 1]; + t1.dp[1] = y.dp[t]; + t1.used = 2; + if ((res = mp_mul_d (&t1, q.dp[i - t - 1], &t1)) != MP_OKAY) { + goto LBL_Y; + } + + /* find right hand */ + t2.dp[0] = (i - 2 < 0) ? 0 : x.dp[i - 2]; + t2.dp[1] = (i - 1 < 0) ? 0 : x.dp[i - 1]; + t2.dp[2] = x.dp[i]; + t2.used = 3; + } while (mp_cmp_mag(&t1, &t2) == MP_GT); + + /* step 3.3 x = x - q{i-t-1} * y * b**{i-t-1} */ + if ((res = mp_mul_d (&y, q.dp[i - t - 1], &t1)) != MP_OKAY) { + goto LBL_Y; + } + + if ((res = mp_lshd (&t1, i - t - 1)) != MP_OKAY) { + goto LBL_Y; + } + + if ((res = mp_sub (&x, &t1, &x)) != MP_OKAY) { + goto LBL_Y; + } + + /* if x < 0 then { x = x + y*b**{i-t-1}; q{i-t-1} -= 1; } */ + if (x.sign == MP_NEG) { + if ((res = mp_copy (&y, &t1)) != MP_OKAY) { + goto LBL_Y; + } + if ((res = mp_lshd (&t1, i - t - 1)) != MP_OKAY) { + goto LBL_Y; + } + if ((res = mp_add (&x, &t1, &x)) != MP_OKAY) { + goto LBL_Y; + } + + q.dp[i - t - 1] = (q.dp[i - t - 1] - 1UL) & MP_MASK; + } + } + + /* now q is the quotient and x is the remainder + * [which we have to normalize] + */ + + /* get sign before writing to c */ + x.sign = x.used == 0 ? MP_ZPOS : a->sign; + + if (c != NULL) { + mp_clamp (&q); + mp_exch (&q, c); + c->sign = neg; + } + + if (d != NULL) { + mp_div_2d (&x, norm, &x, NULL); + mp_exch (&x, d); + } + + res = MP_OKAY; + +LBL_Y:mp_clear (&y); +LBL_X:mp_clear (&x); +LBL_T2:mp_clear (&t2); +LBL_T1:mp_clear (&t1); +LBL_Q:mp_clear (&q); + return res; +} + +#endif + + +#ifdef MP_LOW_MEM + #define TAB_SIZE 32 +#else + #define TAB_SIZE 256 +#endif + +static int ICACHE_FLASH_ATTR +s_mp_exptmod (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode) +{ + mp_int M[TAB_SIZE], res, mu; + mp_digit buf; + int err, bitbuf, bitcpy, bitcnt, mode, digidx, x, y, winsize; + int (*redux)(mp_int*,mp_int*,mp_int*); + + /* find window size */ + x = mp_count_bits (X); + if (x <= 7) { + winsize = 2; + } else if (x <= 36) { + winsize = 3; + } else if (x <= 140) { + winsize = 4; + } else if (x <= 450) { + winsize = 5; + } else if (x <= 1303) { + winsize = 6; + } else if (x <= 3529) { + winsize = 7; + } else { + winsize = 8; + } + +#ifdef MP_LOW_MEM + if (winsize > 5) { + winsize = 5; + } +#endif + + /* init M array */ + /* init first cell */ + if ((err = mp_init(&M[1])) != MP_OKAY) { + return err; + } + + /* now init the second half of the array */ + for (x = 1<<(winsize-1); x < (1 << winsize); x++) { + if ((err = mp_init(&M[x])) != MP_OKAY) { + for (y = 1<<(winsize-1); y < x; y++) { + mp_clear (&M[y]); + } + mp_clear(&M[1]); + return err; + } + } + + /* create mu, used for Barrett reduction */ + if ((err = mp_init (&mu)) != MP_OKAY) { + goto LBL_M; + } + + if (redmode == 0) { + if ((err = mp_reduce_setup (&mu, P)) != MP_OKAY) { + goto LBL_MU; + } + redux = mp_reduce; + } else { + if ((err = mp_reduce_2k_setup_l (P, &mu)) != MP_OKAY) { + goto LBL_MU; + } + redux = mp_reduce_2k_l; + } + + /* create M table + * + * The M table contains powers of the base, + * e.g. M[x] = G**x mod P + * + * The first half of the table is not + * computed though accept for M[0] and M[1] + */ + if ((err = mp_mod (G, P, &M[1])) != MP_OKAY) { + goto LBL_MU; + } + + /* compute the value at M[1<<(winsize-1)] by squaring + * M[1] (winsize-1) times + */ + if ((err = mp_copy (&M[1], &M[1 << (winsize - 1)])) != MP_OKAY) { + goto LBL_MU; + } + + for (x = 0; x < (winsize - 1); x++) { + /* square it */ + if ((err = mp_sqr (&M[1 << (winsize - 1)], + &M[1 << (winsize - 1)])) != MP_OKAY) { + goto LBL_MU; + } + + /* reduce modulo P */ + if ((err = redux (&M[1 << (winsize - 1)], P, &mu)) != MP_OKAY) { + goto LBL_MU; + } + } + + /* create upper table, that is M[x] = M[x-1] * M[1] (mod P) + * for x = (2**(winsize - 1) + 1) to (2**winsize - 1) + */ + for (x = (1 << (winsize - 1)) + 1; x < (1 << winsize); x++) { + if ((err = mp_mul (&M[x - 1], &M[1], &M[x])) != MP_OKAY) { + goto LBL_MU; + } + if ((err = redux (&M[x], P, &mu)) != MP_OKAY) { + goto LBL_MU; + } + } + + /* setup result */ + if ((err = mp_init (&res)) != MP_OKAY) { + goto LBL_MU; + } + mp_set (&res, 1); + + /* set initial mode and bit cnt */ + mode = 0; + bitcnt = 1; + buf = 0; + digidx = X->used - 1; + bitcpy = 0; + bitbuf = 0; + + for (;;) { + /* grab next digit as required */ + if (--bitcnt == 0) { + /* if digidx == -1 we are out of digits */ + if (digidx == -1) { + break; + } + /* read next digit and reset the bitcnt */ + buf = X->dp[digidx--]; + bitcnt = (int) DIGIT_BIT; + } + + /* grab the next msb from the exponent */ + y = (buf >> (mp_digit)(DIGIT_BIT - 1)) & 1; + buf <<= (mp_digit)1; + + /* if the bit is zero and mode == 0 then we ignore it + * These represent the leading zero bits before the first 1 bit + * in the exponent. Technically this opt is not required but it + * does lower the # of trivial squaring/reductions used + */ + if (mode == 0 && y == 0) { + continue; + } + + /* if the bit is zero and mode == 1 then we square */ + if (mode == 1 && y == 0) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, &mu)) != MP_OKAY) { + goto LBL_RES; + } + continue; + } + + /* else we add it to the window */ + bitbuf |= (y << (winsize - ++bitcpy)); + mode = 2; + + if (bitcpy == winsize) { + /* ok window is filled so square as required and multiply */ + /* square first */ + for (x = 0; x < winsize; x++) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, &mu)) != MP_OKAY) { + goto LBL_RES; + } + } + + /* then multiply */ + if ((err = mp_mul (&res, &M[bitbuf], &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, &mu)) != MP_OKAY) { + goto LBL_RES; + } + + /* empty window and reset */ + bitcpy = 0; + bitbuf = 0; + mode = 1; + } + } + + /* if bits remain then square/multiply */ + if (mode == 2 && bitcpy > 0) { + /* square then multiply if the bit is set */ + for (x = 0; x < bitcpy; x++) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, &mu)) != MP_OKAY) { + goto LBL_RES; + } + + bitbuf <<= 1; + if ((bitbuf & (1 << winsize)) != 0) { + /* then multiply */ + if ((err = mp_mul (&res, &M[1], &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, &mu)) != MP_OKAY) { + goto LBL_RES; + } + } + } + } + + mp_exch (&res, Y); + err = MP_OKAY; +LBL_RES:mp_clear (&res); +LBL_MU:mp_clear (&mu); +LBL_M: + mp_clear(&M[1]); + for (x = 1<<(winsize-1); x < (1 << winsize); x++) { + mp_clear (&M[x]); + } + return err; +} + + +/* computes b = a*a */ +static int ICACHE_FLASH_ATTR +mp_sqr (mp_int * a, mp_int * b) +{ + int res; + +#ifdef BN_MP_TOOM_SQR_C + /* use Toom-Cook? */ + if (a->used >= TOOM_SQR_CUTOFF) { + res = mp_toom_sqr(a, b); + /* Karatsuba? */ + } else +#endif +#ifdef BN_MP_KARATSUBA_SQR_C +if (a->used >= KARATSUBA_SQR_CUTOFF) { + res = mp_karatsuba_sqr (a, b); + } else +#endif + { +#ifdef BN_FAST_S_MP_SQR_C + /* can we use the fast comba multiplier? */ + if ((a->used * 2 + 1) < MP_WARRAY && + a->used < + (1 << (sizeof(mp_word) * CHAR_BIT - 2*DIGIT_BIT - 1))) { + res = fast_s_mp_sqr (a, b); + } else +#endif +#ifdef BN_S_MP_SQR_C + res = s_mp_sqr (a, b); +#else +#error mp_sqr could fail + res = MP_VAL; +#endif + } + b->sign = MP_ZPOS; + return res; +} + + +/* reduces a modulo n where n is of the form 2**p - d + This differs from reduce_2k since "d" can be larger + than a single digit. +*/ +static int ICACHE_FLASH_ATTR +mp_reduce_2k_l(mp_int *a, mp_int *n, mp_int *d) +{ + mp_int q; + int p, res; + + if ((res = mp_init(&q)) != MP_OKAY) { + return res; + } + + p = mp_count_bits(n); +top: + /* q = a/2**p, a = a mod 2**p */ + if ((res = mp_div_2d(a, p, &q, a)) != MP_OKAY) { + goto ERR; + } + + /* q = q * d */ + if ((res = mp_mul(&q, d, &q)) != MP_OKAY) { + goto ERR; + } + + /* a = a + q */ + if ((res = s_mp_add(a, &q, a)) != MP_OKAY) { + goto ERR; + } + + if (mp_cmp_mag(a, n) != MP_LT) { + s_mp_sub(a, n, a); + goto top; + } + +ERR: + mp_clear(&q); + return res; +} + + +/* determines the setup value */ +static int ICACHE_FLASH_ATTR +mp_reduce_2k_setup_l(mp_int *a, mp_int *d) +{ + int res; + mp_int tmp; + + if ((res = mp_init(&tmp)) != MP_OKAY) { + return res; + } + + if ((res = mp_2expt(&tmp, mp_count_bits(a))) != MP_OKAY) { + goto ERR; + } + + if ((res = s_mp_sub(&tmp, a, d)) != MP_OKAY) { + goto ERR; + } + +ERR: + mp_clear(&tmp); + return res; +} + + +/* computes a = 2**b + * + * Simple algorithm which zeroes the int, grows it then just sets one bit + * as required. + */ +static int ICACHE_FLASH_ATTR +mp_2expt (mp_int * a, int b) +{ + int res; + + /* zero a as per default */ + mp_zero (a); + + /* grow a to accommodate the single bit */ + if ((res = mp_grow (a, b / DIGIT_BIT + 1)) != MP_OKAY) { + return res; + } + + /* set the used count of where the bit will go */ + a->used = b / DIGIT_BIT + 1; + + /* put the single bit in its place */ + a->dp[b / DIGIT_BIT] = ((mp_digit)1) << (b % DIGIT_BIT); + + return MP_OKAY; +} + + +/* pre-calculate the value required for Barrett reduction + * For a given modulus "b" it calulates the value required in "a" + */ +static int ICACHE_FLASH_ATTR +mp_reduce_setup (mp_int * a, mp_int * b) +{ + int res; + + if ((res = mp_2expt (a, b->used * 2 * DIGIT_BIT)) != MP_OKAY) { + return res; + } + return mp_div (a, b, a, NULL); +} + + +/* reduces x mod m, assumes 0 < x < m**2, mu is + * precomputed via mp_reduce_setup. + * From HAC pp.604 Algorithm 14.42 + */ +static int ICACHE_FLASH_ATTR +mp_reduce (mp_int * x, mp_int * m, mp_int * mu) +{ + mp_int q; + int res, um = m->used; + + /* q = x */ + if ((res = mp_init_copy (&q, x)) != MP_OKAY) { + return res; + } + + /* q1 = x / b**(k-1) */ + mp_rshd (&q, um - 1); + + /* according to HAC this optimization is ok */ + if (((unsigned long) um) > (((mp_digit)1) << (DIGIT_BIT - 1))) { + if ((res = mp_mul (&q, mu, &q)) != MP_OKAY) { + goto CLEANUP; + } + } else { +#ifdef BN_S_MP_MUL_HIGH_DIGS_C + if ((res = s_mp_mul_high_digs (&q, mu, &q, um)) != MP_OKAY) { + goto CLEANUP; + } +#elif defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C) + if ((res = fast_s_mp_mul_high_digs (&q, mu, &q, um)) != MP_OKAY) { + goto CLEANUP; + } +#else + { +#error mp_reduce would always fail + res = MP_VAL; + goto CLEANUP; + } +#endif + } + + /* q3 = q2 / b**(k+1) */ + mp_rshd (&q, um + 1); + + /* x = x mod b**(k+1), quick (no division) */ + if ((res = mp_mod_2d (x, DIGIT_BIT * (um + 1), x)) != MP_OKAY) { + goto CLEANUP; + } + + /* q = q * m mod b**(k+1), quick (no division) */ + if ((res = s_mp_mul_digs (&q, m, &q, um + 1)) != MP_OKAY) { + goto CLEANUP; + } + + /* x = x - q */ + if ((res = mp_sub (x, &q, x)) != MP_OKAY) { + goto CLEANUP; + } + + /* If x < 0, add b**(k+1) to it */ + if (mp_cmp_d (x, 0) == MP_LT) { + mp_set (&q, 1); + if ((res = mp_lshd (&q, um + 1)) != MP_OKAY) { + goto CLEANUP; + } + if ((res = mp_add (x, &q, x)) != MP_OKAY) { + goto CLEANUP; + } + } + + /* Back off if it's too big */ + while (mp_cmp (x, m) != MP_LT) { + if ((res = s_mp_sub (x, m, x)) != MP_OKAY) { + goto CLEANUP; + } + } + +CLEANUP: + mp_clear (&q); + + return res; +} + + +/* multiplies |a| * |b| and only computes up to digs digits of result + * HAC pp. 595, Algorithm 14.12 Modified so you can control how + * many digits of output are created. + */ +static int ICACHE_FLASH_ATTR +s_mp_mul_digs (mp_int * a, mp_int * b, mp_int * c, int digs) +{ + mp_int t; + int res, pa, pb, ix, iy; + mp_digit u; + mp_word r; + mp_digit tmpx, *tmpt, *tmpy; + + /* can we use the fast multiplier? */ + if (((digs) < MP_WARRAY) && + MIN (a->used, b->used) < + (1 << ((CHAR_BIT * sizeof (mp_word)) - (2 * DIGIT_BIT)))) { + return fast_s_mp_mul_digs (a, b, c, digs); + } + + if ((res = mp_init_size (&t, digs)) != MP_OKAY) { + return res; + } + t.used = digs; + + /* compute the digits of the product directly */ + pa = a->used; + for (ix = 0; ix < pa; ix++) { + /* set the carry to zero */ + u = 0; + + /* limit ourselves to making digs digits of output */ + pb = MIN (b->used, digs - ix); + + /* setup some aliases */ + /* copy of the digit from a used within the nested loop */ + tmpx = a->dp[ix]; + + /* an alias for the destination shifted ix places */ + tmpt = t.dp + ix; + + /* an alias for the digits of b */ + tmpy = b->dp; + + /* compute the columns of the output and propagate the carry */ + for (iy = 0; iy < pb; iy++) { + /* compute the column as a mp_word */ + r = ((mp_word)*tmpt) + + ((mp_word)tmpx) * ((mp_word)*tmpy++) + + ((mp_word) u); + + /* the new column is the lower part of the result */ + *tmpt++ = (mp_digit) (r & ((mp_word) MP_MASK)); + + /* get the carry word from the result */ + u = (mp_digit) (r >> ((mp_word) DIGIT_BIT)); + } + /* set carry if it is placed below digs */ + if (ix + iy < digs) { + *tmpt = u; + } + } + + mp_clamp (&t); + mp_exch (&t, c); + + mp_clear (&t); + return MP_OKAY; +} + + +/* Fast (comba) multiplier + * + * This is the fast column-array [comba] multiplier. It is + * designed to compute the columns of the product first + * then handle the carries afterwards. This has the effect + * of making the nested loops that compute the columns very + * simple and schedulable on super-scalar processors. + * + * This has been modified to produce a variable number of + * digits of output so if say only a half-product is required + * you don't have to compute the upper half (a feature + * required for fast Barrett reduction). + * + * Based on Algorithm 14.12 on pp.595 of HAC. + * + */ +static int ICACHE_FLASH_ATTR +fast_s_mp_mul_digs (mp_int * a, mp_int * b, mp_int * c, int digs) +{ + int olduse, res, pa, ix, iz; + mp_digit W[MP_WARRAY]; + register mp_word _W; + + /* grow the destination as required */ + if (c->alloc < digs) { + if ((res = mp_grow (c, digs)) != MP_OKAY) { + return res; + } + } + + /* number of output digits to produce */ + pa = MIN(digs, a->used + b->used); + + /* clear the carry */ + _W = 0; + for (ix = 0; ix < pa; ix++) { + int tx, ty; + int iy; + mp_digit *tmpx, *tmpy; + + /* get offsets into the two bignums */ + ty = MIN(b->used-1, ix); + tx = ix - ty; + + /* setup temp aliases */ + tmpx = a->dp + tx; + tmpy = b->dp + ty; + + /* this is the number of times the loop will iterrate, essentially + while (tx++ < a->used && ty-- >= 0) { ... } + */ + iy = MIN(a->used-tx, ty+1); + + /* execute loop */ + for (iz = 0; iz < iy; ++iz) { + _W += ((mp_word)*tmpx++)*((mp_word)*tmpy--); + + } + + /* store term */ + W[ix] = ((mp_digit)_W) & MP_MASK; + + /* make next carry */ + _W = _W >> ((mp_word)DIGIT_BIT); + } + + /* setup dest */ + olduse = c->used; + c->used = pa; + + { + register mp_digit *tmpc; + tmpc = c->dp; + for (ix = 0; ix < pa+1; ix++) { + /* now extract the previous digit [below the carry] */ + *tmpc++ = W[ix]; + } + + /* clear unused digits [that existed in the old copy of c] */ + for (; ix < olduse; ix++) { + *tmpc++ = 0; + } + } + mp_clamp (c); + return MP_OKAY; +} + + +/* init an mp_init for a given size */ +static int ICACHE_FLASH_ATTR +mp_init_size (mp_int * a, int size) +{ + int x; + + /* pad size so there are always extra digits */ + size += (MP_PREC * 2) - (size % MP_PREC); + + /* alloc mem */ + a->dp = OPT_CAST(mp_digit) XMALLOC (sizeof (mp_digit) * size); + if (a->dp == NULL) { + return MP_MEM; + } + + /* set the members */ + a->used = 0; + a->alloc = size; + a->sign = MP_ZPOS; + + /* zero the digits */ + for (x = 0; x < size; x++) { + a->dp[x] = 0; + } + + return MP_OKAY; +} + + +/* low level squaring, b = a*a, HAC pp.596-597, Algorithm 14.16 */ +static int ICACHE_FLASH_ATTR +s_mp_sqr (mp_int * a, mp_int * b) +{ + mp_int t; + int res, ix, iy, pa; + mp_word r; + mp_digit u, tmpx, *tmpt; + + pa = a->used; + if ((res = mp_init_size (&t, 2*pa + 1)) != MP_OKAY) { + return res; + } + + /* default used is maximum possible size */ + t.used = 2*pa + 1; + + for (ix = 0; ix < pa; ix++) { + /* first calculate the digit at 2*ix */ + /* calculate double precision result */ + r = ((mp_word) t.dp[2*ix]) + + ((mp_word)a->dp[ix])*((mp_word)a->dp[ix]); + + /* store lower part in result */ + t.dp[ix+ix] = (mp_digit) (r & ((mp_word) MP_MASK)); + + /* get the carry */ + u = (mp_digit)(r >> ((mp_word) DIGIT_BIT)); + + /* left hand side of A[ix] * A[iy] */ + tmpx = a->dp[ix]; + + /* alias for where to store the results */ + tmpt = t.dp + (2*ix + 1); + + for (iy = ix + 1; iy < pa; iy++) { + /* first calculate the product */ + r = ((mp_word)tmpx) * ((mp_word)a->dp[iy]); + + /* now calculate the double precision result, note we use + * addition instead of *2 since it's easier to optimize + */ + r = ((mp_word) *tmpt) + r + r + ((mp_word) u); + + /* store lower part */ + *tmpt++ = (mp_digit) (r & ((mp_word) MP_MASK)); + + /* get carry */ + u = (mp_digit)(r >> ((mp_word) DIGIT_BIT)); + } + /* propagate upwards */ + while (u != ((mp_digit) 0)) { + r = ((mp_word) *tmpt) + ((mp_word) u); + *tmpt++ = (mp_digit) (r & ((mp_word) MP_MASK)); + u = (mp_digit)(r >> ((mp_word) DIGIT_BIT)); + } + } + + mp_clamp (&t); + mp_exch (&t, b); + mp_clear (&t); + return MP_OKAY; +} + + +/* multiplies |a| * |b| and does not compute the lower digs digits + * [meant to get the higher part of the product] + */ +static int ICACHE_FLASH_ATTR +s_mp_mul_high_digs (mp_int * a, mp_int * b, mp_int * c, int digs) +{ + mp_int t; + int res, pa, pb, ix, iy; + mp_digit u; + mp_word r; + mp_digit tmpx, *tmpt, *tmpy; + + /* can we use the fast multiplier? */ +#ifdef BN_FAST_S_MP_MUL_HIGH_DIGS_C + if (((a->used + b->used + 1) < MP_WARRAY) + && MIN (a->used, b->used) < (1 << ((CHAR_BIT * sizeof (mp_word)) - (2 * DIGIT_BIT)))) { + return fast_s_mp_mul_high_digs (a, b, c, digs); + } +#endif + + if ((res = mp_init_size (&t, a->used + b->used + 1)) != MP_OKAY) { + return res; + } + t.used = a->used + b->used + 1; + + pa = a->used; + pb = b->used; + for (ix = 0; ix < pa; ix++) { + /* clear the carry */ + u = 0; + + /* left hand side of A[ix] * B[iy] */ + tmpx = a->dp[ix]; + + /* alias to the address of where the digits will be stored */ + tmpt = &(t.dp[digs]); + + /* alias for where to read the right hand side from */ + tmpy = b->dp + (digs - ix); + + for (iy = digs - ix; iy < pb; iy++) { + /* calculate the double precision result */ + r = ((mp_word)*tmpt) + + ((mp_word)tmpx) * ((mp_word)*tmpy++) + + ((mp_word) u); + + /* get the lower part */ + *tmpt++ = (mp_digit) (r & ((mp_word) MP_MASK)); + + /* carry the carry */ + u = (mp_digit) (r >> ((mp_word) DIGIT_BIT)); + } + *tmpt = u; + } + mp_clamp (&t); + mp_exch (&t, c); + mp_clear (&t); + return MP_OKAY; +} + + +#ifdef BN_MP_MONTGOMERY_SETUP_C +/* setups the montgomery reduction stuff */ +static int ICACHE_FLASH_ATTR +mp_montgomery_setup (mp_int * n, mp_digit * rho) +{ + mp_digit x, b; + +/* fast inversion mod 2**k + * + * Based on the fact that + * + * XA = 1 (mod 2**n) => (X(2-XA)) A = 1 (mod 2**2n) + * => 2*X*A - X*X*A*A = 1 + * => 2*(1) - (1) = 1 + */ + b = n->dp[0]; + + if ((b & 1) == 0) { + return MP_VAL; + } + + x = (((b + 2) & 4) << 1) + b; /* here x*a==1 mod 2**4 */ + x *= 2 - b * x; /* here x*a==1 mod 2**8 */ +#if !defined(MP_8BIT) + x *= 2 - b * x; /* here x*a==1 mod 2**16 */ +#endif +#if defined(MP_64BIT) || !(defined(MP_8BIT) || defined(MP_16BIT)) + x *= 2 - b * x; /* here x*a==1 mod 2**32 */ +#endif +#ifdef MP_64BIT + x *= 2 - b * x; /* here x*a==1 mod 2**64 */ +#endif + + /* rho = -1/m mod b */ + *rho = (unsigned long)(((mp_word)1 << ((mp_word) DIGIT_BIT)) - x) & MP_MASK; + + return MP_OKAY; +} +#endif + + +#ifdef BN_FAST_MP_MONTGOMERY_REDUCE_C +/* computes xR**-1 == x (mod N) via Montgomery Reduction + * + * This is an optimized implementation of montgomery_reduce + * which uses the comba method to quickly calculate the columns of the + * reduction. + * + * Based on Algorithm 14.32 on pp.601 of HAC. +*/ +int ICACHE_FLASH_ATTR +fast_mp_montgomery_reduce (mp_int * x, mp_int * n, mp_digit rho) +{ + int ix, res, olduse; + mp_word W[MP_WARRAY]; + + /* get old used count */ + olduse = x->used; + + /* grow a as required */ + if (x->alloc < n->used + 1) { + if ((res = mp_grow (x, n->used + 1)) != MP_OKAY) { + return res; + } + } + + /* first we have to get the digits of the input into + * an array of double precision words W[...] + */ + { + register mp_word *_W; + register mp_digit *tmpx; + + /* alias for the W[] array */ + _W = W; + + /* alias for the digits of x*/ + tmpx = x->dp; + + /* copy the digits of a into W[0..a->used-1] */ + for (ix = 0; ix < x->used; ix++) { + *_W++ = *tmpx++; + } + + /* zero the high words of W[a->used..m->used*2] */ + for (; ix < n->used * 2 + 1; ix++) { + *_W++ = 0; + } + } + + /* now we proceed to zero successive digits + * from the least significant upwards + */ + for (ix = 0; ix < n->used; ix++) { + /* mu = ai * m' mod b + * + * We avoid a double precision multiplication (which isn't required) + * by casting the value down to a mp_digit. Note this requires + * that W[ix-1] have the carry cleared (see after the inner loop) + */ + register mp_digit mu; + mu = (mp_digit) (((W[ix] & MP_MASK) * rho) & MP_MASK); + + /* a = a + mu * m * b**i + * + * This is computed in place and on the fly. The multiplication + * by b**i is handled by offseting which columns the results + * are added to. + * + * Note the comba method normally doesn't handle carries in the + * inner loop In this case we fix the carry from the previous + * column since the Montgomery reduction requires digits of the + * result (so far) [see above] to work. This is + * handled by fixing up one carry after the inner loop. The + * carry fixups are done in order so after these loops the + * first m->used words of W[] have the carries fixed + */ + { + register int iy; + register mp_digit *tmpn; + register mp_word *_W; + + /* alias for the digits of the modulus */ + tmpn = n->dp; + + /* Alias for the columns set by an offset of ix */ + _W = W + ix; + + /* inner loop */ + for (iy = 0; iy < n->used; iy++) { + *_W++ += ((mp_word)mu) * ((mp_word)*tmpn++); + } + } + + /* now fix carry for next digit, W[ix+1] */ + W[ix + 1] += W[ix] >> ((mp_word) DIGIT_BIT); + } + + /* now we have to propagate the carries and + * shift the words downward [all those least + * significant digits we zeroed]. + */ + { + register mp_digit *tmpx; + register mp_word *_W, *_W1; + + /* nox fix rest of carries */ + + /* alias for current word */ + _W1 = W + ix; + + /* alias for next word, where the carry goes */ + _W = W + ++ix; + + for (; ix <= n->used * 2 + 1; ix++) { + *_W++ += *_W1++ >> ((mp_word) DIGIT_BIT); + } + + /* copy out, A = A/b**n + * + * The result is A/b**n but instead of converting from an + * array of mp_word to mp_digit than calling mp_rshd + * we just copy them in the right order + */ + + /* alias for destination word */ + tmpx = x->dp; + + /* alias for shifted double precision result */ + _W = W + n->used; + + for (ix = 0; ix < n->used + 1; ix++) { + *tmpx++ = (mp_digit)(*_W++ & ((mp_word) MP_MASK)); + } + + /* zero oldused digits, if the input a was larger than + * m->used+1 we'll have to clear the digits + */ + for (; ix < olduse; ix++) { + *tmpx++ = 0; + } + } + + /* set the max used and clamp */ + x->used = n->used + 1; + mp_clamp (x); + + /* if A >= m then A = A - m */ + if (mp_cmp_mag (x, n) != MP_LT) { + return s_mp_sub (x, n, x); + } + return MP_OKAY; +} +#endif + + +#ifdef BN_MP_MUL_2_C +/* b = a*2 */ +static int ICACHE_FLASH_ATTR +mp_mul_2(mp_int * a, mp_int * b) +{ + int x, res, oldused; + + /* grow to accommodate result */ + if (b->alloc < a->used + 1) { + if ((res = mp_grow (b, a->used + 1)) != MP_OKAY) { + return res; + } + } + + oldused = b->used; + b->used = a->used; + + { + register mp_digit r, rr, *tmpa, *tmpb; + + /* alias for source */ + tmpa = a->dp; + + /* alias for dest */ + tmpb = b->dp; + + /* carry */ + r = 0; + for (x = 0; x < a->used; x++) { + + /* get what will be the *next* carry bit from the + * MSB of the current digit + */ + rr = *tmpa >> ((mp_digit)(DIGIT_BIT - 1)); + + /* now shift up this digit, add in the carry [from the previous] */ + *tmpb++ = ((*tmpa++ << ((mp_digit)1)) | r) & MP_MASK; + + /* copy the carry that would be from the source + * digit into the next iteration + */ + r = rr; + } + + /* new leading digit? */ + if (r != 0) { + /* add a MSB which is always 1 at this point */ + *tmpb = 1; + ++(b->used); + } + + /* now zero any excess digits on the destination + * that we didn't write to + */ + tmpb = b->dp + b->used; + for (x = b->used; x < oldused; x++) { + *tmpb++ = 0; + } + } + b->sign = a->sign; + return MP_OKAY; +} +#endif + + +#ifdef BN_MP_MONTGOMERY_CALC_NORMALIZATION_C +/* + * shifts with subtractions when the result is greater than b. + * + * The method is slightly modified to shift B unconditionally up to just under + * the leading bit of b. This saves a lot of multiple precision shifting. + */ +static int ICACHE_FLASH_ATTR +mp_montgomery_calc_normalization (mp_int * a, mp_int * b) +{ + int x, bits, res; + + /* how many bits of last digit does b use */ + bits = mp_count_bits (b) % DIGIT_BIT; + + if (b->used > 1) { + if ((res = mp_2expt (a, (b->used - 1) * DIGIT_BIT + bits - 1)) != MP_OKAY) { + return res; + } + } else { + mp_set(a, 1); + bits = 1; + } + + + /* now compute C = A * B mod b */ + for (x = bits - 1; x < (int)DIGIT_BIT; x++) { + if ((res = mp_mul_2 (a, a)) != MP_OKAY) { + return res; + } + if (mp_cmp_mag (a, b) != MP_LT) { + if ((res = s_mp_sub (a, b, a)) != MP_OKAY) { + return res; + } + } + } + + return MP_OKAY; +} +#endif + + +#ifdef BN_MP_EXPTMOD_FAST_C +/* computes Y == G**X mod P, HAC pp.616, Algorithm 14.85 + * + * Uses a left-to-right k-ary sliding window to compute the modular exponentiation. + * The value of k changes based on the size of the exponent. + * + * Uses Montgomery or Diminished Radix reduction [whichever appropriate] + */ + +static int ICACHE_FLASH_ATTR +mp_exptmod_fast (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode) +{ + mp_int M[TAB_SIZE], res; + mp_digit buf, mp; + int err, bitbuf, bitcpy, bitcnt, mode, digidx, x, y, winsize; + + /* use a pointer to the reduction algorithm. This allows us to use + * one of many reduction algorithms without modding the guts of + * the code with if statements everywhere. + */ + int (*redux)(mp_int*,mp_int*,mp_digit); + + /* find window size */ + x = mp_count_bits (X); + if (x <= 7) { + winsize = 2; + } else if (x <= 36) { + winsize = 3; + } else if (x <= 140) { + winsize = 4; + } else if (x <= 450) { + winsize = 5; + } else if (x <= 1303) { + winsize = 6; + } else if (x <= 3529) { + winsize = 7; + } else { + winsize = 8; + } + +#ifdef MP_LOW_MEM + if (winsize > 5) { + winsize = 5; + } +#endif + + /* init M array */ + /* init first cell */ + if ((err = mp_init(&M[1])) != MP_OKAY) { + return err; + } + + /* now init the second half of the array */ + for (x = 1<<(winsize-1); x < (1 << winsize); x++) { + if ((err = mp_init(&M[x])) != MP_OKAY) { + for (y = 1<<(winsize-1); y < x; y++) { + mp_clear (&M[y]); + } + mp_clear(&M[1]); + return err; + } + } + + /* determine and setup reduction code */ + if (redmode == 0) { +#ifdef BN_MP_MONTGOMERY_SETUP_C + /* now setup montgomery */ + if ((err = mp_montgomery_setup (P, &mp)) != MP_OKAY) { + goto LBL_M; + } +#else + err = MP_VAL; + goto LBL_M; +#endif + + /* automatically pick the comba one if available (saves quite a few calls/ifs) */ +#ifdef BN_FAST_MP_MONTGOMERY_REDUCE_C + if (((P->used * 2 + 1) < MP_WARRAY) && + P->used < (1 << ((CHAR_BIT * sizeof (mp_word)) - (2 * DIGIT_BIT)))) { + redux = fast_mp_montgomery_reduce; + } else +#endif + { +#ifdef BN_MP_MONTGOMERY_REDUCE_C + /* use slower baseline Montgomery method */ + redux = mp_montgomery_reduce; +#else + err = MP_VAL; + goto LBL_M; +#endif + } + } else if (redmode == 1) { +#if defined(BN_MP_DR_SETUP_C) && defined(BN_MP_DR_REDUCE_C) + /* setup DR reduction for moduli of the form B**k - b */ + mp_dr_setup(P, &mp); + redux = mp_dr_reduce; +#else + err = MP_VAL; + goto LBL_M; +#endif + } else { +#if defined(BN_MP_REDUCE_2K_SETUP_C) && defined(BN_MP_REDUCE_2K_C) + /* setup DR reduction for moduli of the form 2**k - b */ + if ((err = mp_reduce_2k_setup(P, &mp)) != MP_OKAY) { + goto LBL_M; + } + redux = mp_reduce_2k; +#else + err = MP_VAL; + goto LBL_M; +#endif + } + + /* setup result */ + if ((err = mp_init (&res)) != MP_OKAY) { + goto LBL_M; + } + + /* create M table + * + + * + * The first half of the table is not computed though accept for M[0] and M[1] + */ + + if (redmode == 0) { +#ifdef BN_MP_MONTGOMERY_CALC_NORMALIZATION_C + /* now we need R mod m */ + if ((err = mp_montgomery_calc_normalization (&res, P)) != MP_OKAY) { + goto LBL_RES; + } +#else + err = MP_VAL; + goto LBL_RES; +#endif + + /* now set M[1] to G * R mod m */ + if ((err = mp_mulmod (G, &res, P, &M[1])) != MP_OKAY) { + goto LBL_RES; + } + } else { + mp_set(&res, 1); + if ((err = mp_mod(G, P, &M[1])) != MP_OKAY) { + goto LBL_RES; + } + } + + /* compute the value at M[1<<(winsize-1)] by squaring M[1] (winsize-1) times */ + if ((err = mp_copy (&M[1], &M[1 << (winsize - 1)])) != MP_OKAY) { + goto LBL_RES; + } + + for (x = 0; x < (winsize - 1); x++) { + if ((err = mp_sqr (&M[1 << (winsize - 1)], &M[1 << (winsize - 1)])) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&M[1 << (winsize - 1)], P, mp)) != MP_OKAY) { + goto LBL_RES; + } + } + + /* create upper table */ + for (x = (1 << (winsize - 1)) + 1; x < (1 << winsize); x++) { + if ((err = mp_mul (&M[x - 1], &M[1], &M[x])) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&M[x], P, mp)) != MP_OKAY) { + goto LBL_RES; + } + } + + /* set initial mode and bit cnt */ + mode = 0; + bitcnt = 1; + buf = 0; + digidx = X->used - 1; + bitcpy = 0; + bitbuf = 0; + + for (;;) { + /* grab next digit as required */ + if (--bitcnt == 0) { + /* if digidx == -1 we are out of digits so break */ + if (digidx == -1) { + break; + } + /* read next digit and reset bitcnt */ + buf = X->dp[digidx--]; + bitcnt = (int)DIGIT_BIT; + } + + /* grab the next msb from the exponent */ + y = (mp_digit)(buf >> (DIGIT_BIT - 1)) & 1; + buf <<= (mp_digit)1; + + /* if the bit is zero and mode == 0 then we ignore it + * These represent the leading zero bits before the first 1 bit + * in the exponent. Technically this opt is not required but it + * does lower the # of trivial squaring/reductions used + */ + if (mode == 0 && y == 0) { + continue; + } + + /* if the bit is zero and mode == 1 then we square */ + if (mode == 1 && y == 0) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + continue; + } + + /* else we add it to the window */ + bitbuf |= (y << (winsize - ++bitcpy)); + mode = 2; + + if (bitcpy == winsize) { + /* ok window is filled so square as required and multiply */ + /* square first */ + for (x = 0; x < winsize; x++) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + } + + /* then multiply */ + if ((err = mp_mul (&res, &M[bitbuf], &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + + /* empty window and reset */ + bitcpy = 0; + bitbuf = 0; + mode = 1; + } + } + + /* if bits remain then square/multiply */ + if (mode == 2 && bitcpy > 0) { + /* square then multiply if the bit is set */ + for (x = 0; x < bitcpy; x++) { + if ((err = mp_sqr (&res, &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + + /* get next bit of the window */ + bitbuf <<= 1; + if ((bitbuf & (1 << winsize)) != 0) { + /* then multiply */ + if ((err = mp_mul (&res, &M[1], &res)) != MP_OKAY) { + goto LBL_RES; + } + if ((err = redux (&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + } + } + } + + if (redmode == 0) { + /* fixup result if Montgomery reduction is used + * recall that any value in a Montgomery system is + * actually multiplied by R mod n. So we have + * to reduce one more time to cancel out the factor + * of R. + */ + if ((err = redux(&res, P, mp)) != MP_OKAY) { + goto LBL_RES; + } + } + + /* swap res with Y */ + mp_exch (&res, Y); + err = MP_OKAY; +LBL_RES:mp_clear (&res); +LBL_M: + mp_clear(&M[1]); + for (x = 1<<(winsize-1); x < (1 << winsize); x++) { + mp_clear (&M[x]); + } + return err; +} +#endif + + +#ifdef BN_FAST_S_MP_SQR_C +/* the jist of squaring... + * you do like mult except the offset of the tmpx [one that + * starts closer to zero] can't equal the offset of tmpy. + * So basically you set up iy like before then you min it with + * (ty-tx) so that it never happens. You double all those + * you add in the inner loop + +After that loop you do the squares and add them in. +*/ + +static int ICACHE_FLASH_ATTR +fast_s_mp_sqr (mp_int * a, mp_int * b) +{ + int olduse, res, pa, ix, iz; + mp_digit W[MP_WARRAY], *tmpx; + mp_word W1; + + /* grow the destination as required */ + pa = a->used + a->used; + if (b->alloc < pa) { + if ((res = mp_grow (b, pa)) != MP_OKAY) { + return res; + } + } + + /* number of output digits to produce */ + W1 = 0; + for (ix = 0; ix < pa; ix++) { + int tx, ty, iy; + mp_word _W; + mp_digit *tmpy; + + /* clear counter */ + _W = 0; + + /* get offsets into the two bignums */ + ty = MIN(a->used-1, ix); + tx = ix - ty; + + /* setup temp aliases */ + tmpx = a->dp + tx; + tmpy = a->dp + ty; + + /* this is the number of times the loop will iterrate, essentially + while (tx++ < a->used && ty-- >= 0) { ... } + */ + iy = MIN(a->used-tx, ty+1); + + /* now for squaring tx can never equal ty + * we halve the distance since they approach at a rate of 2x + * and we have to round because odd cases need to be executed + */ + iy = MIN(iy, (ty-tx+1)>>1); + + /* execute loop */ + for (iz = 0; iz < iy; iz++) { + _W += ((mp_word)*tmpx++)*((mp_word)*tmpy--); + } + + /* double the inner product and add carry */ + _W = _W + _W + W1; + + /* even columns have the square term in them */ + if ((ix&1) == 0) { + _W += ((mp_word)a->dp[ix>>1])*((mp_word)a->dp[ix>>1]); + } + + /* store it */ + W[ix] = (mp_digit)(_W & MP_MASK); + + /* make next carry */ + W1 = _W >> ((mp_word)DIGIT_BIT); + } + + /* setup dest */ + olduse = b->used; + b->used = a->used+a->used; + + { + mp_digit *tmpb; + tmpb = b->dp; + for (ix = 0; ix < pa; ix++) { + *tmpb++ = W[ix] & MP_MASK; + } + + /* clear unused digits [that existed in the old copy of c] */ + for (; ix < olduse; ix++) { + *tmpb++ = 0; + } + } + mp_clamp (b); + return MP_OKAY; +} +#endif + + +#ifdef BN_MP_MUL_D_C +/* multiply by a digit */ +static int ICACHE_FLASH_ATTR +mp_mul_d (mp_int * a, mp_digit b, mp_int * c) +{ + mp_digit u, *tmpa, *tmpc; + mp_word r; + int ix, res, olduse; + + /* make sure c is big enough to hold a*b */ + if (c->alloc < a->used + 1) { + if ((res = mp_grow (c, a->used + 1)) != MP_OKAY) { + return res; + } + } + + /* get the original destinations used count */ + olduse = c->used; + + /* set the sign */ + c->sign = a->sign; + + /* alias for a->dp [source] */ + tmpa = a->dp; + + /* alias for c->dp [dest] */ + tmpc = c->dp; + + /* zero carry */ + u = 0; + + /* compute columns */ + for (ix = 0; ix < a->used; ix++) { + /* compute product and carry sum for this term */ + r = ((mp_word) u) + ((mp_word)*tmpa++) * ((mp_word)b); + + /* mask off higher bits to get a single digit */ + *tmpc++ = (mp_digit) (r & ((mp_word) MP_MASK)); + + /* send carry into next iteration */ + u = (mp_digit) (r >> ((mp_word) DIGIT_BIT)); + } + + /* store final carry [if any] and increment ix offset */ + *tmpc++ = u; + ++ix; + + /* now zero digits above the top */ + while (ix++ < olduse) { + *tmpc++ = 0; + } + + /* set used count */ + c->used = a->used + 1; + mp_clamp(c); + + return MP_OKAY; +} +#endif diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs1.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs1.h new file mode 100644 index 00000000..ed64defa --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs1.h @@ -0,0 +1,22 @@ +/* + * PKCS #1 (RSA Encryption) + * Copyright (c) 2006-2009, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef PKCS1_H +#define PKCS1_H + +int pkcs1_encrypt(int block_type, struct crypto_rsa_key *key, + int use_private, const u8 *in, size_t inlen, + u8 *out, size_t *outlen); +int pkcs1_v15_private_key_decrypt(struct crypto_rsa_key *key, + const u8 *in, size_t inlen, + u8 *out, size_t *outlen); +int pkcs1_decrypt_public_key(struct crypto_rsa_key *key, + const u8 *crypt, size_t crypt_len, + u8 *plain, size_t *plain_len); + +#endif /* PKCS1_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs5.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs5.h new file mode 100644 index 00000000..20ddadc4 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs5.h @@ -0,0 +1,16 @@ +/* + * PKCS #5 (Password-based Encryption) + * Copyright (c) 2009, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef PKCS5_H +#define PKCS5_H + +u8 * pkcs5_decrypt(const u8 *enc_alg, size_t enc_alg_len, + const u8 *enc_data, size_t enc_data_len, + const char *passwd, size_t *data_len); + +#endif /* PKCS5_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs8.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs8.h new file mode 100644 index 00000000..bebf840b --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/pkcs8.h @@ -0,0 +1,16 @@ +/* + * PKCS #8 (Private-key information syntax) + * Copyright (c) 2006-2009, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef PKCS8_H +#define PKCS8_H + +struct crypto_private_key * pkcs8_key_import(const u8 *buf, size_t len); +struct crypto_private_key * +pkcs8_enc_key_import(const u8 *buf, size_t len, const char *passwd); + +#endif /* PKCS8_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/rsa.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/rsa.h new file mode 100644 index 00000000..c236a9df --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/rsa.h @@ -0,0 +1,23 @@ +/* + * RSA + * Copyright (c) 2006, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef RSA_H +#define RSA_H + +struct crypto_rsa_key; + +struct crypto_rsa_key * +crypto_rsa_import_public_key(const u8 *buf, size_t len); +struct crypto_rsa_key * +crypto_rsa_import_private_key(const u8 *buf, size_t len); +size_t crypto_rsa_get_modulus_len(struct crypto_rsa_key *key); +int crypto_rsa_exptmod(const u8 *in, size_t inlen, u8 *out, size_t *outlen, + struct crypto_rsa_key *key, int use_private); +void crypto_rsa_free(struct crypto_rsa_key *key); + +#endif /* RSA_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tls.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tls.h new file mode 100644 index 00000000..983999b5 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tls.h @@ -0,0 +1,537 @@ +/* + * SSL/TLS interface definition + * Copyright (c) 2004-2013, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLS_H +#define TLS_H + +struct tls_connection; + +struct tls_keys { + const u8 *master_key; /* TLS master secret */ + size_t master_key_len; + const u8 *client_random; + size_t client_random_len; + const u8 *server_random; + size_t server_random_len; +}; + +enum tls_event { + TLS_CERT_CHAIN_SUCCESS, + TLS_CERT_CHAIN_FAILURE, + TLS_PEER_CERTIFICATE, + TLS_ALERT +}; + +/* + * Note: These are used as identifier with external programs and as such, the + * values must not be changed. + */ +enum tls_fail_reason { + TLS_FAIL_UNSPECIFIED = 0, + TLS_FAIL_UNTRUSTED = 1, + TLS_FAIL_REVOKED = 2, + TLS_FAIL_NOT_YET_VALID = 3, + TLS_FAIL_EXPIRED = 4, + TLS_FAIL_SUBJECT_MISMATCH = 5, + TLS_FAIL_ALTSUBJECT_MISMATCH = 6, + TLS_FAIL_BAD_CERTIFICATE = 7, + TLS_FAIL_SERVER_CHAIN_PROBE = 8 +}; + +union tls_event_data { + struct { + int depth; + const char *subject; + enum tls_fail_reason reason; + const char *reason_txt; + const struct wpabuf *cert; + } cert_fail; + + struct { + int depth; + const char *subject; + const struct wpabuf *cert; + const u8 *hash; + size_t hash_len; + } peer_cert; + + struct { + int is_local; + const char *type; + const char *description; + } alert; +}; + +struct tls_config { + const char *opensc_engine_path; + const char *pkcs11_engine_path; + const char *pkcs11_module_path; + int fips_mode; + int cert_in_cb; + + void (*event_cb)(void *ctx, enum tls_event ev, + union tls_event_data *data); + void *cb_ctx; +}; + +#define TLS_CONN_ALLOW_SIGN_RSA_MD5 BIT(0) +#define TLS_CONN_DISABLE_TIME_CHECKS BIT(1) +#define TLS_CONN_DISABLE_SESSION_TICKET BIT(2) +#define TLS_CONN_REQUEST_OCSP BIT(3) +#define TLS_CONN_REQUIRE_OCSP BIT(4) + +/** + * struct tls_connection_params - Parameters for TLS connection + * @ca_cert: File or reference name for CA X.509 certificate in PEM or DER + * format + * @ca_cert_blob: ca_cert as inlined data or %NULL if not used + * @ca_cert_blob_len: ca_cert_blob length + * @ca_path: Path to CA certificates (OpenSSL specific) + * @subject_match: String to match in the subject of the peer certificate or + * %NULL to allow all subjects + * @altsubject_match: String to match in the alternative subject of the peer + * certificate or %NULL to allow all alternative subjects + * @client_cert: File or reference name for client X.509 certificate in PEM or + * DER format + * @client_cert_blob: client_cert as inlined data or %NULL if not used + * @client_cert_blob_len: client_cert_blob length + * @private_key: File or reference name for client private key in PEM or DER + * format (traditional format (RSA PRIVATE KEY) or PKCS#8 (PRIVATE KEY) + * @private_key_blob: private_key as inlined data or %NULL if not used + * @private_key_blob_len: private_key_blob length + * @private_key_passwd: Passphrase for decrypted private key, %NULL if no + * passphrase is used. + * @dh_file: File name for DH/DSA data in PEM format, or %NULL if not used + * @dh_blob: dh_file as inlined data or %NULL if not used + * @dh_blob_len: dh_blob length + * @engine: 1 = use engine (e.g., a smartcard) for private key operations + * (this is OpenSSL specific for now) + * @engine_id: engine id string (this is OpenSSL specific for now) + * @ppin: pointer to the pin variable in the configuration + * (this is OpenSSL specific for now) + * @key_id: the private key's id when using engine (this is OpenSSL + * specific for now) + * @cert_id: the certificate's id when using engine + * @ca_cert_id: the CA certificate's id when using engine + * @flags: Parameter options (TLS_CONN_*) + * @ocsp_stapling_response: DER encoded file with cached OCSP stapling response + * or %NULL if OCSP is not enabled + * + * TLS connection parameters to be configured with tls_connection_set_params() + * and tls_global_set_params(). + * + * Certificates and private key can be configured either as a reference name + * (file path or reference to certificate store) or by providing the same data + * as a pointer to the data in memory. Only one option will be used for each + * field. + */ +struct tls_connection_params { + const char *ca_cert; + const u8 *ca_cert_blob; + size_t ca_cert_blob_len; + const char *ca_path; + const char *subject_match; + const char *altsubject_match; + const char *client_cert; + const u8 *client_cert_blob; + size_t client_cert_blob_len; + const char *private_key; + const u8 *private_key_blob; + size_t private_key_blob_len; + const char *private_key_passwd; + const char *dh_file; + const u8 *dh_blob; + size_t dh_blob_len; + + /* OpenSSL specific variables */ + int engine; + const char *engine_id; + const char *pin; + const char *key_id; + const char *cert_id; + const char *ca_cert_id; + + unsigned int flags; + const char *ocsp_stapling_response; +}; + + +/** + * tls_init - Initialize TLS library + * @conf: Configuration data for TLS library + * Returns: Context data to be used as tls_ctx in calls to other functions, + * or %NULL on failure. + * + * Called once during program startup and once for each RSN pre-authentication + * session. In other words, there can be two concurrent TLS contexts. If global + * library initialization is needed (i.e., one that is shared between both + * authentication types), the TLS library wrapper should maintain a reference + * counter and do global initialization only when moving from 0 to 1 reference. + */ +void * tls_init(void); + +/** + * tls_deinit - Deinitialize TLS library + * @tls_ctx: TLS context data from tls_init() + * + * Called once during program shutdown and once for each RSN pre-authentication + * session. If global library deinitialization is needed (i.e., one that is + * shared between both authentication types), the TLS library wrapper should + * maintain a reference counter and do global deinitialization only when moving + * from 1 to 0 references. + */ +void tls_deinit(void *tls_ctx); + +/** + * tls_get_errors - Process pending errors + * @tls_ctx: TLS context data from tls_init() + * Returns: Number of found error, 0 if no errors detected. + * + * Process all pending TLS errors. + */ +int tls_get_errors(void *tls_ctx); + +/** + * tls_connection_init - Initialize a new TLS connection + * @tls_ctx: TLS context data from tls_init() + * Returns: Connection context data, conn for other function calls + */ +struct tls_connection * tls_connection_init(void *tls_ctx); + +/** + * tls_connection_deinit - Free TLS connection data + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * + * Release all resources allocated for TLS connection. + */ +void tls_connection_deinit(void *tls_ctx, struct tls_connection *conn); + +/** + * tls_connection_established - Has the TLS connection been completed? + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: 1 if TLS connection has been completed, 0 if not. + */ +int tls_connection_established(void *tls_ctx, struct tls_connection *conn); + +/** + * tls_connection_shutdown - Shutdown TLS connection + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: 0 on success, -1 on failure + * + * Shutdown current TLS connection without releasing all resources. New + * connection can be started by using the same conn without having to call + * tls_connection_init() or setting certificates etc. again. The new + * connection should try to use session resumption. + */ +int tls_connection_shutdown(void *tls_ctx, struct tls_connection *conn); + +enum { + TLS_SET_PARAMS_ENGINE_PRV_VERIFY_FAILED = -3, + TLS_SET_PARAMS_ENGINE_PRV_INIT_FAILED = -2 +}; + +/** + * tls_connection_set_params - Set TLS connection parameters + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @params: Connection parameters + * Returns: 0 on success, -1 on failure, + * TLS_SET_PARAMS_ENGINE_PRV_INIT_FAILED (-2) on possible PIN error causing + * PKCS#11 engine failure, or + * TLS_SET_PARAMS_ENGINE_PRV_VERIFY_FAILED (-3) on failure to verify the + * PKCS#11 engine private key. + */ +int __must_check +tls_connection_set_params(void *tls_ctx, struct tls_connection *conn, + const struct tls_connection_params *params); + +/** + * tls_global_set_params - Set TLS parameters for all TLS connection + * @tls_ctx: TLS context data from tls_init() + * @params: Global TLS parameters + * Returns: 0 on success, -1 on failure, + * TLS_SET_PARAMS_ENGINE_PRV_INIT_FAILED (-2) on possible PIN error causing + * PKCS#11 engine failure, or + * TLS_SET_PARAMS_ENGINE_PRV_VERIFY_FAILED (-3) on failure to verify the + * PKCS#11 engine private key. + */ +int __must_check tls_global_set_params( + void *tls_ctx, const struct tls_connection_params *params); + +/** + * tls_global_set_verify - Set global certificate verification options + * @tls_ctx: TLS context data from tls_init() + * @check_crl: 0 = do not verify CRLs, 1 = verify CRL for the user certificate, + * 2 = verify CRL for all certificates + * Returns: 0 on success, -1 on failure + */ +int __must_check tls_global_set_verify(void *tls_ctx, int check_crl); + +/** + * tls_connection_set_verify - Set certificate verification options + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @verify_peer: 1 = verify peer certificate + * Returns: 0 on success, -1 on failure + */ +int __must_check tls_connection_set_verify(void *tls_ctx, + struct tls_connection *conn, + int verify_peer); + +/** + * tls_connection_get_keys - Get master key and random data from TLS connection + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @keys: Structure of key/random data (filled on success) + * Returns: 0 on success, -1 on failure + */ +int __must_check tls_connection_get_keys(void *tls_ctx, + struct tls_connection *conn, + struct tls_keys *keys); + +/** + * tls_connection_prf - Use TLS-PRF to derive keying material + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @label: Label (e.g., description of the key) for PRF + * @server_random_first: seed is 0 = client_random|server_random, + * 1 = server_random|client_random + * @out: Buffer for output data from TLS-PRF + * @out_len: Length of the output buffer + * Returns: 0 on success, -1 on failure + * + * This function is optional to implement if tls_connection_get_keys() provides + * access to master secret and server/client random values. If these values are + * not exported from the TLS library, tls_connection_prf() is required so that + * further keying material can be derived from the master secret. If not + * implemented, the function will still need to be defined, but it can just + * return -1. Example implementation of this function is in tls_prf_sha1_md5() + * when it is called with seed set to client_random|server_random (or + * server_random|client_random). + */ +int __must_check tls_connection_prf(void *tls_ctx, + struct tls_connection *conn, + const char *label, + int server_random_first, + u8 *out, size_t out_len); + +/** + * tls_connection_handshake - Process TLS handshake (client side) + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @in_data: Input data from TLS server + * @appl_data: Pointer to application data pointer, or %NULL if dropped + * Returns: Output data, %NULL on failure + * + * The caller is responsible for freeing the returned output data. If the final + * handshake message includes application data, this is decrypted and + * appl_data (if not %NULL) is set to point this data. The caller is + * responsible for freeing appl_data. + * + * This function is used during TLS handshake. The first call is done with + * in_data == %NULL and the library is expected to return ClientHello packet. + * This packet is then send to the server and a response from server is given + * to TLS library by calling this function again with in_data pointing to the + * TLS message from the server. + * + * If the TLS handshake fails, this function may return %NULL. However, if the + * TLS library has a TLS alert to send out, that should be returned as the + * output data. In this case, tls_connection_get_failed() must return failure + * (> 0). + * + * tls_connection_established() should return 1 once the TLS handshake has been + * completed successfully. + */ +struct wpabuf * tls_connection_handshake(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data, + struct wpabuf **appl_data); + +struct wpabuf * tls_connection_handshake2(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data, + struct wpabuf **appl_data, + int *more_data_needed); + +/** + * tls_connection_server_handshake - Process TLS handshake (server side) + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @in_data: Input data from TLS peer + * @appl_data: Pointer to application data pointer, or %NULL if dropped + * Returns: Output data, %NULL on failure + * + * The caller is responsible for freeing the returned output data. + */ +struct wpabuf * tls_connection_server_handshake(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data, + struct wpabuf **appl_data); + +/** + * tls_connection_encrypt - Encrypt data into TLS tunnel + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @in_data: Plaintext data to be encrypted + * Returns: Encrypted TLS data or %NULL on failure + * + * This function is used after TLS handshake has been completed successfully to + * send data in the encrypted tunnel. The caller is responsible for freeing the + * returned output data. + */ +struct wpabuf * tls_connection_encrypt(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data); + +/** + * tls_connection_decrypt - Decrypt data from TLS tunnel + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @in_data: Encrypted TLS data + * Returns: Decrypted TLS data or %NULL on failure + * + * This function is used after TLS handshake has been completed successfully to + * receive data from the encrypted tunnel. The caller is responsible for + * freeing the returned output data. + */ +struct wpabuf * tls_connection_decrypt(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data); + +struct wpabuf * tls_connection_decrypt2(void *tls_ctx, + struct tls_connection *conn, + const struct wpabuf *in_data, + int *more_data_needed); + +/** + * tls_connection_resumed - Was session resumption used + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: 1 if current session used session resumption, 0 if not + */ +int tls_connection_resumed(void *tls_ctx, struct tls_connection *conn); + +enum { + TLS_CIPHER_NONE, + TLS_CIPHER_RC4_SHA /* 0x0005 */, + TLS_CIPHER_AES128_SHA /* 0x002f */, + TLS_CIPHER_RSA_DHE_AES128_SHA /* 0x0031 */, + TLS_CIPHER_ANON_DH_AES128_SHA /* 0x0034 */ +}; + +/** + * tls_connection_set_cipher_list - Configure acceptable cipher suites + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @ciphers: Zero (TLS_CIPHER_NONE) terminated list of allowed ciphers + * (TLS_CIPHER_*). + * Returns: 0 on success, -1 on failure + */ +int __must_check tls_connection_set_cipher_list(void *tls_ctx, + struct tls_connection *conn, + u8 *ciphers); + +/** + * tls_get_cipher - Get current cipher name + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @buf: Buffer for the cipher name + * @buflen: buf size + * Returns: 0 on success, -1 on failure + * + * Get the name of the currently used cipher. + */ +int __must_check tls_get_cipher(void *tls_ctx, struct tls_connection *conn, + char *buf, size_t buflen); + +/** + * tls_connection_enable_workaround - Enable TLS workaround options + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: 0 on success, -1 on failure + * + * This function is used to enable connection-specific workaround options for + * buffer SSL/TLS implementations. + */ +int __must_check tls_connection_enable_workaround(void *tls_ctx, + struct tls_connection *conn); + +/** + * tls_connection_client_hello_ext - Set TLS extension for ClientHello + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * @ext_type: Extension type + * @data: Extension payload (%NULL to remove extension) + * @data_len: Extension payload length + * Returns: 0 on success, -1 on failure + */ +int __must_check tls_connection_client_hello_ext(void *tls_ctx, + struct tls_connection *conn, + int ext_type, const u8 *data, + size_t data_len); + +/** + * tls_connection_get_failed - Get connection failure status + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * + * Returns >0 if connection has failed, 0 if not. + */ +int tls_connection_get_failed(void *tls_ctx, struct tls_connection *conn); + +/** + * tls_connection_get_read_alerts - Get connection read alert status + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: Number of times a fatal read (remote end reported error) has + * happened during this connection. + */ +int tls_connection_get_read_alerts(void *tls_ctx, struct tls_connection *conn); + +/** + * tls_connection_get_write_alerts - Get connection write alert status + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: Number of times a fatal write (locally detected error) has happened + * during this connection. + */ +int tls_connection_get_write_alerts(void *tls_ctx, + struct tls_connection *conn); + +/** + * tls_connection_get_keyblock_size - Get TLS key_block size + * @tls_ctx: TLS context data from tls_init() + * @conn: Connection context data from tls_connection_init() + * Returns: Size of the key_block for the negotiated cipher suite or -1 on + * failure + */ +int tls_connection_get_keyblock_size(void *tls_ctx, + struct tls_connection *conn); + +/** + * tls_capabilities - Get supported TLS capabilities + * @tls_ctx: TLS context data from tls_init() + * Returns: Bit field of supported TLS capabilities (TLS_CAPABILITY_*) + */ +unsigned int tls_capabilities(void *tls_ctx); + +typedef int (*tls_session_ticket_cb) +(void *ctx, const u8 *ticket, size_t len, const u8 *client_random, + const u8 *server_random, u8 *master_secret); + +int __must_check tls_connection_set_session_ticket_cb( + void *tls_ctx, struct tls_connection *conn, + tls_session_ticket_cb cb, void *ctx); + +int tls_prf_sha1_md5(const u8 *secret, size_t secret_len, const char *label, + const u8 *seed, size_t seed_len, u8 *out, size_t outlen); + +#endif /* TLS_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client.h new file mode 100644 index 00000000..8ec85f1a --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client.h @@ -0,0 +1,54 @@ +/* + * TLS v1.0/v1.1/v1.2 client (RFC 2246, RFC 4346, RFC 5246) + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_CLIENT_H +#define TLSV1_CLIENT_H + +#include "tlsv1_cred.h" + +struct tlsv1_client; + +int tlsv1_client_global_init(void); +void tlsv1_client_global_deinit(void); +struct tlsv1_client * tlsv1_client_init(void); +void tlsv1_client_deinit(struct tlsv1_client *conn); +int tlsv1_client_established(struct tlsv1_client *conn); +int tlsv1_client_prf(struct tlsv1_client *conn, const char *label, + int server_random_first, u8 *out, size_t out_len); +u8 * tlsv1_client_handshake(struct tlsv1_client *conn, + const u8 *in_data, size_t in_len, + size_t *out_len, u8 **appl_data, + size_t *appl_data_len, int *need_more_data); +int tlsv1_client_encrypt(struct tlsv1_client *conn, + const u8 *in_data, size_t in_len, + u8 *out_data, size_t out_len); +struct wpabuf * tlsv1_client_decrypt(struct tlsv1_client *conn, + const u8 *in_data, size_t in_len, + int *need_more_data); +int tlsv1_client_get_cipher(struct tlsv1_client *conn, char *buf, + size_t buflen); +int tlsv1_client_shutdown(struct tlsv1_client *conn); +int tlsv1_client_resumed(struct tlsv1_client *conn); +int tlsv1_client_hello_ext(struct tlsv1_client *conn, int ext_type, + const u8 *data, size_t data_len); +int tlsv1_client_get_keys(struct tlsv1_client *conn, struct tls_keys *keys); +int tlsv1_client_get_keyblock_size(struct tlsv1_client *conn); +int tlsv1_client_set_cipher_list(struct tlsv1_client *conn, u8 *ciphers); +int tlsv1_client_set_cred(struct tlsv1_client *conn, + struct tlsv1_credentials *cred); +void tlsv1_client_set_time_checks(struct tlsv1_client *conn, int enabled); + +typedef int (*tlsv1_client_session_ticket_cb) +(void *ctx, const u8 *ticket, size_t len, const u8 *client_random, + const u8 *server_random, u8 *master_secret); + +void tlsv1_client_set_session_ticket_cb(struct tlsv1_client *conn, + tlsv1_client_session_ticket_cb cb, + void *ctx); + +#endif /* TLSV1_CLIENT_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client_i.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client_i.h new file mode 100644 index 00000000..55fdcf8d --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_client_i.h @@ -0,0 +1,84 @@ +/* + * TLSv1 client - internal structures + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_CLIENT_I_H +#define TLSV1_CLIENT_I_H + +struct tlsv1_client { + enum { + CLIENT_HELLO, SERVER_HELLO, SERVER_CERTIFICATE, + SERVER_KEY_EXCHANGE, SERVER_CERTIFICATE_REQUEST, + SERVER_HELLO_DONE, CLIENT_KEY_EXCHANGE, CHANGE_CIPHER_SPEC, + SERVER_CHANGE_CIPHER_SPEC, SERVER_FINISHED, ACK_FINISHED, + ESTABLISHED, FAILED + } state; + + struct tlsv1_record_layer rl; + + u8 session_id[TLS_SESSION_ID_MAX_LEN]; + size_t session_id_len; + u8 client_random[TLS_RANDOM_LEN]; + u8 server_random[TLS_RANDOM_LEN]; + u8 master_secret[TLS_MASTER_SECRET_LEN]; + + u8 alert_level; + u8 alert_description; + + unsigned int certificate_requested:1; + unsigned int session_resumed:1; + unsigned int session_ticket_included:1; + unsigned int use_session_ticket:1; + unsigned int disable_time_checks:1; + + struct crypto_public_key *server_rsa_key; + + struct tls_verify_hash verify; + +#define MAX_CIPHER_COUNT 30 + u16 cipher_suites[MAX_CIPHER_COUNT]; + size_t num_cipher_suites; + + u16 prev_cipher_suite; + + u8 *client_hello_ext; + size_t client_hello_ext_len; + + /* The prime modulus used for Diffie-Hellman */ + u8 *dh_p; + size_t dh_p_len; + /* The generator used for Diffie-Hellman */ + u8 *dh_g; + size_t dh_g_len; + /* The server's Diffie-Hellman public value */ + u8 *dh_ys; + size_t dh_ys_len; + + struct tlsv1_credentials *cred; + + tlsv1_client_session_ticket_cb session_ticket_cb; + void *session_ticket_cb_ctx; + + struct wpabuf *partial_input; +}; + + +void tls_alert(struct tlsv1_client *conn, u8 level, u8 description); +void tlsv1_client_free_dh(struct tlsv1_client *conn); +int tls_derive_pre_master_secret(u8 *pre_master_secret); +int tls_derive_keys(struct tlsv1_client *conn, + const u8 *pre_master_secret, size_t pre_master_secret_len); +u8 * tls_send_client_hello(struct tlsv1_client *conn, size_t *out_len); +u8 * tlsv1_client_send_alert(struct tlsv1_client *conn, u8 level, + u8 description, size_t *out_len); +u8 * tlsv1_client_handshake_write(struct tlsv1_client *conn, size_t *out_len, + int no_appl_data); +int tlsv1_client_process_handshake(struct tlsv1_client *conn, u8 ct, + const u8 *buf, size_t *len, + u8 **out_data, size_t *out_len); + +#endif /* TLSV1_CLIENT_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_common.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_common.h new file mode 100644 index 00000000..f28c0cdc --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_common.h @@ -0,0 +1,261 @@ +/* + * TLSv1 common definitions + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_COMMON_H +#define TLSV1_COMMON_H + +#include "crypto/crypto.h" + +#define TLS_VERSION_1 0x0301 /* TLSv1 */ +#define TLS_VERSION_1_1 0x0302 /* TLSv1.1 */ +#define TLS_VERSION_1_2 0x0303 /* TLSv1.2 */ +#ifdef CONFIG_TLSV12 +#define TLS_VERSION TLS_VERSION_1_2 +#else /* CONFIG_TLSV12 */ +#ifdef CONFIG_TLSV11 +#define TLS_VERSION TLS_VERSION_1_1 +#else /* CONFIG_TLSV11 */ +#define TLS_VERSION TLS_VERSION_1 +#endif /* CONFIG_TLSV11 */ +#endif /* CONFIG_TLSV12 */ +#define TLS_RANDOM_LEN 32 +#define TLS_PRE_MASTER_SECRET_LEN 48 +#define TLS_MASTER_SECRET_LEN 48 +#define TLS_SESSION_ID_MAX_LEN 32 +#define TLS_VERIFY_DATA_LEN 12 + +/* HandshakeType */ +enum { + TLS_HANDSHAKE_TYPE_HELLO_REQUEST = 0, + TLS_HANDSHAKE_TYPE_CLIENT_HELLO = 1, + TLS_HANDSHAKE_TYPE_SERVER_HELLO = 2, + TLS_HANDSHAKE_TYPE_NEW_SESSION_TICKET = 4 /* RFC 4507 */, + TLS_HANDSHAKE_TYPE_CERTIFICATE = 11, + TLS_HANDSHAKE_TYPE_SERVER_KEY_EXCHANGE = 12, + TLS_HANDSHAKE_TYPE_CERTIFICATE_REQUEST = 13, + TLS_HANDSHAKE_TYPE_SERVER_HELLO_DONE = 14, + TLS_HANDSHAKE_TYPE_CERTIFICATE_VERIFY = 15, + TLS_HANDSHAKE_TYPE_CLIENT_KEY_EXCHANGE = 16, + TLS_HANDSHAKE_TYPE_FINISHED = 20, + TLS_HANDSHAKE_TYPE_CERTIFICATE_URL = 21 /* RFC 4366 */, + TLS_HANDSHAKE_TYPE_CERTIFICATE_STATUS = 22 /* RFC 4366 */ +}; + +/* CipherSuite */ +#define TLS_NULL_WITH_NULL_NULL 0x0000 /* RFC 2246 */ +#define TLS_RSA_WITH_NULL_MD5 0x0001 /* RFC 2246 */ +#define TLS_RSA_WITH_NULL_SHA 0x0002 /* RFC 2246 */ +#define TLS_RSA_EXPORT_WITH_RC4_40_MD5 0x0003 /* RFC 2246 */ +#define TLS_RSA_WITH_RC4_128_MD5 0x0004 /* RFC 2246 */ +#define TLS_RSA_WITH_RC4_128_SHA 0x0005 /* RFC 2246 */ +#define TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 0x0006 /* RFC 2246 */ +#define TLS_RSA_WITH_IDEA_CBC_SHA 0x0007 /* RFC 2246 */ +#define TLS_RSA_EXPORT_WITH_DES40_CBC_SHA 0x0008 /* RFC 2246 */ +#define TLS_RSA_WITH_DES_CBC_SHA 0x0009 /* RFC 2246 */ +#define TLS_RSA_WITH_3DES_EDE_CBC_SHA 0x000A /* RFC 2246 */ +#define TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA 0x000B /* RFC 2246 */ +#define TLS_DH_DSS_WITH_DES_CBC_SHA 0x000C /* RFC 2246 */ +#define TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA 0x000D /* RFC 2246 */ +#define TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA 0x000E /* RFC 2246 */ +#define TLS_DH_RSA_WITH_DES_CBC_SHA 0x000F /* RFC 2246 */ +#define TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA 0x0010 /* RFC 2246 */ +#define TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA 0x0011 /* RFC 2246 */ +#define TLS_DHE_DSS_WITH_DES_CBC_SHA 0x0012 /* RFC 2246 */ +#define TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA 0x0013 /* RFC 2246 */ +#define TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA 0x0014 /* RFC 2246 */ +#define TLS_DHE_RSA_WITH_DES_CBC_SHA 0x0015 /* RFC 2246 */ +#define TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA 0x0016 /* RFC 2246 */ +#define TLS_DH_anon_EXPORT_WITH_RC4_40_MD5 0x0017 /* RFC 2246 */ +#define TLS_DH_anon_WITH_RC4_128_MD5 0x0018 /* RFC 2246 */ +#define TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA 0x0019 /* RFC 2246 */ +#define TLS_DH_anon_WITH_DES_CBC_SHA 0x001A /* RFC 2246 */ +#define TLS_DH_anon_WITH_3DES_EDE_CBC_SHA 0x001B /* RFC 2246 */ +#define TLS_RSA_WITH_AES_128_CBC_SHA 0x002F /* RFC 3268 */ +#define TLS_DH_DSS_WITH_AES_128_CBC_SHA 0x0030 /* RFC 3268 */ +#define TLS_DH_RSA_WITH_AES_128_CBC_SHA 0x0031 /* RFC 3268 */ +#define TLS_DHE_DSS_WITH_AES_128_CBC_SHA 0x0032 /* RFC 3268 */ +#define TLS_DHE_RSA_WITH_AES_128_CBC_SHA 0x0033 /* RFC 3268 */ +#define TLS_DH_anon_WITH_AES_128_CBC_SHA 0x0034 /* RFC 3268 */ +#define TLS_RSA_WITH_AES_256_CBC_SHA 0x0035 /* RFC 3268 */ +#define TLS_DH_DSS_WITH_AES_256_CBC_SHA 0x0036 /* RFC 3268 */ +#define TLS_DH_RSA_WITH_AES_256_CBC_SHA 0x0037 /* RFC 3268 */ +#define TLS_DHE_DSS_WITH_AES_256_CBC_SHA 0x0038 /* RFC 3268 */ +#define TLS_DHE_RSA_WITH_AES_256_CBC_SHA 0x0039 /* RFC 3268 */ +#define TLS_DH_anon_WITH_AES_256_CBC_SHA 0x003A /* RFC 3268 */ +#define TLS_RSA_WITH_NULL_SHA256 0x003B /* RFC 5246 */ +#define TLS_RSA_WITH_AES_128_CBC_SHA256 0x003C /* RFC 5246 */ +#define TLS_RSA_WITH_AES_256_CBC_SHA256 0x003D /* RFC 5246 */ +#define TLS_DH_DSS_WITH_AES_128_CBC_SHA256 0x003E /* RFC 5246 */ +#define TLS_DH_RSA_WITH_AES_128_CBC_SHA256 0x003F /* RFC 5246 */ +#define TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 0x0040 /* RFC 5246 */ +#define TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 0x0067 /* RFC 5246 */ +#define TLS_DH_DSS_WITH_AES_256_CBC_SHA256 0x0068 /* RFC 5246 */ +#define TLS_DH_RSA_WITH_AES_256_CBC_SHA256 0x0069 /* RFC 5246 */ +#define TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 0x006A /* RFC 5246 */ +#define TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 0x006B /* RFC 5246 */ +#define TLS_DH_anon_WITH_AES_128_CBC_SHA256 0x006C /* RFC 5246 */ +#define TLS_DH_anon_WITH_AES_256_CBC_SHA256 0x006D /* RFC 5246 */ + +/* CompressionMethod */ +#define TLS_COMPRESSION_NULL 0 + +/* HashAlgorithm */ +enum { + TLS_HASH_ALG_NONE = 0, + TLS_HASH_ALG_MD5 = 1, + TLS_HASH_ALG_SHA1 = 2, + TLS_HASH_ALG_SHA224 = 3, + TLS_HASH_ALG_SHA256 = 4, + TLS_HASH_ALG_SHA384 = 5, + TLS_HASH_ALG_SHA512 = 6 +}; + +/* SignatureAlgorithm */ +enum { + TLS_SIGN_ALG_ANONYMOUS = 0, + TLS_SIGN_ALG_RSA = 1, + TLS_SIGN_ALG_DSA = 2, + TLS_SIGN_ALG_ECDSA = 3, +}; + +/* AlertLevel */ +#define TLS_ALERT_LEVEL_WARNING 1 +#define TLS_ALERT_LEVEL_FATAL 2 + +/* AlertDescription */ +#define TLS_ALERT_CLOSE_NOTIFY 0 +#define TLS_ALERT_UNEXPECTED_MESSAGE 10 +#define TLS_ALERT_BAD_RECORD_MAC 20 +#define TLS_ALERT_DECRYPTION_FAILED 21 +#define TLS_ALERT_RECORD_OVERFLOW 22 +#define TLS_ALERT_DECOMPRESSION_FAILURE 30 +#define TLS_ALERT_HANDSHAKE_FAILURE 40 +#define TLS_ALERT_BAD_CERTIFICATE 42 +#define TLS_ALERT_UNSUPPORTED_CERTIFICATE 43 +#define TLS_ALERT_CERTIFICATE_REVOKED 44 +#define TLS_ALERT_CERTIFICATE_EXPIRED 45 +#define TLS_ALERT_CERTIFICATE_UNKNOWN 46 +#define TLS_ALERT_ILLEGAL_PARAMETER 47 +#define TLS_ALERT_UNKNOWN_CA 48 +#define TLS_ALERT_ACCESS_DENIED 49 +#define TLS_ALERT_DECODE_ERROR 50 +#define TLS_ALERT_DECRYPT_ERROR 51 +#define TLS_ALERT_EXPORT_RESTRICTION 60 +#define TLS_ALERT_PROTOCOL_VERSION 70 +#define TLS_ALERT_INSUFFICIENT_SECURITY 71 +#define TLS_ALERT_INTERNAL_ERROR 80 +#define TLS_ALERT_USER_CANCELED 90 +#define TLS_ALERT_NO_RENEGOTIATION 100 +#define TLS_ALERT_UNSUPPORTED_EXTENSION 110 /* RFC 4366 */ +#define TLS_ALERT_CERTIFICATE_UNOBTAINABLE 111 /* RFC 4366 */ +#define TLS_ALERT_UNRECOGNIZED_NAME 112 /* RFC 4366 */ +#define TLS_ALERT_BAD_CERTIFICATE_STATUS_RESPONSE 113 /* RFC 4366 */ +#define TLS_ALERT_BAD_CERTIFICATE_HASH_VALUE 114 /* RFC 4366 */ + +/* ChangeCipherSpec */ +enum { + TLS_CHANGE_CIPHER_SPEC = 1 +}; + +/* TLS Extensions */ +#define TLS_EXT_SERVER_NAME 0 /* RFC 4366 */ +#define TLS_EXT_MAX_FRAGMENT_LENGTH 1 /* RFC 4366 */ +#define TLS_EXT_CLIENT_CERTIFICATE_URL 2 /* RFC 4366 */ +#define TLS_EXT_TRUSTED_CA_KEYS 3 /* RFC 4366 */ +#define TLS_EXT_TRUNCATED_HMAC 4 /* RFC 4366 */ +#define TLS_EXT_STATUS_REQUEST 5 /* RFC 4366 */ +#define TLS_EXT_SESSION_TICKET 35 /* RFC 4507 */ + +#define TLS_EXT_PAC_OPAQUE TLS_EXT_SESSION_TICKET /* EAP-FAST terminology */ + + +typedef enum { + TLS_KEY_X_NULL, + TLS_KEY_X_RSA, + TLS_KEY_X_RSA_EXPORT, + TLS_KEY_X_DH_DSS_EXPORT, + TLS_KEY_X_DH_DSS, + TLS_KEY_X_DH_RSA_EXPORT, + TLS_KEY_X_DH_RSA, + TLS_KEY_X_DHE_DSS_EXPORT, + TLS_KEY_X_DHE_DSS, + TLS_KEY_X_DHE_RSA_EXPORT, + TLS_KEY_X_DHE_RSA, + TLS_KEY_X_DH_anon_EXPORT, + TLS_KEY_X_DH_anon +} tls_key_exchange; + +typedef enum { + TLS_CIPHER_NULL, + TLS_CIPHER_RC4_40, + TLS_CIPHER_RC4_128, + TLS_CIPHER_RC2_CBC_40, + TLS_CIPHER_IDEA_CBC, + TLS_CIPHER_DES40_CBC, + TLS_CIPHER_DES_CBC, + TLS_CIPHER_3DES_EDE_CBC, + TLS_CIPHER_AES_128_CBC, + TLS_CIPHER_AES_256_CBC +} tls_cipher; + +typedef enum { + TLS_HASH_NULL, + TLS_HASH_MD5, + TLS_HASH_SHA, + TLS_HASH_SHA256 +} tls_hash; + +struct tls_cipher_suite { + u16 suite; + tls_key_exchange key_exchange; + tls_cipher cipher; + tls_hash hash; +}; + +typedef enum { + TLS_CIPHER_STREAM, + TLS_CIPHER_BLOCK +} tls_cipher_type; + +struct tls_cipher_data { + tls_cipher cipher; + tls_cipher_type type; + size_t key_material; + size_t expanded_key_material; + size_t block_size; /* also iv_size */ + enum crypto_cipher_alg alg; +}; + + +struct tls_verify_hash { + struct crypto_hash *md5_client; + struct crypto_hash *sha1_client; + struct crypto_hash *sha256_client; + struct crypto_hash *md5_server; + struct crypto_hash *sha1_server; + struct crypto_hash *sha256_server; + struct crypto_hash *md5_cert; + struct crypto_hash *sha1_cert; + struct crypto_hash *sha256_cert; +}; + + +const struct tls_cipher_suite * tls_get_cipher_suite(u16 suite); +const struct tls_cipher_data * tls_get_cipher_data(tls_cipher cipher); +int tls_server_key_exchange_allowed(tls_cipher cipher); +int tls_parse_cert(const u8 *buf, size_t len, struct crypto_public_key **pk); +int tls_verify_hash_init(struct tls_verify_hash *verify); +void tls_verify_hash_add(struct tls_verify_hash *verify, const u8 *buf, + size_t len); +void tls_verify_hash_free(struct tls_verify_hash *verify); +int tls_version_ok(u16 ver); +const char * tls_version_str(u16 ver); +int tls_prf(u16 ver, const u8 *secret, size_t secret_len, const char *label, + const u8 *seed, size_t seed_len, u8 *out, size_t outlen); + +#endif /* TLSV1_COMMON_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_cred.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_cred.h new file mode 100644 index 00000000..68fbdc92 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_cred.h @@ -0,0 +1,40 @@ +/* + * TLSv1 credentials + * Copyright (c) 2006-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_CRED_H +#define TLSV1_CRED_H + +struct tlsv1_credentials { + struct x509_certificate *trusted_certs; + struct x509_certificate *cert; + struct crypto_private_key *key; + + /* Diffie-Hellman parameters */ + u8 *dh_p; /* prime */ + size_t dh_p_len; + u8 *dh_g; /* generator */ + size_t dh_g_len; +}; + + +struct tlsv1_credentials * tlsv1_cred_alloc(void); +void tlsv1_cred_free(struct tlsv1_credentials *cred); +int tlsv1_set_ca_cert(struct tlsv1_credentials *cred, const char *cert, + const u8 *cert_blob, size_t cert_blob_len, + const char *path); +int tlsv1_set_cert(struct tlsv1_credentials *cred, const char *cert, + const u8 *cert_blob, size_t cert_blob_len); +int tlsv1_set_private_key(struct tlsv1_credentials *cred, + const char *private_key, + const char *private_key_passwd, + const u8 *private_key_blob, + size_t private_key_blob_len); +int tlsv1_set_dhparams(struct tlsv1_credentials *cred, const char *dh_file, + const u8 *dh_blob, size_t dh_blob_len); + +#endif /* TLSV1_CRED_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_record.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_record.h new file mode 100644 index 00000000..48abcb0d --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_record.h @@ -0,0 +1,71 @@ +/* + * TLSv1 Record Protocol + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_RECORD_H +#define TLSV1_RECORD_H + +#include "crypto/crypto.h" + +#define TLS_MAX_WRITE_MAC_SECRET_LEN 32 +#define TLS_MAX_WRITE_KEY_LEN 32 +#define TLS_MAX_IV_LEN 16 +#define TLS_MAX_KEY_BLOCK_LEN (2 * (TLS_MAX_WRITE_MAC_SECRET_LEN + \ + TLS_MAX_WRITE_KEY_LEN + TLS_MAX_IV_LEN)) + +#define TLS_SEQ_NUM_LEN 8 +#define TLS_RECORD_HEADER_LEN 5 + +/* ContentType */ +enum { + TLS_CONTENT_TYPE_CHANGE_CIPHER_SPEC = 20, + TLS_CONTENT_TYPE_ALERT = 21, + TLS_CONTENT_TYPE_HANDSHAKE = 22, + TLS_CONTENT_TYPE_APPLICATION_DATA = 23 +}; + +struct tlsv1_record_layer { + u16 tls_version; + + u8 write_mac_secret[TLS_MAX_WRITE_MAC_SECRET_LEN]; + u8 read_mac_secret[TLS_MAX_WRITE_MAC_SECRET_LEN]; + u8 write_key[TLS_MAX_WRITE_KEY_LEN]; + u8 read_key[TLS_MAX_WRITE_KEY_LEN]; + u8 write_iv[TLS_MAX_IV_LEN]; + u8 read_iv[TLS_MAX_IV_LEN]; + + size_t hash_size; + size_t key_material_len; + size_t iv_size; /* also block_size */ + + enum crypto_hash_alg hash_alg; + enum crypto_cipher_alg cipher_alg; + + u8 write_seq_num[TLS_SEQ_NUM_LEN]; + u8 read_seq_num[TLS_SEQ_NUM_LEN]; + + u16 cipher_suite; + u16 write_cipher_suite; + u16 read_cipher_suite; + + struct crypto_cipher *write_cbc; + struct crypto_cipher *read_cbc; +}; + + +int tlsv1_record_set_cipher_suite(struct tlsv1_record_layer *rl, + u16 cipher_suite); +int tlsv1_record_change_write_cipher(struct tlsv1_record_layer *rl); +int tlsv1_record_change_read_cipher(struct tlsv1_record_layer *rl); +int tlsv1_record_send(struct tlsv1_record_layer *rl, u8 content_type, u8 *buf, + size_t buf_size, const u8 *payload, size_t payload_len, + size_t *out_len); +int tlsv1_record_receive(struct tlsv1_record_layer *rl, + const u8 *in_data, size_t in_len, + u8 *out_data, size_t *out_len, u8 *alert); + +#endif /* TLSV1_RECORD_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server.h new file mode 100644 index 00000000..a18c69e3 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server.h @@ -0,0 +1,48 @@ +/* + * TLS v1.0/v1.1/v1.2 server (RFC 2246, RFC 4346, RFC 5246) + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_SERVER_H +#define TLSV1_SERVER_H + +#include "tlsv1_cred.h" + +struct tlsv1_server; + +int tlsv1_server_global_init(void); +void tlsv1_server_global_deinit(void); +struct tlsv1_server * tlsv1_server_init(struct tlsv1_credentials *cred); +void tlsv1_server_deinit(struct tlsv1_server *conn); +int tlsv1_server_established(struct tlsv1_server *conn); +int tlsv1_server_prf(struct tlsv1_server *conn, const char *label, + int server_random_first, u8 *out, size_t out_len); +u8 * tlsv1_server_handshake(struct tlsv1_server *conn, + const u8 *in_data, size_t in_len, size_t *out_len); +int tlsv1_server_encrypt(struct tlsv1_server *conn, + const u8 *in_data, size_t in_len, + u8 *out_data, size_t out_len); +int tlsv1_server_decrypt(struct tlsv1_server *conn, + const u8 *in_data, size_t in_len, + u8 *out_data, size_t out_len); +int tlsv1_server_get_cipher(struct tlsv1_server *conn, char *buf, + size_t buflen); +int tlsv1_server_shutdown(struct tlsv1_server *conn); +int tlsv1_server_resumed(struct tlsv1_server *conn); +int tlsv1_server_get_keys(struct tlsv1_server *conn, struct tls_keys *keys); +int tlsv1_server_get_keyblock_size(struct tlsv1_server *conn); +int tlsv1_server_set_cipher_list(struct tlsv1_server *conn, u8 *ciphers); +int tlsv1_server_set_verify(struct tlsv1_server *conn, int verify_peer); + +typedef int (*tlsv1_server_session_ticket_cb) +(void *ctx, const u8 *ticket, size_t len, const u8 *client_random, + const u8 *server_random, u8 *master_secret); + +void tlsv1_server_set_session_ticket_cb(struct tlsv1_server *conn, + tlsv1_server_session_ticket_cb cb, + void *ctx); + +#endif /* TLSV1_SERVER_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server_i.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server_i.h new file mode 100644 index 00000000..1f61533a --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/tlsv1_server_i.h @@ -0,0 +1,71 @@ +/* + * TLSv1 server - internal structures + * Copyright (c) 2006-2007, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef TLSV1_SERVER_I_H +#define TLSV1_SERVER_I_H + +struct tlsv1_server { + enum { + CLIENT_HELLO, SERVER_HELLO, SERVER_CERTIFICATE, + SERVER_KEY_EXCHANGE, SERVER_CERTIFICATE_REQUEST, + SERVER_HELLO_DONE, CLIENT_CERTIFICATE, CLIENT_KEY_EXCHANGE, + CERTIFICATE_VERIFY, CHANGE_CIPHER_SPEC, CLIENT_FINISHED, + SERVER_CHANGE_CIPHER_SPEC, SERVER_FINISHED, + ESTABLISHED, FAILED + } state; + + struct tlsv1_record_layer rl; + + u8 session_id[TLS_SESSION_ID_MAX_LEN]; + size_t session_id_len; + u8 client_random[TLS_RANDOM_LEN]; + u8 server_random[TLS_RANDOM_LEN]; + u8 master_secret[TLS_MASTER_SECRET_LEN]; + + u8 alert_level; + u8 alert_description; + + struct crypto_public_key *client_rsa_key; + + struct tls_verify_hash verify; + +#define MAX_CIPHER_COUNT 30 + u16 cipher_suites[MAX_CIPHER_COUNT]; + size_t num_cipher_suites; + + u16 cipher_suite; + + struct tlsv1_credentials *cred; + + int verify_peer; + u16 client_version; + + u8 *session_ticket; + size_t session_ticket_len; + + tlsv1_server_session_ticket_cb session_ticket_cb; + void *session_ticket_cb_ctx; + + int use_session_ticket; + + u8 *dh_secret; + size_t dh_secret_len; +}; + + +void tlsv1_server_alert(struct tlsv1_server *conn, u8 level, u8 description); +int tlsv1_server_derive_keys(struct tlsv1_server *conn, + const u8 *pre_master_secret, + size_t pre_master_secret_len); +u8 * tlsv1_server_handshake_write(struct tlsv1_server *conn, size_t *out_len); +u8 * tlsv1_server_send_alert(struct tlsv1_server *conn, u8 level, + u8 description, size_t *out_len); +int tlsv1_server_process_handshake(struct tlsv1_server *conn, u8 ct, + const u8 *buf, size_t *len); + +#endif /* TLSV1_SERVER_I_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/tls/x509v3.h b/tools/sdk/include/wpa_supplicant/wpa2/tls/x509v3.h new file mode 100644 index 00000000..91a35baf --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/tls/x509v3.h @@ -0,0 +1,123 @@ +/* + * X.509v3 certificate parsing and processing + * Copyright (c) 2006-2011, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef X509V3_H +#define X509V3_H + +#include "asn1.h" + +struct x509_algorithm_identifier { + struct asn1_oid oid; +}; + +struct x509_name_attr { + enum x509_name_attr_type { + X509_NAME_ATTR_NOT_USED, + X509_NAME_ATTR_DC, + X509_NAME_ATTR_CN, + X509_NAME_ATTR_C, + X509_NAME_ATTR_L, + X509_NAME_ATTR_ST, + X509_NAME_ATTR_O, + X509_NAME_ATTR_OU + } type; + char *value; +}; + +#define X509_MAX_NAME_ATTRIBUTES 20 + +struct x509_name { + struct x509_name_attr attr[X509_MAX_NAME_ATTRIBUTES]; + size_t num_attr; + char *email; /* emailAddress */ + + /* from alternative name extension */ + char *alt_email; /* rfc822Name */ + char *dns; /* dNSName */ + char *uri; /* uniformResourceIdentifier */ + u8 *ip; /* iPAddress */ + size_t ip_len; /* IPv4: 4, IPv6: 16 */ + struct asn1_oid rid; /* registeredID */ +}; + +struct x509_certificate { + struct x509_certificate *next; + enum { X509_CERT_V1 = 0, X509_CERT_V2 = 1, X509_CERT_V3 = 2 } version; + unsigned long serial_number; + struct x509_algorithm_identifier signature; + struct x509_name issuer; + struct x509_name subject; + os_time_t not_before; + os_time_t not_after; + struct x509_algorithm_identifier public_key_alg; + u8 *public_key; + size_t public_key_len; + struct x509_algorithm_identifier signature_alg; + u8 *sign_value; + size_t sign_value_len; + + /* Extensions */ + unsigned int extensions_present; +#define X509_EXT_BASIC_CONSTRAINTS (1 << 0) +#define X509_EXT_PATH_LEN_CONSTRAINT (1 << 1) +#define X509_EXT_KEY_USAGE (1 << 2) +#define X509_EXT_SUBJECT_ALT_NAME (1 << 3) +#define X509_EXT_ISSUER_ALT_NAME (1 << 4) + + /* BasicConstraints */ + int ca; /* cA */ + unsigned long path_len_constraint; /* pathLenConstraint */ + + /* KeyUsage */ + unsigned long key_usage; +#define X509_KEY_USAGE_DIGITAL_SIGNATURE (1 << 0) +#define X509_KEY_USAGE_NON_REPUDIATION (1 << 1) +#define X509_KEY_USAGE_KEY_ENCIPHERMENT (1 << 2) +#define X509_KEY_USAGE_DATA_ENCIPHERMENT (1 << 3) +#define X509_KEY_USAGE_KEY_AGREEMENT (1 << 4) +#define X509_KEY_USAGE_KEY_CERT_SIGN (1 << 5) +#define X509_KEY_USAGE_CRL_SIGN (1 << 6) +#define X509_KEY_USAGE_ENCIPHER_ONLY (1 << 7) +#define X509_KEY_USAGE_DECIPHER_ONLY (1 << 8) + + /* + * The DER format certificate follows struct x509_certificate. These + * pointers point to that buffer. + */ + const u8 *cert_start; + size_t cert_len; + const u8 *tbs_cert_start; + size_t tbs_cert_len; +}; + +enum { + X509_VALIDATE_OK, + X509_VALIDATE_BAD_CERTIFICATE, + X509_VALIDATE_UNSUPPORTED_CERTIFICATE, + X509_VALIDATE_CERTIFICATE_REVOKED, + X509_VALIDATE_CERTIFICATE_EXPIRED, + X509_VALIDATE_CERTIFICATE_UNKNOWN, + X509_VALIDATE_UNKNOWN_CA +}; + +void x509_certificate_free(struct x509_certificate *cert); +struct x509_certificate * x509_certificate_parse(const u8 *buf, size_t len); +void x509_name_string(struct x509_name *name, char *buf, size_t len); +int x509_name_compare(struct x509_name *a, struct x509_name *b); +void x509_certificate_chain_free(struct x509_certificate *cert); +int x509_certificate_check_signature(struct x509_certificate *issuer, + struct x509_certificate *cert); +int x509_certificate_chain_validate(struct x509_certificate *trusted, + struct x509_certificate *chain, + int *reason, int disable_time_checks); +struct x509_certificate * +x509_certificate_get_subject(struct x509_certificate *chain, + struct x509_name *name); +int x509_certificate_self_signed(struct x509_certificate *cert); + +#endif /* X509V3_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/utils/base64.h b/tools/sdk/include/wpa_supplicant/wpa2/utils/base64.h new file mode 100644 index 00000000..91eb8741 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/utils/base64.h @@ -0,0 +1,17 @@ +/* + * Base64 encoding/decoding (RFC1341) + * Copyright (c) 2005, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef BASE64_H +#define BASE64_H + +unsigned char * _base64_encode(const unsigned char *src, size_t len, + size_t *out_len); +unsigned char * _base64_decode(const unsigned char *src, size_t len, + size_t *out_len); + +#endif /* BASE64_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password.h b/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password.h new file mode 100644 index 00000000..e3e46ea0 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password.h @@ -0,0 +1,33 @@ +/* + * External password backend + * Copyright (c) 2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EXT_PASSWORD_H +#define EXT_PASSWORD_H + +struct ext_password_data; + +#ifdef CONFIG_EXT_PASSWORD + +struct ext_password_data * ext_password_init(const char *backend, + const char *params); +void ext_password_deinit(struct ext_password_data *data); + +struct wpabuf * ext_password_get(struct ext_password_data *data, + const char *name); +void ext_password_free(struct wpabuf *pw); + +#else /* CONFIG_EXT_PASSWORD */ + +#define ext_password_init(b, p) ((void *) 1) +#define ext_password_deinit(d) do { } while (0) +#define ext_password_get(d, n) (NULL) +#define ext_password_free(p) do { } while (0) + +#endif /* CONFIG_EXT_PASSWORD */ + +#endif /* EXT_PASSWORD_H */ diff --git a/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password_i.h b/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password_i.h new file mode 100644 index 00000000..043e7312 --- /dev/null +++ b/tools/sdk/include/wpa_supplicant/wpa2/utils/ext_password_i.h @@ -0,0 +1,23 @@ +/* + * External password backend - internal definitions + * Copyright (c) 2012, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef EXT_PASSWORD_I_H +#define EXT_PASSWORD_I_H + +#include "ext_password.h" + +struct ext_password_backend { + const char *name; + void * (*init)(const char *params); + void (*deinit)(void *ctx); + struct wpabuf * (*get)(void *ctx, const char *name); +}; + +struct wpabuf * ext_password_alloc(size_t len); + +#endif /* EXT_PASSWORD_I_H */ diff --git a/tools/sdk/include/xtensa-debug-module/eri.h b/tools/sdk/include/xtensa-debug-module/eri.h new file mode 100644 index 00000000..33e4dd09 --- /dev/null +++ b/tools/sdk/include/xtensa-debug-module/eri.h @@ -0,0 +1,31 @@ +#ifndef ERI_H +#define ERI_H + +#include + +/* + The ERI is a bus internal to each Xtensa core. It connects, amongst others, to the debug interface, where it + allows reading/writing the same registers as available over JTAG. +*/ + + +/** + * @brief Perform an ERI read + * @param addr : ERI register to read from + * + * @return Value read + */ +uint32_t eri_read(int addr); + + +/** + * @brief Perform an ERI write + * @param addr : ERI register to write to + * @param data : Value to write + * + * @return Value read + */ +void eri_write(int addr, uint32_t data); + + +#endif \ No newline at end of file diff --git a/tools/sdk/include/xtensa-debug-module/trax.h b/tools/sdk/include/xtensa-debug-module/trax.h new file mode 100644 index 00000000..c1b3608e --- /dev/null +++ b/tools/sdk/include/xtensa-debug-module/trax.h @@ -0,0 +1,62 @@ +#include "soc/dport_reg.h" +#include "sdkconfig.h" +#include "esp_err.h" +#include "eri.h" +#include "xtensa-debug-module.h" + + +typedef enum { + TRAX_DOWNCOUNT_WORDS, + TRAX_DOWNCOUNT_INSTRUCTIONS +} trax_downcount_unit_t; + +typedef enum { + TRAX_ENA_NONE = 0, + TRAX_ENA_PRO, + TRAX_ENA_APP, + TRAX_ENA_PRO_APP, + TRAX_ENA_PRO_APP_SWAP +} trax_ena_select_t; + + +/** + * @brief Enable the trax memory blocks to be used as Trax memory. + * + * @param pro_cpu_enable : true if Trax needs to be enabled for the pro CPU + * @param app_cpu_enable : true if Trax needs to be enabled for the pro CPU + * @param swap_regions : Normally, the pro CPU writes to Trax mem block 0 while + * the app cpu writes to block 1. Setting this to true + * inverts this. + * + * @return esp_err_t. Fails with ESP_ERR_NO_MEM if Trax enable is requested for 2 CPUs + * but memmap only has room for 1, or if Trax memmap is disabled + * entirely. + */ +int trax_enable(trax_ena_select_t ena); + +/** + * @brief Start a Trax trace on the current CPU + * + * @param units_until_stop : Set the units of the delay that gets passed to + * trax_trigger_traceend_after_delay. One of TRAX_DOWNCOUNT_WORDS + * or TRAX_DOWNCOUNT_INSTRUCTIONS. + * + * @return esp_err_t. Fails with ESP_ERR_NO_MEM if Trax is disabled. + */ +int trax_start_trace(trax_downcount_unit_t units_until_stop); + + +/** + * @brief Trigger a Trax trace stop after the indicated delay. If this is called + * before and the previous delay hasn't ended yet, this will overwrite + * that delay with the new value. The delay will always start at the time + * the function is called. + * + * @param delay : The delay to stop the trace in, in the unit indicated to + * trax_start_trace. Note: the trace memory has 4K words available. + * + * @return esp_err_t + */ +int trax_trigger_traceend_after_delay(int delay); + + diff --git a/tools/sdk/include/xtensa-debug-module/xtensa-debug-module.h b/tools/sdk/include/xtensa-debug-module/xtensa-debug-module.h new file mode 100644 index 00000000..61b21825 --- /dev/null +++ b/tools/sdk/include/xtensa-debug-module/xtensa-debug-module.h @@ -0,0 +1,75 @@ +#ifndef XTENSA_DEBUG_MODULE_H +#define XTENSA_DEBUG_MODULE_H + +/* +ERI registers / OCD offsets and field definitions +*/ + +#define ERI_DEBUG_OFFSET 0x100000 + +#define ERI_TRAX_OFFSET (ERI_DEBUG_OFFSET+0) +#define ERI_PERFMON_OFFSET (ERI_DEBUG_OFFSET+0x1000) +#define ERI_OCDREG_OFFSET (ERI_DEBUG_OFFSET+0x2000) +#define ERI_MISCDBG_OFFSET (ERI_DEBUG_OFFSET+0x3000) +#define ERI_CORESIGHT_OFFSET (ERI_DEBUG_OFFSET+0x3F00) + +#define ERI_TRAX_TRAXID (ERI_TRAX_OFFSET+0x00) +#define ERI_TRAX_TRAXCTRL (ERI_TRAX_OFFSET+0x04) +#define ERI_TRAX_TRAXSTAT (ERI_TRAX_OFFSET+0x08) +#define ERI_TRAX_TRAXDATA (ERI_TRAX_OFFSET+0x0C) +#define ERI_TRAX_TRAXADDR (ERI_TRAX_OFFSET+0x10) +#define ERI_TRAX_TRIGGERPC (ERI_TRAX_OFFSET+0x14) +#define ERI_TRAX_PCMATCHCTRL (ERI_TRAX_OFFSET+0x18) +#define ERI_TRAX_DELAYCNT (ERI_TRAX_OFFSET+0x1C) +#define ERI_TRAX_MEMADDRSTART (ERI_TRAX_OFFSET+0x20) +#define ERI_TRAX_MEMADDREND (ERI_TRAX_OFFSET+0x24) + +#define TRAXCTRL_TREN (1<<0) //Trace enable. Tracing starts on 0->1 +#define TRAXCTRL_TRSTP (1<<1) //Trace Stop. Make 1 to stop trace. +#define TRAXCTRL_PCMEN (1<<2) //PC match enable +#define TRAXCTRL_PTIEN (1<<4) //Processor-trigger enable +#define TRAXCTRL_CTIEN (1<<5) //Cross-trigger enable +#define TRAXCTRL_TMEN (1<<7) //Tracemem Enable. Always set. +#define TRAXCTRL_CNTU (1<<9) //Post-stop-trigger countdown units; selects when DelayCount-- happens. + //0 - every 32-bit word written to tracemem, 1 - every cpu instruction +#define TRAXCTRL_TSEN (1<<11) //Undocumented/deprecated? +#define TRAXCTRL_SMPER_SHIFT 12 //Send sync every 2^(9-smper) messages. 7=reserved, 0=no sync msg +#define TRAXCTRL_SMPER_MASK 0x7 //Synchronization message period +#define TRAXCTRL_PTOWT (1<<16) //Processor Trigger Out (OCD halt) enabled when stop triggered +#define TRAXCTRL_PTOWS (1<<17) //Processor Trigger Out (OCD halt) enabled when trace stop completes +#define TRAXCTRL_CTOWT (1<<20) //Cross-trigger Out enabled when stop triggered +#define TRAXCTRL_CTOWS (1<<21) //Cross-trigger Out enabled when trace stop completes +#define TRAXCTRL_ITCTO (1<<22) //Integration mode: cross-trigger output +#define TRAXCTRL_ITCTIA (1<<23) //Integration mode: cross-trigger ack +#define TRAXCTRL_ITATV (1<<24) //replaces ATID when in integration mode: ATVALID output +#define TRAXCTRL_ATID_MASK 0x7F //ARB source ID +#define TRAXCTRL_ATID_SHIFT 24 +#define TRAXCTRL_ATEN (1<<31) //ATB interface enable + +#define TRAXSTAT_TRACT (1<<0) //Trace active flag. +#define TRAXSTAT_TRIG (1<<1) //Trace stop trigger. Clears on TREN 1->0 +#define TRAXSTAT_PCMTG (1<<2) //Stop trigger caused by PC match. Clears on TREN 1->0 +#define TRAXSTAT_PJTR (1<<3) //JTAG transaction result. 1=err in preceding jtag transaction. +#define TRAXSTAT_PTITG (1<<4) //Stop trigger caused by Processor Trigger Input. Clears on TREN 1->0 +#define TRAXSTAT_CTITG (1<<5) //Stop trigger caused by Cross-Trigger Input. Clears on TREN 1->0 +#define TRAXSTAT_MEMSZ_SHIFT 8 //Traceram size inducator. Usable trace ram is 2^MEMSZ bytes. +#define TRAXSTAT_MEMSZ_MASK 0x1F +#define TRAXSTAT_PTO (1<<16) //Processor Trigger Output: current value +#define TRAXSTAT_CTO (1<<17) //Cross-Trigger Output: current value +#define TRAXSTAT_ITCTOA (1<<22) //Cross-Trigger Out Ack: current value +#define TRAXSTAT_ITCTI (1<<23) //Cross-Trigger Input: current value +#define TRAXSTAT_ITATR (1<<24) //ATREADY Input: current value + +#define TRAXADDR_TADDR_SHIFT 0 //Trax memory address, in 32-bit words. +#define TRAXADDR_TADDR_MASK 0x1FFFFF //Actually is only as big as the trace buffer size max addr. +#define TRAXADDR_TWRAP_SHIFT 21 //Amount of times TADDR has overflown +#define TRAXADDR_TWRAP_MASK 0x3FF +#define TRAXADDR_TWSAT (1<<31) //1 if TWRAP has overflown, clear by disabling tren. + +#define PCMATCHCTRL_PCML_SHIFT 0 //Amount of lower bits to ignore in pc trigger register +#define PCMATCHCTRL_PCML_MASK 0x1F +#define PCMATCHCTRL_PCMS (1<<31) //PC Match Sense, 0 - match when procs PC is in-range, 1 - match when + //out-of-range + + +#endif \ No newline at end of file diff --git a/tools/sdk/ld/esp32.common.ld b/tools/sdk/ld/esp32.common.ld index a3c63678..aafafbb4 100644 --- a/tools/sdk/ld/esp32.common.ld +++ b/tools/sdk/ld/esp32.common.ld @@ -3,8 +3,38 @@ ENTRY(call_start_cpu0); SECTIONS { + /* RTC fast memory holds RTC wake stub code, + including from any source file named rtc_wake_stub*.c + */ + .rtc.text : + { + . = ALIGN(4); + *(.rtc.literal .rtc.text) + *rtc_wake_stub*.o(.literal .text .literal.* .text.*) + } >rtc_iram_seg + + /* RTC slow memory holds RTC wake stub + data/rodata, including from any source file + named rtc_wake_stub*.c + */ + .rtc.data : + { + *(.rtc.data) + *(.rtc.rodata) + *rtc_wake_stub*.o(.data .rodata .data.* .rodata.* .bss .bss.*) + } > rtc_slow_seg + + /* RTC bss, from any source file named rtc_wake_stub*.c */ + .rtc.bss (NOLOAD) : + { + _rtc_bss_start = ABSOLUTE(.); + *rtc_wake_stub*.o(.bss .bss.*) + *rtc_wake_stub*.o(COMMON) + _rtc_bss_end = ABSOLUTE(.); + } > rtc_slow_seg + /* Send .iram0 code to iram */ - .iram0.vectors : + .iram0.vectors : { /* Vectors go to IRAM */ _init_start = ABSOLUTE(.); @@ -47,6 +77,7 @@ SECTIONS _iram_text_start = ABSOLUTE(.); *(.iram1 .iram1.*) *libfreertos.a:(.literal .text .literal.* .text.*) + *libesp32.a:panic.o(.literal .text .literal.* .text.*) *libphy.a:(.literal .text .literal.* .text.*) *librtc.a:(.literal .text .literal.* .text.*) *libpp.a:(.literal .text .literal.* .text.*) @@ -92,6 +123,7 @@ SECTIONS KEEP(*(.gnu.linkonce.s2.*)) KEEP(*(.jcr)) *(.dram1 .dram1.*) + *libesp32.a:panic.o(.rodata .rodata.*) _data_end = ABSOLUTE(.); . = ALIGN(4); _heap_start = ABSOLUTE(.); @@ -153,16 +185,4 @@ SECTIONS _text_end = ABSOLUTE(.); _etext = .; } >iram0_2_seg - - .rtc.text : - { - . = ALIGN(4); - *(.rtc.literal .rtc.text) - } >rtc_iram_seg - - .rtc.data : - { - *(.rtc.data) - *(.rtc.rodata) - } > rtc_slow_seg } diff --git a/tools/sdk/lib/libbt.a b/tools/sdk/lib/libbt.a index 905f09df696152148afbdf3430a3ac9c85415dfc..b31698bfc9341436b04a86671781a988d4422bd7 100644 GIT binary patch delta 29 ecmZ1=us~pfG`ppNseyr^(L^On7;|INK6U_bA_t%V delta 29 ecmZ1=us~pfG`qQ(p@Er^`9vj47;|INK6U_cJO{V{ diff --git a/tools/sdk/lib/libcoexist.a b/tools/sdk/lib/libcoexist.a new file mode 100644 index 0000000000000000000000000000000000000000..2670c564b316e2365bbec1a2a76e77d6643bf639 GIT binary patch literal 1910 zcma)6K~ED=5T0d0D@6su!Niy>=m8F{McYypltKy;t0oqRi3!WLUFasI+iW)qhQu`f z0b=4o5-*%cj6cAe7jGW?2^>A3=@AYFzuA4ST^a~ZI&Z$2H}8A%X5Z`Jxak&354vw@ z$7M7=mP*DFcakwp!w(W3HSKm%<}Y^>kpf*RIM%vd^Nea~!>}v1M-+KQP12rjdmkj+Zyc0i0^EE-P-Q;-Fo9_^APBLiL@Q9{^w{fLSH)SzuETm*Z0{D zP1Cgo%}!6>(}oMKQ>%H7Q@;6hR!bG{CJJV8M2qVwJwZL#T!Sjm7oJtAnZ{gY#i4~< z#z;@)o@E#2Ge&l9KJz@C%}vC*(^GR8kqo&K7=P>>4jkrFfZ6&Omh0=SH_g^_vp*abZHD z5?`X0s6n%u0hKN^F$0yvw-HelAAxt|Pp}B>M}7Tbj!iFgq|Kjb^TUrM=sUlkn&la< z?G@WtbBdPXRLUFVTB~?nmTMGBcJV3y$P;DKeUT?`S394~OCyha zepcS&6ZVzQ8B@($J0tKU2O%jC@4{Y&@=M`!a6j|V@V-0nWlexh{6=8zFAL{g_fatL z8rFBv@XPxSKLwQ{xj!HvG0**lavf6S+!g{{>!g_2!#TKaJ_o-zd5-qFyFlHcdQrAZS literal 0 HcmV?d00001 diff --git a/tools/sdk/lib/libcore.a b/tools/sdk/lib/libcore.a index d25bf275dc413ab45dc886a201cd65b246371a8b..3c14f4370449cde0907bd6d3e3a02b2db82ff497 100644 GIT binary patch delta 7597 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 AS^xk5 diff --git a/tools/sdk/lib/libcrypto.a b/tools/sdk/lib/libcrypto.a deleted file mode 100644 index 7fa6b49342863c67af6d8af062e81ac3981f3f8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129180 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

vZ87u9vB`bz_uz*Lh8R)0)A` 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 diff --git a/tools/sdk/lib/libdriver.a b/tools/sdk/lib/libdriver.a index 1dc1e62d7a3fdcf57852f46613ec1780b7281b42..148370de5ed00f3137a200bbaddf6001b495f85a 100644 GIT binary patch literal 278402 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 N)W+v!wxMFa{|A$hHPrwB literal 106846 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 diff --git a/tools/sdk/lib/libesp32.a b/tools/sdk/lib/libesp32.a index aa59e767a09c3d7bad5b01405fe6d7687a42dc6e..5a5ef5cf6e023236e6aadaabf637c8c7f70b56a3 100644 GIT binary patch delta 33841 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 IOd9!r0JE1Mng9R* delta 23290 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 delta 236 zcmaE|+ULn?p9#|J=4OTl#wLavl{~qiY=h~1>)FJbJGk0AxEO($35c12m<5Pgw|8){ z)h~gmYzL~`&bOXD@hr?7u-^8b8V(@l1Y#~A<_2OOAm#;PJ|N}?Vu9^FHG<~LP_%7- tpd?h!j3Km!al3|w&}Bws3GwZcT0+}gP=(&+38lFq3yEzn*eX<#000V|NZkMc diff --git a/tools/sdk/lib/libfreertos.a b/tools/sdk/lib/libfreertos.a index 95e9c4567fb6a1260495680f0f72b3fdde4ae4a3..acf936ebc3bb871edc6144fe8c3259c812f2382f 100644 GIT binary patch literal 555488 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%0ApAx7R?5Yqd+`-$1;aJRvi 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 Izg+wO0bhbz;Q#;t diff --git a/tools/sdk/lib/libjson.a b/tools/sdk/lib/libjson.a index 710363bdb1d3460a06c7e81c11e7468b6b8dad2d..aa40b9f4aab003beecc4664d030f9e473b483a63 100644 GIT binary patch delta 60 zcmZp9%+vCiXM!}lrGcq|fuY4lrM)aL_VhYyCb8x}EbV_-7`OjnVX8KR$!rJ8uzdpn DLZ}kE delta 60 zcmZp9%+vCiXM!}lxtXDXv5Cn>rM)arw(;~jYbLSgKP>HkSQxkeVPUE^gQ?mMlwtb@ E07Fs|zyJUM diff --git a/tools/sdk/lib/liblog.a b/tools/sdk/lib/liblog.a index d105489d144fe7ff400270d62f129b72d09acee0..9a000b9590e70fa1e8fc48f9b7d43a1ce1c8c7ae 100644 GIT binary patch delta 577 zcmX|*OK1~e6ov1dIFs1SgvJz;vD8kg=J%P*=+q|7V_FevOxj6`SRdJ`1VL~k)J1$O zx-7KeF0v`QY3V`*VHR~Eh$zN|P!~mT<;GnLg}QL-omRT}{&UYg=kotp!JQRc><{M5 zVbip-?V(pg|D|CJo0ef1=S_xTndU{?_NQDn+ujy9@5Qkq<59Y!WYiNy1PC0I0eXb@ zLTSk;s9zmO<~|<)z%;%CfGS69esQT81Q<XTzbt*^`2k<>Nn1^fD&zLy6)I~ zP1}%0*m33`*tXdgP>_2^Crx4iNZxks`suXbEk0=5P1M#_77`ig;% zse9GMIf_?YT%;zmL2H#Ro}_107jMvdbr$c^#H5Rls5AKzYu?C|gB+T5UHnd6_YCVl z?lD}Tcuio79Of!Dnai}m+@>|=82w_-P_Qo0qzv;d&D4by7^LU*6keuPwpz5#T&BOw YB^sO-xIq)lYxI!0MIGih`Y;{;2Wzs1X8-^I delta 583 zcmX|-K}^$N6vyA|Y&TguH6^-A&<@CoBGB17#<~u@F*hi~m?&_-ECfwB7%}kzi3uJ^ z@Zj=HOqA$}6PTEM9yoY081-l}V&WMR4?CD}^};JUdieGK{oeokzO)A$_;UkabVP@; z89VFP^{&mX|IswB*%{L`ui6YVW7}ER4OhciyZ*<*hvFQTWt^g#GN|735g>9>2575^ zx5|=?7pX(-Oy$0u0KhbE13-lClFN==*R)(nTJLzUiC0{*gQfHSj|$Cxk~z^g-^+2Zc~k!qc!Fa R5|dW)LodJ<|HszTiif%xg8={l diff --git a/tools/sdk/lib/liblwip.a b/tools/sdk/lib/liblwip.a index f61a01d411c74591d2bd3b7e5044e6495438ea0f..6bed7facfcbca876b9978d2a2d99ecc688c8fbc8 100644 GIT binary patch delta 128923 zcmce<349b)wg-HxySlS=&CbV34#KsE>vAng05ponY%L?j6iOf&>c!s^n9j3R@` zUWic^8N>xeT!M-SF1X@=&rw_lM^SMDof(&L)bIblx4Lryeb4#6_rCh2s{Z$!bI(2Z z+;f*&x^mx})oYJbugr+)S=6yLH|MVa?rq_WlxRZ;t!TJ>j~e z;TpzamcC>lO+Buk1-Pz7VJF;WG(Lzmy`9-u0ih zCnx2L|CPN%mPpq2u%7sj@&2_U`TyG<{#6Bm$B&7?pLhKKu!sM53klv-Eh2mBOYe&R zaSuB}q1PsgU)$5pT`KPQp~f$7c0D@LA@#K1KOURb`1HrF^7Er4DK)T@`yw+O>lMOy%q2uJ_B7G7xh@8F zy-|dt+l=|Afs-p{HH1vlQ&m$hT>m5|X%vr!w*&aDCB(^7B_+1N1m#_33)Yk3^7JR= z6CB*B-9d330kfOCxhx^plSR?km`5mUdKNQf#!PSv;V}VvA?-EyD%BfIduTUzPI#aP z)}#!jE}JkofiMlCW>ytp9L;TY72z!?*KB_SVG)%Uo+6wDs;B*N!qL#+>EK0X*GU{a z9e*VC3TW^YC6PLT0$m;e)%Qmh;T_ ?sSX9K0Qe;RvDoA@3bD1qmNLrXiPhWK$bt&geT+*et?@XdjuOy30^A!}7L!w4vvfy5jpE>xQCWR8(a z(;+mO?;_UPw0=fr-zZif)=D6KH0f!=w^*82Qbw&^sc5`1?=;Y zk=vRM%dCqZ1yfjCkinWnvT1pVC-(z6*7~0KQew+8m}v@S{D^ku^D%g{tZAFc=}4jJ z6ctuBEVU|#O>1IbmNP@?8&1i~l)ksAyYej@{Z@CLa-S29 zq1xm{&}1Zk11VSX`yjZJ-vKt0y~yE7z8%<`{2YQUCOHoEj7>g(V_b4eNX92u;^<56 zfuof?1N4OCRVcYx^0kmpOb$SUKY0)6Ny3*4hAUxVFWPZ4icGk=J;Mt5?}u=f(d7zq zQa~_@2~{sMy0UM?T6Mxc-pk!8V;9UZO6DU6H}-g=fvJ?MTz0G8?#!|5n#M$Ca;+MW zdL`?2$ww&KgI$Q!$z)Ha8yv!`D9X5$@($rT2pUspfkP;RXgfTv4j@O>w$DNn8fW`lb#lHm9vXDBrGt0L~ zre>J-Q+?dCT-TU(QD0Q{3$nl14!xaGk1Rjr?uy5u)h3T!-PfI#y^8`q;~CI~LLz%u zQ=0vtb-Bmh-q+pMHNvo8>+3G;{00P#WP_E+h1R^EnGP5<;991oJt;DMnCWbfUDVGV za%~cg!~40r8LncFeO-Td+vL$Ox7ol>Feb)_L*Xr6`^o<9maesi{a$}}hHIO!|JC2! zB0L&a`CCyx4R23FMNuDEnLKF^2|G#Xm;qapsu>N3NR(mGu?-AJ9!XRG7R}m`wTiu+ z#D7PK?XQA5!G0o=E2uBY2OTU@baGwhY1}Zt{Y+wbW_fk>tZCxHp%;!SEg3SZbkyKM zqI~-F+S2N(x_U((d-2%Pali||q+99elA$F-#hfmkOPNhn z&F-c^UDd*h(t0tchf2x$l~kj zXVsQpRw3#a%&ri1^|dwAW-kz>RkKU&q@R45eX44tTI85LtG2$hrdAm=Zt$qmu|v<3 zYN{)0z%DIyG}q6nFRw18Rd(qQp)~uVxQxPdY4Xg9nX^l0&ze8zO z$7LiBt(sk|ssK3}Q8}xwz5Sq5{LugICWRb5Y4CyJdVv zYBsWzF081XCF(kLgYcZ1x~j`+DyC;~4S}NJKYK;XnDhJ9*TQ)En(mMus4T51pIIT@ zOwou9k|@h$&DnOSpgnqAVye&a5R5Cf`){&_k0_sA)e+0A=~FvQ6P2GQUD4$tXy}&M5sl(63TTNpSmD!mydR5hM`~SMOmmdwMNR54vz9+I2f1JS2{INQ7T)aZrZHb z6{S_vMRjFqMQv@(ECIW!ntVL1vb;8;T+~&f-K5)5-0YFHv+8F}n^o;NRyq~*nu_`L zV(Oe3(iFOZ4K5=_dTK^(MFmqbf*HT)0`&sL*k4;2!M0N7vWj{-VCn*?v#u`c7^<34 zJ!>8_+f#lH^|U)?$0UYPs&a&21{NHt3`>Ins*_aI&Xo%1$S^`|N#VP>)E|IeI&*m?$ruUS3}= zq_bfDwDKCP;~A^6RjA4yy~L({KhGRs~#&YfvLvNFc+ zs;aRMY_hJm+kcgcgj60aOV*qkdg!4Y$=y?nA7wyv zIANadYnI1nu1Q^UPUF^ccU*_)1qiN5(i>mC#r;CeX(St@>5ZWc?&(c*UaNRIbuaE# zY`=PoJJ_mIN&lqAqe5bob%m5*NdFq#68V}s*{>U}3 z+d%Q{p!BT8r;aU6S|!A?o0i5dKbn<&>R5Kt#_SfSuvTtyiaX>ovaQ%HSlz^nMH^Ng zyESR!#tm`r-fI7QyE`MCv2^>e|DqhGktWeY@i!z1O*-$^Zcf&QJ?R_V_HB78Ia-K~ z>-H4jqUE;WsbNXW+Mx8d>nvA6TtRx@xPpQfr>Or?Xov1c2Q|A+h-0zBT3rw?i_FSy zyzMUc)R^$**@|=ZKP=D9o(C~M`m7c=gv8+uNsDgXPm^!k8rMAIp3R%cRQQ$4+ne?|yWD$o z24Za_8`ztS)y4HI(elfdERCJ8p~tD~lX@*xfw2BTcadxR;Kt4my5o|<7a!Q^QkpJ} zPklRmY5daI)tgVP+~A+_Skg|{lkP+2(F2O#KEB1N`%<&L#*A!N_saAct6kkc4P;Ku z9_m;8%&7(OSAWC6O0!(IyUI4KnVr98Wp-BTZgchXh_s!ql{?ndKK~J@cP-9b>@`-u z@Us;TNyc4k7QgWAqP#VE%gnN@l!mQagiuPYF;V^27^NS<)2bjTFEw$e_vHr<8A|Sk z3?V8#`QF;ir)JmsXFT7#`_!yGxi4?o{c=jCr9|>Q`PtdY&9g@fYijnuOmCvd&&~IY zDd?2%v9Eo`ooaaObV+;DbC(pco(fzQ|y16$b^5e5zg`ugQRzfHzxI3TkN8BNux1{YSjqP4` z-((s2YX-It8GYsP61!7tqqSXBA7j}mN8Q7W;r5nnBh*-b)V<3v9=6*bb%%_#b`ogD z>-NA$;yc=9KY8ODSG?`s>Iz>_f{Q>jI*!J)1Y9Q!#kJYvNY0i-b#U?aQS^?{aICy> z$EXGfyHsfe+4$JJD9cWT;N#Ynt~j0-EtxCH9rH%wHECVUr4U26=8eU*fkeT z9^YX(;ZZmxzT61Cq1U^lTR*_ogx-ZzAzX(L5ea>$$CZsx zZq~6oVLGf&?9Q@%Js1^ikLM~nOY1K2~Y^$_$A zq=c}R;ou)cC5E+vGK22}c3BU?|H40HAQGn488;>T=e`9|+>PsiQ>Ood5^Abr?h#5; z0;=o3P-#kMhLK8B4vn~obvLbR;VShnnsnTZ8^-qXm)t<5f55>%zL5SG zRz5XNP+Cn2O{9!V#Imcd2bAte5U$-6tfV@>=?^~%PSR}QU&L@vnmtYUuR8%Ge1!_`K*ly82`!~mVo=CaCD}B?N$mMqtH4flmg@Y z>sf+nl_sJ7ew#9})&T^Ke*^8aESs%#D>L}5yGY;23@O%f7~{WmafvT~C}4sI8bGl9o}XS)gL7NV-{?4AW?h?*m9?C3m|9 zr@(BH+?@pi)z>=MwDQ96eR2yBP&bf7=su|QhpJKC zv`{_jnHAcM46Q=F5fs^>wV>yRro#S$&}YDHLvO)v`$gy^PA}j-S~^NH16Tb(g*TuL zL})Nd4I82Bp~V%t4>{eTqv*q?NNohi3@m8_&7n8pMG=~XurxyF!Bwu%M~D%3s0C$2 zDxZ#+ffaoz`T=@}2py!TaAEBs0^5gy?lni^*lZdOiSj@j5?N2-4VzUU`_?1TCvbOL z6fb=pxR*{77RTejPCCI1%$_z?1RkbHtThV_7_Q>>nFK}tC-$q&@es&jBbpuWD^!ENDTmhF2B zetIGJIE$3(f_t0PDXi25_eRx)g-R%W3b&R0Be;)x3a$MJkKjJWb&*wwrVZ|EiDoXA zO%vP~i&*GkmBG5;J}T{FT@NFI``EhutbdSxfOvrPXz-bzkav((LHg^I4-d9X6r&PD ztWs1X_!lyU2I^mw;hFQUPh{sspq9KCsQf8bL zgnxs7y%2a}U}jyN2!22#CRxdp`G_);t=23ne4L50KwY^AeoXo4fx5X4oDrz4pCy8y zl3Zzhh}I6CplO#|`w&{eFNm+O;?Wg@Us6l8wHn?Co}xLktwNgoHF2%AoAiGY*ITD( z{FpF><>P}T6Zw$<7a~x(}W_KcrG{+9VOUBCJrL< zcQW#4!nld4m#~M)$WOhrDe@Iok)L`g6{?OTaagFxR}2;TspZsDC?hs?8Z#8hs7|e* z7dy+SR=C(2gX*MKv9KQ2WyDudeuPEWq}ES`-J`7jaCGWi_MmaFcMDvTW?($>nxicA ze_u8_duC`P#}q3MnM0#FND4XqhQ@M?GZDj=iO}*_p(xf`2L+)OJD{3#;3deGZnkV6 zfOkU~Ad1io9E{LKXb)FtFevU&BBl;A^k=B`gbu+X(2{Bh(8PFyVIm*ObJ8CRM(n?<;; zW(S>qpOoAkkz~*{Neb5x7C-xl6nYcKa5Dz1l28U7Mml&ctK#|yz6~y?c2@yo^Jcbf zDi3CG(k5W@7&II(DbvQQTfTE0JNG3|ZNSds&*W3Vp45QE08~n7cJ7I~} zd>zLOBXsdI;96JH!bvn5#MscKoV~3vC@3@qn$Z4o-4QCKMpI;1p{Yp-0VOew&=Hs( z0>-0e=nhp-T`Wps(O#2TGyI{-@yuu=m_k)2Se#r!g)YwlG_4h=bV&A&SZgW#6`G`Ti4KIElYdVo*UjE_lgZZ*On<1^w6krMs{{>?NlFnXeY2e~dbE|gdV zr!jGnOqfAd#Tae$hg59v3e?3ID-%{Q07XWLO!$M}qA`pK@>yz1W?jWhVc@0|>c)|Z z9>C}TJ6o(kux1*i#$2xdTVn1t$_!p>o%0UsIMqP=f{e!#Muow(s7Sd2PO*$DjeB4~ zCNtE@LPYQ|y*0<+C}ajNLS>A3G7&4XzJ#n{x&8|$Zu!`a2BuookXh=8bQ+(s=dNUAoif4{G~v8FR9-9}4bavBBCCw8F;-rbgC=f9 zs~8P`L*J!C#>Uc7U63`06>`$!nC8``ll}(jY+hg@%}_T=a(Ib}6!r8s;s4e$m`h|a zkD>@=+W1&n_5srQePM3_@~%UU+y{^_*2R7bdjm@!K z@&6rSBL6vudnC%;PHtFuF|vyS)}FD|)|lj~1@@Y};EZ7vvxc&vn|UK~v6vP#{0qG! z=P-tIhr_!cIrJ>j>?J*z{x=<{(iKckVtlIfYNkJqMg5ILnc+baK4mvk>BC58uZAWk z?OG+Z4S4?^xBl(5pIXNG^KZirJut_z)MH> zgo4)96?27=;#~lzO+cEnkx0j$jJmeQ!*pS!dUKGT17@y3Od)*$>9t7X4mu7H6a%8t zAt`+*Djky2$D}k@?k(8=YNFz4Qk>(tQl2Ko14xVf+i=*8{S`>(%AqsQ%XsQSX*pu% zdpTsD%d{Ld3%ndEE0~reXIq(GfOG*B-9B12cGxusiM$m!JOE1J1^~vv36$f+LO}@} z>WE9}tT&;=I3R-q;^Gi?qhWB!87L(EW{BiiPy{)0?ngTN8g`%qF^qg;Tn=YaBYYr+ zBe8)VqT>FU7&b?Hq}z>Ww|O>ZDAKY$^I6Vwa=Le~+8b`yh3XH+u$rz_qf|F~K8CB9 zYUGsd!8SRV3f;2XycWZ5vl-01^TA-Z35$HbOo%uYA4TPkNx6NH!zvhu+tJkDgX=h? zuoY-eAagn@*4DTbPHAgQh6!zrOK6zLtAfBW2;|-BfC3isPf(=D<}fwYfrRUSj{8{~ z5zj^|H6(*PoUUm|O@j}M8N{tzoHJj8K{?l>dXA(8+c^BSmif+QN=9%S7bEy$q;sF8 zqC6Kh&13pb_OE;?{|wT3aUB0;!xsP~j}hVvS*OXa*x4}ED1xEtjVDof01^xXOlGLY zB-dO-QV;0wh+Ig=)QMV=-5Pz;ZMd$5L)$E3f4l{z2vLUJXm}4fv*o~hi=35=G1+0h zCI=x7F2>k)GO|~>_AphVYO`9_<_B1t-veX}p5k`s$qmzG+a=S2kMgL2HOV`d60|cf z6NmF*U0!yCM-Ai^jsv&^tne$)#oC}76ifkewyKQ`^ftX2=!amTe7u4hbjEOy!~2+^ z5}$*Tv$>c=nrlVOhcYS;8C)$Ivc4tj{`8W_CUrMHhY^M9*%#f7-*s#yV0-@ zJkBns#?0R^?Hm|M>@Z(KdbH17=} z&93)0(yd`}hV1u0BBeTVrtHY+Xs_0F)20feMGTi%g-GXqiwYYprF^(Q1!UNs6T`3_ zgLFs6sxd9*CKy$O_7T^?rrhV5t4ij&3PO2&=<)y-*P)pheO|-le(3qou_g=`PDhT7I8OBMYFG3MK;<#xd46!Ut;Qq0%p)x2ctfN_RjRIdbK3GVTQA4`S$3Ymbw0oZEfq zsjVx*Tu6T{3%VNw)pXy)aSZ+*>7pX!JPAuX%dnaeFQ1YW4FmNqSd*KM<~FX1=a}0H z6>D9EdsfEP@wBuAX%&pu$Xu>f<5Z|#>m)}N;z}kg-a=91As-z=AxQVuqAmE|>?>o? zDJ35=e)e>=(nS;dXo3x4w6&RmR?MK7TgA zvc8Ba`9&%jMgqwi~3LXTAE)(`fmkIf#bB!_&I+QiGdG&M)kZg<@jCE2f+%}%Lhxp8e_Z4rPL6W zOZjl9^x-;)=I1~MYrPLzRBcLGo3MBY+`Qr7sJO<=D`V+3RR=i?!*Hfi}Z~j1NVlVtLYSd%WsA@3tMu4Gg z9|y!bW}`?|$GuYQI*QGYid_qYDu%^?sN8-jw~4-uUUrQG*Xdqz-grpX@kQ40xo92P z(Ts*kd8&?z{t(o(!rQ@=V>`Ugv|P46=Vo8{JJLA^z2T^$JWRtm_ZUbYbaPU@l<93; zh#quvQeA_z^3e;@M=v7X9&bns<3(A3d)1)E)A>E>PPmMtMYi&ON=GTO#4y__yr z=~|>)&zdnKER0uVJszUK*UWIp&1K&S3dlP{ugWGEjUhXKx^kMRMGcg1Ka@UO38u)O zi31zx)+qNA$=wF7=6Q~A@VscGm>U0nmU4TfmZM;?{oapiF-=Z2uTaas!BEY-7oK_& zsdY8eQ@`xhr{jol8@0#-W}(}liMc&>E0%A!wRg>ZQeD-nHZyj_gC(V}?=#>Rx zAzDq2Z+FX*CWX~H6U0{$Sx-vhCA_pPWbZ!?+G~o&=2a7@7ZLu6PJGPC{iBwfPUf{- z06~eNfy)D2O^ZU_OUZ+R?uyRw9~|$hQQo;Cn}I$D{AW=EUYzC~2H*v00qaBqIYYoW zQJfA}8rPcrfVrV0^njO~9-!zWv#@%VJ>XiCJ-`^-Nyh)RCR!HPrUgNq!Wa zoWg@z$>8FKMbS8QKd|^X78%BpGYTA@uezL~&x#hf<0Ii@Xm+%Wn&Z7!BXGRpl%CN|fJT9+&mDS&NT=Kn#Cnix#y+W9*S{( zQ+@DbAhdv392NUebybR4h%_a}*A1!d?x@&TQtYn~3+M62ib`&hBX>9|_fIMJcdFxi zl1hwg(RNVx9mQ;hh1bJ~ia}H6y#OYArO5vth{m-$x&BJk|ImKGSfl^yII?{KB zoD*$@^b_aX;fm&Q_W?l^(k&#HMaYvSc?XUcpieE7X3d#lRV2eAX2=^4 z@>R%CxX1{r8T?@>fTh_0hCQx!3U@%}2FSc7IhS~AMf@+nG^c^{knu}!H-r1J;*wUt z3PPCN0q`N*0QKKQZJ^ar_l47)nV{+8J0?!HLU&OSGsQ%Kw z&oM2-S;>EmbSu1|VGQta;q6Bo0IX11J??EFh{6|f;KFTJA=)4LSXnf@d)0mNl8d491w9iZFIY`_b!=H5x{AM1^-D zs2xr*tjghn!AWmsdQp5dZDCl-m3KHF@Pv7b^IQ-((C?Cp7a~>2+P(rSUY2H0R+n;U zI8VKZ{iV4myx8G?at5Dse7(bS!!86@G%tAaK?|LgcL#(35Hybf@uIwg6j%4$`Ea0c zKN!5k8YCI=fkECul?|>Kz>)Vv)D@h}jfUM2Wuz$j2Gk^5jwmPOh=RM*ay&U9#}ljo zxc-ve=(p$ndKPmsT1+chOe?f1i&6B)P)w()S$KAK(nAi4IgetBYm93z=j5+F90@VP z7H|p1l>>ZZgt;(su7zts_nLXo5W_cHizmlH$wkrUj_WwKHGJP0jVYfyD$d)iqkKAl zk$jAZ!sX+6Cp9ixKA(3|B{}>ZurbO@Ek7VL8e_a%O-?8PK|WL*D+^tLw0fvG z&UvV~(s`&DNpEl-Dn`;+>UK$lz7na=hvC27znURE-phyo?o~U&46_MRdjYt)--X%V zCrUyo34BgwOp@t!NUIxbljS4HLr8bz2N?`+%xsvOe;@qS3;W%jkWsE{Hp*w22D)3` zZZPCc?tK7!qPGN6kE`)(h{3ELW1*!iW>c0z2 zsh`UM>i^KukE{h;&PQ&Ob1E#vR3*L);C?dvj#0q9Y6Aw^DehG(!#GDCplNG9Ii9<& z6kMIln-gE4FXoMb7I}y28UX4q^rIl^z40u)|GiomnKur3zYA0EQ6Qm*u$g%oQD82tK)w z_V=*nbUIrUf5Rd6^D~Muij{SWULP&y^V5p?{MU-%Gp92Lc~LAsf$()qKh$4t@&ct{ zOjlJ57@)3WF+Ko8rCA#q=cLA|_bR@Qk$Fq9<$D!hD-)b4?(g#9@;{(QO@RN9&!mhA z>XFR1F;AK(AEQrxHcCOq6_22vYJ&S&J_F{GBM-Bgn&9%wfhhWJRIIgp6Jt8Xu8WG@ z3WR~P;!4u*g9XZ^O3ny7K6R3gPglz)Muy|l)$(~! zWZAG*J}mOVDaxnoa``s`(Wm30Vuz*JlN6&TntV!^RzfV|(!StImyQ6SOV>!IbZPhupK>vy z`*a*TT@U%h6&&#*cB6scHsSQA=iYn6%ZsqP{*Z#YZvCm+_5$vf$N7MIvN4Ymi?k|$N8{9a)WSbW3-^I5^2bXyW`HR7KFNJeaybyNcJD>G_e<`_;O13>A#0aE#}PAO zzH-7tQtU^HEuvU>G>-D^tJ9otA_cYfSsVqq?Zs|1+>6PcVW;T+&ImKPxbs;jz@Nsn zT;BPt9HehSTHSF`@tgm^NVS@LReeC{(`YBZBJ zm|Zy6LMe^hi^@2yRhR`@5qi{Nhc*v#aETZQ+D95~h(r5cqtU}IE}#lgFFBWv!!;Zh z1-z8|l{JC9Q&)yeEO3C#qb|l7B7DGhv7|LUU@P3{FlrqJ)|zr@Q@9ljns`Gmv_FZo z`#y)bu}O8oqYllH5yj)+Gb1J1Fb{)oG^F%V4WsBGI7>B5ifow6nU)QcA{%Bs(yCz~ z&-u?NQJzmd&GV_Ukf-T+3qtgK7j)o==QBa0BhGVZtU)notkxwOZGc0YrO`%$#*625 zy%GPv?dypUV-a_2Svfw^*H25D=IhlC;~j?)^)(xTMxE5OY;$PtK282FxZfd0eZ8HX zAT#P~rxRc_XD3kfzra1}E`O%A2l?~i0(F-^Q~G)w(#qFL9=NwMtG{Dsk=xvme0)P4}XI>t=8qdW6yLjPf@+mt>@2zIoir$BQgxH3@|gDc;m&DA=3AB{E$a%{{|8jT&DSK6~B z?W}qgPUQSY>i5V zvKyiUS86DKl$?>TBtc%Rjgk}c?MSO|8KZ>@ZdIsg0XG^g{RW;LEn^(oTrFB=Xf#w_ zMoW01Mr63~ErX4c_G{syqUC-qPb6BNm$YArmSYa%tZ4ZM8DVEej)Y4ryu`?d-Digj zKjmUfjQVvK%rzP&4px3u^mpMH^=MnAJ9dw_aguW5IJK^sB(+@99q||SGs>b4e3< zlm``~1|C!IYLv;qJixRJ%rY66Uq(GT^|Zj8D%GarS4a_mEXEyhgWnii`6@Om2&M7W_pDD{X?Z(d)y0x>hPDJ=GV)m+Bd`1M7HaaM^4`T^Q`BU#~`so$1$=4o&y#HjNhX>mH59aOHiMqmuU9ZvEn1_&*Zk5x;s+z34E& zsEkazEgi;Le(fw7>dGeK*K?a_XS?-f-qe^c9f0uh#G~72#`BgD?z%k0ND*YqV z@)}#E^DyHozb-t@uM4HxvEWACdc?6s9|n#)w6N~iADWDo&w4p_CBUkPi|AM0ducCe zzwOt7TAqkoCrR2_;fng#Ih?cndZVT$;@8`nXlMI%qX&Lm6b;us(yfJ<4j8VAJ_C+X zZ*8k|_%RaXZB0cuj^B#II;=Ixx=v|2F_#a)8HKrEu)Dhf5{Y?;UFW5P0nyj&uD`CE>KON=!4-U z)dWa0{@0Trn?MQh+Ez8eQg!LzG{I6iPJaciYJz2_HNi4jXaX)_qD}CuV<`ha(ga7F ztY;Ib`R@yj7-<3lqa#&k6Yv&%drAA9O)yYX5NU!*lBP957;PY%pw8i()dV+cY9dW= zTNCZLkVt^Aw5!~MF#DuBhdc(=)$Kki>2Uik1p#qMUm0v0ZBV+ zbiwCH9L8CL%ezWTSiYwc8C^~_sXlvj`7{oG-Ef9q$74+7=%VQF(~a`^&j#t%PPm9y zZrvc=dMVP%ts5P;hShR-qf~nn*ipY;g%+c0^ilg3ho<}WPK_4vYokWvpv|XLZ%W#k zZpHd{qSI)fYndW`HIe(Y$#4~fIbyVM7*W68>NImF$vAy79NI)X)2(4q+&>n6-5mAn zvruF-+;x%itD-kV{kB#4ZLD(JR+;Oh?zUY{S-RVvb!hckI386rzW*Q!BYpl0O%Ow( zjAa2!*bbB%?^H5HqfG&gujJ=DG!|Uxzil=`y85MrYPR!gAebHx>Q}LeLPCJRMGicl2(*t}Qy z*tt@>SE{)V+-PX>pG}+@nmG<_4&;g*dwOcL0S@g#jfPP-EPn2cpHWESuU)BKrHLq5VbD!s?fY5l^#LsDX&(5Awf-MBIZ&xkbA; z2I*phK2(qY+Fcd{$`XS=?Q|$d==B@r2MZj^o(f*MbxId&xxkd$&G4z|N@VlQ6zZ zr9PC^_x)siFbAsm8&&m1kP}EHK8ScEeQiGFt@PxJNsOz(e=_~&HB=J>%0iyR&lo&{m`S|Mv_02L_5!P7rz5_lAG?RS(`4t5xu`BIYnl{r-K|85h}o^l)aB7 zK_DOnT15qjAi$RD(-n?NlHU*ED`o2YF$@&hWIUk#dnd<3OS;rDC#pq8R}MuP42fhw zDG5F903rEYssBw2a2Pf63dL-Ku8+ML>l2M99)8XY;LR+vDoEkaSP6vYSFB3!|rU^iKtWgjRu(=%Inq5`fE z7V}6t6>_E7$1X@tv7hN07xd(iZr6MfY977`U$sawIzf59&q%^oBv?)Xs7R37b{Pa* zX{!dMVU{Y^)M1p5NHI%$@aPU0&d=a>@EIjA0Kdsm1|*?t6p=>RPEA%OQ@C@JUfkQW zA6yWhZWP<)b-s+wU7J{$@JF|*{5dG6-Nj`hi=gIh5kCXJ!%YD-A zldlFl*oDcl0sG&dC;QeM8tG2}i_J0s*~LKnmu_Y-NN9*LJY``w#ovuFo9s@>G3oYm zbDFnWQ#9JNeLYNHxGlJDQ5)VwP>kIx76@;rOg={wxK2_`0xXdnJpgjU&?P@tf`THs zUC15D334Q#m*uxMHaQsub0VUID^?V3BIs-X(A{j&Y%rj-hTxJlN#ld^?FK`P#jGiZ z4c27rCUiXY`56wYP1`^~LyY5z5|kaM$&w~F7S9r3Ay1@7ENs$@p&Xliyt^5Qxdg}% z6YZ=DGn5)cLOGNu;%R$-o5Y|$3zS0a(9Bck#x_08r{i)yP$ZrP8j;*YgR#>JobVOr z5oR#_qZA#>Q$%#^CZeHIbSzK&xP)>9q~wNMJ7NoV7^w*Ax66kmX?#<5EMS!|oEDHu3ztA~z|+K%};aGPj8PMQXcAijG@>(@F)`;v~O` zA;#Ip5VP8Te6ZWsIDd%wVyfNlP<*hU69l?R*)crra;i9H6VYz$a1&1tD>s!%%2=K% zuq$s6@mCIr7oH+I#!4OXjs4T(Wr&m=$5TXhoF*HM7uciTgb^hey9G4iN3UWPV=}t^ z8ORXhd5Y*7ujz_9o*Cvy*$F&dkKHZiWo{yfWSpR7oB+Dq_+~mQ$QG-d;h2n?M))k@ zS1S||7z98empC`t5w{@yu%va3(l$hOkGGE|#pKxc#)Z;Thd~NWz!RHPb%2%j#QNrK z)-+7;g(JkVn~2!lnr%plN=X{WQ$%*0CVQH*&zG_#JVj(nG}&n2l|g`xGen&`5!=HwjP;cK-W){UU z#U`w`Unn!HQmSQg)i|D&;G}wcXt_BofvE+K@B({dxj9|S8#C1`Fz&WHO*MNP585-Q znm>A$!i;71%xUIWV`<}oY34I-UlB;Ep^EHVE;Glca+rpHc#81GZYr{Wyv!VCPp&j; zg8AUcUQ9p{GE5rvA44SKF_?u-aDarY|{T5MKM!5(v`y-2QD;68TPWP&4Kpj!`20j zyMi$-jTrvtn2P#3`@jWpxx@Isg6cX{!W*K#YG#E(b@kKnA7_9uA6z-7Vh+hzw&A01 zvny*Iya4|MrFL2+Qdq`Kn`ZxVjk&`x?H$*exrS$b*bJsGHx0Kd&MgeL+c_ozUlr%G zJA}>5gacUkL>MkRv1>{TyFP3tL&u6?Db4L$_xhV9ymgvPr}l{h;(o7nw!Ie>H{|nPW}kmd5{DVvaG419t8W<~{f~Wk+r>3tH61c^w7b zs464Q1qBPBpw*4$c}A>Vbt67(=dy3T(d=O~vtPT>oa4F0gTn2O)keskw$v;!4%v?_ zH9K@V6}8qQl_*uQvhwp-l-r0iadgEcNStaX-((IjZfzWUlR3jMp0podW@frh1{#kp zGk`xY~780+n=E6szbaMddFYS$ND z`;%4XN#jrUo2$+Hjf0IhtTE@hTtCO!Kd&=0j3xF@>!fyVCZ&6cin_QxCUm^hC# zlI}ER6_nYramn_PnMR6z{{}NY1y*@cA5}Ltua}OSZ=@Ij`-2T;w&AzUTg?f9II!aJ zY6~mh497WfF?P+Z=6SJO!m`1R*;}qj51g|s&Tz-c!i+c{#Pot=;!^Ev)|(-_aHBcN z?(j~0dSIt7BJPs9&A4=X_eOJFOpGkZXOFziEOwpn*)?~V8LpE)d&_O+P~&jpC%2h{ z3?s&Fd%M}Q8I1D6zif3EV)M$|@sAE-?OSd)52mk9G~Df^=g~cksOOI-Dutgr=dTm( z@Ft9G`|dF3$Ixr;xOltoCN%A8``S(BVPlVd(Pr~q<5s(Hi`l#-;?#`-{WA23m_>CI zc+%cd1?SG*Vh%Hw+fQsY7rEA^*?tIl@Mt!AeE%MP=z z{py`&zU#3xW#Ln4vdXT*nhMuZnV4sPb*CBYI+kXCu-y#1K6TEgob&hUY%H?N?=lw| zOVw$meQY~Y8+e*%_qp55H#QSz*o*EqXBl@lp1RvSW_UT0l-4)?`CjuYmp%C!qgCT) z_nUt;8$W)?++o_=I)>UbKDoy<4Nv*BX%({@UwX_u>58wLQ&)li6+6AI)ZVw(e8#@* zN%N15J@=VcyW@Irki?c^?>k^#WTZ4Udm1-6j2?DbSxU&h_uN>^9%09%*}cnB((GNE z@r`->hX#v`H2aFO6w5yGEc_=$`d!h?5tb<7ISlYPw6S|WV_No2&*HGDYsj*HJ{g~8 zXXVGF*niCmq}lyj1^jl+mCe$OJo}_!h2n65DPQgGYk!>^lVLygnm-NypJ`Efiu?ks zWL=_IE4Nx!0tft9>_O}q_660+9qp5~Ff3tZlGXT^gXWGn^ppX^V?#Mz9mO>`r#tvY zoVig0ag2RrixsjPr>3N(V_D*#E>iV#K$==Q(tKfYG!^ z-H{No`yMe1?LJ#9zkPpYvSr_X#9U%`SnRUweJ;1v*z+}WNwVGY^Y|3I?As)hAGep~ z;-219m>YAbuD-H`awX4Lj+tV2|WI1k7bG=|5xVMtNdKK3VW< zL)^$9ZfSSeoE8dW>XZ4Vf#h=7Tpi+?Qqt#B)WPe4xlsjiD$XqPK8;R{-Y@A~hH|64 zT9PVyWIhMo?!CoIvY-6OOv4~Dpm!)_#M`@C20})WUGuRSGE(h+A7TtkKW3&Rtc03~ z>b220;xi6aM51%fwvC3EfZgg7^OXd*L%Rp(HulJEX(0^0%8J+RBl$7??VC>_n%|oj zhiLxP+|Nr3X)o7Nyr5+LxO(EodJsqGHvr?-ij-Lk%qum@@27m@>Ju1$?1JY_%V=YN zaBED+e(yUo#V$<`46rx7>bLBR>hNX$Yd$wO7?>!(GSfmH*-Py6>*CI_@68TajYGdQ z*QeWMx4B!||MGfz;Xhok(Z83C11R$Cp)sCwJY4j+>{a(-61h6Y6YJqB%4Kh1x`FA= zGW{Uadt*EsjNy$Xv7QHFjiN?RlIPE^Fxw+pJS0ZZyV$tSN*0fZNluzHF0^Ji>DMK{ zQPiHn=iB4l*lUw<$+yKxx02~6#7-y8pYJ8(lM#=pbeMT$0k1d$k@WjcItGMf@s#+& zNvi_(i=R$QKP{TE`(oRJJy|>}S~_XcSb-i+db{Kw6#Rdvyzwu8%#n=$4Kdac;A%cu zydAf=jil}zd%tnRse~U7Kjp^kMpFK5Myec-FmjAHe$HlmDq)HaAiHDhH{T1PL zvHvs$Z-_rTX;tH+;$0`LT>7^7>@@jz#Scz;mn`6Y5yNQ5rVKhJ0;i?_CR!ma{jUT* z5*n!_vnSzfvR}*f zoQG5MJkJ#gM`ad~!aVQW@3;1Zz-gHaQxD{MihiA)n(rBD=jVG`*w^KI(mH*pRLEjK zQdk!2U_VtmM$2M8v_}?rTBkc~=>-Q%FMMQA$@heQm)0YywEtzT&z_~V({I|UM0qqm z*75JJ!^w6Rl7Dr&`m0GX(8x3lY)3 zE8_keB`Z4oUM0V)Ek5{9>-W2~{`LPv>wEtvTHpCU(faOxs&)8p#*NY>hb~7(c2K8h zavf^yQ!-rJBEZfsY8uiCNpeJsB>w%w!P`o!HXMZihv9%@ZAyj8<|f9hnT0bKy~J&B z=9(jA1`gPGrzr)4bvK+jQ%C4{o+IhSIFm;iE)Myxltjv9IAD{7K?7I#T!}^K&51!D zhjW33duy0^C_}Gi5Le=WO&SfwTo!ObCEaweZ<}1OtEFfPgy>J!h(a(>v}sJ}?0G0o zF8x!gRYqxjs=D-;PFaV(K*LLjA+sK5-sX?sl^Whg?BwNTNd$l4$b648CVl2j#zGd2 zZZrwCwMX~yoEN^xk!3lP9n8x+sFh{jh%?iX@@G4E1_g0cWUrTECna0=&79Q-ZL*|Z%pyeRBU3`LAWVjoMv*4vR8+BmbX z$7ghskugj0SZGQMRY@5E4*guxflZuSHs0RPQ<^qIRz|MW)M_=QyVCt5WgQ$~Sq|=` z;W7vFS;ilUp@+KHICS2qmv)8iev>?*FjVkzjop;$cxjnOjBJ*Jea}p1uH3@xnauDo&hs72`mfaRdIwWRHZBy=_r$)vIAGh3 zodu*hI8p%bw^Kg@^chEnl_mCNsP(XTlMD#)TA3pZF)ye;CWg{12m72Q=sA$1Ofk;G zh#}JkGQ>V-$;$5qQHB@T6CIg+$Ph>LRPsYq6ylXP-`k*~LI@H2{tSR^p+hfnu+LfV zE+rj#d3DZjfD&)V`3_>}DTX|8#1rIEhF9&f$$H?$6e=BzJq3wjIA1}$2nTF+*h!y{ zvmAI9A(ZS+(>*Et6$2Y6!;xT7ZHX7DQHR)f7zb?RQ41rZpMx3n6Nne7C?od0f&(@T zTvC26&R0432Ar=YUZf%@hlxnN$YcS_ac0P-pmI}qwkt02*nG=K#5v@pI49Z(lRcSu zLeqA#r#DVBCVN`rv~04cvvH68GrSY+)H!kYOwl`*^^% zA3O7A5!V z`wtZ4y@%@^yai{bNneZeDvi!G>HH3hi~fi|oq8Fr7C*G7T-Kzr7ljdyR7nisjh9K4 zFJ0!D7r9!x!;zv&V&6wNVB3M6xmjgm)Nr%XKnxA9lKn9-Hui{=TO^d&_p$wRl`P=g%bO~J<`*d|RV9d_Wbx&)#NC&B z=9N3f%1S`$S1SQ}QzcY+K5AXngnh>q4w1gP3Hwgi%dU_%y>>;DP13PzPIGLtYH3ry z>ZZ1mHbJV%Ci~TD>9UWjrOFO7&rrGcG?kanlqxsQY-+2GG!If#NgQdbZ4RB)B!-g) z)yOiI)yTHGzeW~(utuuUn%mNDqcGs>_}E92TLVdycbLyW;G1#I?OV&8}M{a2ph zbg-Msw)@q}x{t4wMcq;BX+8WSrAt<4gI<)P55p-1bU)6-z7G^#mJPaAc6{9#^#;4C zY?V#c8+5JSyX&Me|EiO%)3Uy)Ax0oi%B`wwV&7lwkzk{1�HJ_P!>3pCe4o#Ax?s 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

TR%b&qd%U{5oX`cTtBC$gmzrwraKj2s77(Bio zkPE^`7=@&hUA;2OPbq#1JGd%e<8OL+0g^gNJBN-7GjPFMyL| z-Zzw^Q&AR64VhOy4P{(hJI&?ta0lN}@9WrlDuWjk17u!_50iOuF-C3;Pm(*qcgh3d zd*ngz5;+%sR2~VhmM6ha7v%XLqrM%9&B|B+?~wUezFS@nzal>dACOnUN95J;QTZwO zq`V0}EAN2M%RAA(b5V(p;mh&`m|xS(!CivmaeGDo1oJDKX+8v}%6#N3E0=*Q%Na0V z5Y6%p;7qwa+!&5BqdO99l+ho)QN9W8A!ot;8qHuz_mmt4QgufhMy2jMtesB%Du;Y9f@xC~taz*14>OjMWA zgj1K_n94#CB$~>l;kI%OxSPzI*#U9`c!=Bx9xn5~fL~J0HhJfjFZY3G$V1`Tax@Q# zMM_M7ACU9m9b{{zg6ke%2o59N;VXL4uw zOSv0-P96aNL31zWf&-rB%EZfwaI){H!%^_Tg@x+ECFC368Z_@dvDA~<&~-9rrG*@Z z+sK@uPBLeuyUg=aU%3K&b75?McF+WgEM@S-k}J1`$H+X%Oq4kjGi5&5%#(+}_sCiB z3c5UiWwp!|cv|NDhqGA;Tva(cWS$&$%Q#IsugKi42jq14h|Fz#ROU85Df6s)O0Efi zA@iJZ9*%N!T>Fd4xBeN(X8Zt8FJK@IiU2sd8C!eTa z{me3G+i5J6l>4z^rtdv!ZA4DIV;z}i87z{NRfH%RzkiJt{~qGSC@IYR!`>T zT4Q-U+*0O~9??!p@H(!CJRR;Y&x41^e0F2Fya*mA-v{3=FNJ5xE8x524e(-lEBt`( zsIv`;Rm#`_ub26h$yRwUyi+~|zbqet_sbu^hvX08cjb@akL7RSFXivyZ;N94bE^vQ2>LHHlJI2@PimoEt?%a!3YxjI}yt_4?@`HV?jxi#EKZXZRWxe_vz8 zCwUOuLmmnDlk?!gGM^0@E-!#b$@jr|^8N5+c^Nzdj&kiELSnWuT=;I8PoFH4H^Yy~ zJK!hfJ@5wk2)tGP6nqrF1=zub8n;;kI4pO7ljMGIIl2bQVyP^neW$w22eTG*EtbGPDrA=FL)T^$+kb!( z%ot7AVFsQTk{O>OC%|{e*vFi^W&Y#gKAG3656YF`N96|a6LMqtDVkps(*}uWl+hmE zF879a$=UFJIR`!@kB5)TGvHG)A70PNbKxK5h47#95;z)%p>vJ-@R}q)4HuO+!fEn$ zxU9Snt|arJwuXEZt|y;_uam!qTgbdMYvViWe2+vYWn6;0%dt2m_mz3&bF<8c(Hxl% zqqoVG;K_1bc$S)==A z?eH7&3-H@ApYuO1^BeR|%CGSG{|ij;`U%SqGIzRPWL{=DxbSBg?sNrZ?%_q{3^+~Z zb$(g78C+d%1vilUz|G(&8y$(n4a!&mcaR^3yUOd~0W$ZAA@WXmguD-)An%9okl%#o z$nU}T$R~LG-KPZa;~$higCCX8!mH#j;cav#faL|5v$aRY{fe_+#zmELNak$4EAz1Y z*fX|&6(l}a2HU+Lw}gL|c~AI{+zyUS^9RutE-3ecQ{;Yd33(t~O6I*{9lAb%rD0SF zu0b=IYtUZCwTII~M*q%0nNJmD$r*62%xynL=C+?Ga|LdfTf=kZC`Y|miCp**nft_Q znJ1I=@*H@Jyb69!-UPoWzYHIc_rgbHUWT8LvF)AHX*~a9Do!GCK^dRIKgeIgzsTp| zKV_aXLfD|J`y(8de}R+a-{5jI&%0PE%be+&GXMYRT&D!5x`m8>oQ`q^+)J(m50KHf zGem9#50~4(qh!u*zRZ1Mx|{{iqoWwzZAjdwjIr=?c@q4%%yauXc^14$o(FG}dFZ|% zFNR-|d7giVZU|s`U*>rw`mqwlkT@fkhtJ8}p}v=!!avJAI{uNl#);S?*+C~bB6ICa z%6;MT@&LGsZ@m5kiCW6wBU^oWG~7fU2e*>BGq#gw!=2^(;GXhIxWCL3*I;=wJWPHT z9$6CGpQC;eiE+w!4bGR}fv3yI;ra4M@Isk8=|l2G_;L9X{FMAF{EW<7`t5Qe&;PrW zC13|W%xb0I{blL3;tAY0-u$e!{_AI@b_{%_-8oEwdZsGzboS=_+L2( zPAuim&`3BU^Me5YIj_Zss&WBWHo;$CGmh3}W!!4J#4HG51R0zlxQ-mcxwO7q0B%q7REVXE zjIh%~#`TOdjJ}Q~aQKzx`5y@u8lwyrnngEe5gc+d%Pf@n2>Gzg)AmX^0b0JWt5{Z^_d#FUdE{z2F`4KzO%22!6$P)Zq!_fHHW}I3iDl zkIA#)k7S%QoG;`B@OLtwg!)Z>1pY@}4kwiLH_a-TPxo`*;-z|-vONDI!6%ifDdQ+y zS3V9mlKG@kbD1ZZ*7E0YNBJz=O}+%*BwvAVkqh7m8Yvg%^FI@nNP(xx>2OrefbW*8 z!VBf<@G80qwilMQavZ!-=41S`aw`11Tpr#BM_HMN$`NJY;lMc|^HBLzZV8{2+rsDM z-tbTI0QfI?6dYg9AKV>qA^AZ#BJV{1PDv$RLPmLcFI+|DLvSsbdw6~MGq{QT9o$O( z6>ca019z5Vu?c$0+>!fx#`Z6PM7A@MH3A@S3O+(~#IKb8p`v^J&&SGWY5?WbW1P$dAJ(J%fdc!UbhyJH=(5-b>5Z!&T)raHf1C++6MkcaXE;uJRbTe|et& z(b-favXn6m9wEBI$vH2FOVOAAEUV!V_75fab&$*gy;V)N>oS2 zZn-x6id+vqB=dpfUAZ;K+k(a}*%p^@@}}lybq2JR^kW}!{m42k@8V^jC>rPMK=eq z%+K)6DP16Qzj=&q0bp5^;oF;bIgI!g-%%$KiRYA&1ivU3f?t(+7CR`jgSTWp-oGc~ zyyJX9^Gt>1e1`7?_@Z15{#~vKI~AgSA#U&Z3ck6GlV$EZsWMk6U2X-JlW%}4%WdGA zayvLv?glrO`@k*bo6*11RtfGbH_F*?4|x>aPv*tQAo)%>SDp)xm*>M%WgZc8WbQ)? z6=zAUH1f5_LvPDOuH^7I@pcZQSYu5iRN=Km%nN-858 zE-&-ET}9?aN^N-}+(4cTx03l^vrh6Ia1WUmEH}%%V9Ayrf=5J^;JJOQ%&!QZByWVL z$-H8jB|itxmv_Sp<$dr{`5^q5%)6y0<@ewXa+Fs%Tb1|--YN46=Oy_JyifiQ{D%As z{I>i%d|Xb5!A*-?82(C5g};^Sz?Umx`*R26ZP!1_xE_wJhesOA9TmQ?uHx53u3VSn=7#t8Q04X!o6u8=vey81>jNi^(bhI^uWdjqf{X3zpa$&@G%B=8`ToK+U*N5MbdE$Co<|W~A znJ2N2WS+!M%N$?yD<#?>@vYnmz9jdAf0eUfzBP*j9R`Qx(Qr|DGF)2b16x)34!E{F z4{qQ)>MTH_sWNzmx?bj^Txa=FxR?AmJV1UL9wKjphs!(R5%LT0bee03B`Ozy@2ZUL z&kRoWB4u!@m&ts9ab-?BKgFNrtHNvL>hMOH4=T^fd`x*>t_!~`bCbO$H$nf-n@Vtd zyd!hkKazXH{78Rxd^3Dr&VhfDN5Fr}ytFD%#V?-^C(1M6BJzB=6dYxvyi2X1jKy#@ z`60ND%xP~ZKM6OH*TG%rwg8r1GN*Td%-J0xb9RTz89e`wQi9W)Cv%D>%iODH$Q|I> z@{RD_au;~9%!k?sE;X^X_>UZV2 z@Clha_2=?J_=3#Y<+lfLwpPNwMwQrz#9#7OI0kzd3+;gU^#Sy2aEg2o=GO->{w7?F zZUK%u znZ?e@1K}U#iRjd9ENMiiEuqR3BFF|T~rI1$9)@_?RSEs?0}DQU6oN59!m2(ie^jT;${DjN_ZIn56&&k~B_$m1;&zUN?3BTz8p+>n(F|{H*%aJ^&VeK0O@=&yZ8$`7*BdocrZ|aP(0n#v!p* z=76@yJh$_6=-KEj_%-jCBeplwD_i_0J_-nc^faQ|R!TsqQ+aHNITy3xrN0%aV zbfshtuCmO*)s;E8rZNZDR_5UNk@0MEHQZC?;QGoO+z5V#eJXpxGLacDx9d!q+x2dl z+jW`D?fRI^?fR6=?fR_Dfxaknv%W4r03VT8^89~P32xUD@(%bM-5WEpu?; zx_%iBE>-5>%E%mCRhfg!lsUNOaFiWzbnTU~4DKp(r|T_qaQ$TtZWKKLz>+U>aI<6% zZh_3r`hd(TtK@8+|JN(Q%j)eiFRNdcIYS5Kh46dwlkiD-Gt7^3=YaOX{5W@dKm0R& z6M*F(nFCF%$2eN&NF!dtzZ5GccSF3o%m<7HG9NEm%AC@U@>IB&yac{U=HtaJG6yUrdOsYWP_#OkM8cT9zgyeMN%AR*M*b`qq#19(d!h5ga z(?)o|6_~eJ!6%RKwkj}hr2_NzDfn6x-ZBN|ZBk&~83o>ByzA)R_+_D}o-4_&hEnoa z<7xEu{z&H=^HMg5ucUAA%WN>-X}pha?U#AmIQ1iw_{y{U)2s3KSK;o5Wj3z4Lh@o` z?|YouxKHmxQ65HE8r48ixwUaO&+eet;$N-O&M%sd$Ig&k**Md)d;R|S^@ZB|MZaRG zz5CPt`1=cW@I$j}A=JTL@;XAgA}@mzW2mEB^FaLl{X6-kb~7X&F!sLg<3_)X_Z1)V zd6tnc)1Cb?4o)1Q&Tip@@%Pv7;)hl;ByTX@Nq6h>fwjVU{4SAaBIGaP)|R!o1vcW8w~M0g{5C6LcQGKhY;%Rhb}SH z+x>^3K7MF%eT4eBD-I*1hm-0J5bEnTK7x?W;RhJ%=N@NBXU^<~2=#aK-a?2cA1r?{ zG{7zRHbOcxEN_I+P43eOWeoI7HM$O=n|-&Y2l?*ij(aD5Oic9|?kDfW_lRjU!>#!) z{OK73Jj1<>e^1SDU*g})JKTat@psxC?jZhs`wn*#|9*9c z`v?Cf%yhdP!{2o?-4*=1XQult|EApOHb0KP)$eo{@^7O%-B0+p^__0b_wl##EO!R~ zE}i8b;orAsxus6vZ~Lfw8~@IZx-ao>x7lvN5Ab*3Ygh92KVm|;wy!c-HD3|q`6H`#;3$3%ndm$-R>vjE4f2PhSS{z2*$LZ z>#jH%UlsfIYbWEY#cZ4Fe#_*IZqW~s+%wm0{vndx++j=}n(HoPa<#ji$=&nZPncZi zhCV{_z&y9+M@VjPdoy`-o;!odx7{^Nww&)CK{D=A0mmuhzSg`{F*ot!_#!bI=DVdn zMzLh~*x}?fci_hu)K~M}+ZfAmmwk+?33s_KG1<*M%jDv_+=8DVInAyA36d#yyMvfq z=gwjBp}XBpOm1+GF}eC~_YWpFyA?h~a`WA8mrs%W$eqY!<~{BTCQrGqG1>AS_gf~< zxJ6GPdE-59^HWGByTh1#`yO{8lTF?2O!ivfe!^sq8~O~%6ARp$pCP%_?ak!Cd)*mK z?s3;JdFo#G2$Sd8RGOP`8f%%o&@FWuv0`qU(nbS&yk$4*d4^=+wL4DlkamkAsKTe{=r#)mvGO2j^^c*GuPY{j=K_%$HoVb z{T*?$nYHvjchVVbmy9r;`f%&_NGetoipBBL+COHTo%gx>St1+p!S1kdssB^r(tU2~ zS(Mm=5)Is<2aEon6783`!&%}IO5Eoj%PkslSD!`i%a^!280UMMTYH1L#PFVn+?X#A z-iPp9_w49!#BKcr;xiw1`!L?VFrIGpiZ5k2!*!ozxL6TfJNm`XFkWW4`xE1Qe_FOz zJo8J0FFoqE{gSOC+|diqW_ZsE_W_0za8)tP3m-)|?h0N!p6!19WqhT$vB+uYx1aG9 zY7BhLZSWOptWL%KsaInH!{4oP=Q6w#;fn5>1WZ`Me@|)k$KB&B!8ghb@TVi?Yc}|} zTk&heGt)2~?rYss{!h(4Yu!mKF##nidR=Z~#hL5e{R}^ZaFW|*5Vk<#e|Ncgotyd% zO7MljNpAf(4C;SM99ZWLXNk=yvCm)2)!(4)Q|sIvjE^meTL`!JC~S;Nh=(%W&^hdT zIqTh;=ddfLySbFzO>U|4NIGtt^GNP{#=VWn1a}#e zhn{s`VzRP(mdP{Ex&<#F+1jmt0m&=Rx`U96&6muWFfYaRq{6lSmyX68l zPzJ879`a`8{Dt_G_$$wcoUa`Bp9}F7<8~tJgqPLyTdvd#ZkKP-*aBP&75Bmm7~Zzq zUBU2bge!RAj~G6*+x?c|0|-Ct_P#kK;#U6;;%9cd&HsZD4snP5C%#%-PIWZq&UvM9 zv7!b4d-k2Z?hX`;o5>PhyO&r$eXkqy9l{SGyxR-6{tn^Hy>1_ddCl^)7hcM6uUFhB z8NQ70VK;OVhicM)cQfHt_a~Ovhs%}4Ud7Dsu?ug&zZTziJA98B>V~V9Jzmai!w>)K%=fn2hb1y_X|mHj_BxKL|0$93uKOfQoInYG1D^R2O^h(Dx^o%MXo4F;uk=2I@#u8y=lE*=pENh+vKOjwnL8^APVfq5`_YMr z#vJ(2U2!?SYW!a&O6}@f# z2siZg+`7M_x62!2oXhRq0d#6Y2=C`{XTb$tEE{r*j13oecmIlh|0o-Bnm#xOk78$- zY)~%b9Q8X)_>CQ2bW8n)4r4Mx&Oo=rZy3|+A7j9AVEmx|xIilG7G7MuQfyAhneFan zf%*9%=Sla+Pm?0lZ%FkM74UrA zrYBc#YSS#VvFMgia*|tOe0W@F@viyf!?O#xtCJH8x}_?H3hyeDA8sFteu_su?w!6Z- zAHkJfTr9wU*~iCjXJ#nj8MF}}`w9|aM&e@+<99-AQM6xR#zS!85mYZwHbfWX8#j>| zk5JO}975_5gq@_(XeAmO`2db}3hqL7LTr;-EL8zDVw>VPgUex3Vw=&iPV58m7)~+X zUdPrzJg#^*@^$=*%NR=XMSO7;CXf@+d|VwqbrB!S*ZC!5S8xhFiL?`YiP74Px&E^Jr`G#_8L8`+f6dTq!hT=h)8ETte{cNiP4`#Sz4Ek+yRdQX6eokp2(+f6KU zKl)8cXm&0rlhB;RbC4|h8-9vBhExG3_D%E_P3ZbALMbVUO)8*?qN8yJNNmbdU?V57 z8M|@{j>WHHiH$p=NYVsUOKctkI!Pn(E3pMvEX9ePgIP;#$!1~~fd%W$LOga0iYK)h z4yMK?-@tW=BqM~^+aMH*M)>~Dm`E08vq0nS~&(&;5unSqsZBFB*t zinKz-m`F|h#!B#>G%ElhhyGB~N@3j7|E5@fr7`ZbGrK zxp_`B`A#MZdTWwAn`@Gs#82rY$pYq^dP!SjV)A% z@1BhyhTj_y3Pmb`F_E?i7l@q3uwx_ta!-gX$M5*aZ)iIl*@-dUvt z-${{en1STT-*BPGi)f;7gzx+=5-E*!NQq2Cq^MJn9}qaO@ZkO^o5T+cEqn_%jFa>c z;=YR|-Gd5+Z{a#rFE)96zFec&RK|c`$N&C8aYy^+~kQ53|JCiM_<^fg_L|A3GMm zllcK*-jPr!%FYXMI~DSR>=UJyAsS{su@68+hOWWy_}KOMoxBIX3hhQIzXCgQ3LZuS znV|*UG1jEbXd-kk2j(PY;a6xO9ZFh;GNDCuOwunX7+MTRodQX%Fjb-Zcyz=j@twq> zC3Hg4kF0P%ot!iZV+k!~`zc9}viveSJ?Urq0Xie8J*GeOAYI)**lq#6gDr$32#uwO z*3LyJiSMruJ@pJn9`z36(0XrOo#Ici`#AK7f280iwDL2QFEMP=NJhO?MU-#9b@+1t zndu!-I#e{oVd7(ROES(+Fe()q63Q$U8XSjyxs>Loe}>*6aanD1E@mZu|mh~!$>m;X>H?YAR*dWBvDL?PZxgFsOxDoJx?abDSdmD`}%)>`M z;U~1R1@3qJsp#rW#a)P2oN()KJTDdEUKHwEVgk*b>1pIu;t3LI?^CS%S2~HNkm3#& z8j!w?E80DjA4L))N%wY?9wBerbq9hBkum<{n$H&G@gp*jmS^&09I6k3WxZ=lfUULn8n6^L=4`dP8)vVKmL7ZKz> zla3kw@BIc%#U;TSzD z)v%p+c-uMDH?0^7ab9bnSoKdig6Bi*tuk1l3^KUiRKbc!G#o*4p0{zx8&-n~`0mGHUW8uio{>z+Ead z#NQRYouRc;g=@jjuezjBw)Zoz8gT_;@&67q!e=;HqzDGU9l$FxDVFoF3@vOzHb0oO zl9%npO1^~H|6^{7^AS086eGku;wQ9nJt|j9;W{4;@$?<)QzmH4?9p>AGboX=~1 z%ERHNt94O=b)R6AuWrSwzrD!c$S5&7XBwmI2T#j7wVq(sq!>=`TBJ)>Mw*-X>L$+T z{y(V5B&UAmNlwLvl?$MxQxO~XRSsfp40k#%{v!rIQ_$~Yt=Go^v{@ws*=&;^N*J`8 zkdJ!=#4BpYC=p~pEL{t;2Pa+Lh#~KnlgW<~PCmj};F;Ge8;TJ-!)q17g(+2eSEOx>8B7c?EPMOz3yZtBfCfro8af@`4?=S_!0X4 z%*4lbfCTLK1!oN;pRy#;yOp%SNkVd zC{#RDtz;;I>TwQ2p`T;wxr+;hOC~3vP*UeeQyg~1-Pf*5Omm|@$0RgEy%_AuX-Q~0 zHJ%mI8(nQNCLM>uy>mmztB;&g3vrOfq%UiWaA~)7sC3$cTf3#WXMT<;=r+zzDiSS& z#>=C+`eOAAlSDri(3<17Rx!>m$Pu7mB_y>XOjcGsjju{D3XZU2gM%7B~#Od#jK$ z2xYv}P}s?z{rARI(|A_!mWuezvpdT051zbpVw`3DcHMYa_>EAgfm`IB@IC&YI}-Tm z`7zF>7g7A8G;mp`J?&_n-FS#iT!{v)io<1QrzwRj9Svt7N&2`UqO)TYR zS4(K%&R!UvTdY6~t`9;5ViV)=JA@Bo3nixPid_^gRlq&@TUw%%&`MHy(=1y|5vhb8j z)2zu(UhcHXZr1N<>2A-&(q-Jgix(>F?*Bclw7Vm*bmJy@xwmIc%AGuEdKO1Fe#&HL zQtqu&o&3DX6S8vih7BK!7N?-4`i;?)7xnVp*H(tpZ}!sTCyX1PlZ*aXtYHHb8#_8{ zYF?HXWur63=P~_ipVQXLah+vwttYBqxKbozuX*n>9Ko zH*fOj5u>q**-n0LUe4t4-pDYYe#_W?UiEIBdvp!@=01_{Ep2)fqn_7kkp^ zypjH*f>ad8EVmSo zz0ni0{9R;x*7ymNG4J^fCYaMRe$wcXqw|JgeYxA^PaZaIg16ghcg-3#EH7s)_X2O5 z;%PRoA5=t7*w-Ai%$3d>mWN~e>R!m(TRa7IYwqZ&wqb1I>)%W%k->dGCx0^g@aCTb zL1SK@BXWjKcQclSOGP+%HWX~ZtbPOC-t$9w<+OoDPw>J~6^`|C(^7skvvrEGz z+-EC=?{vF|(o@`=N5V7RG1a$Z*R& zot)y%dM-V~9k3?cCDdTonl<5j3Ow>>!ITOg;^Z7Gym`71B=DE%pWQi2i>0}n%alk6 z#kn767bqX9=!SNsS1UOJxv6*nXphU7U}24Z?yxMX$7w358{ z#*%=apj|#1Bm4B4l4p{Gx z;+$DJsjd6TGvVhjtRW(=~udt`IC6aJ)b30Ly&%~5nAtJcL;hn&>G?Xd+_ zJGwDj!+kMt1Ga`+l+?UsvM_$}o`FW;O&;R zaJvv*%+z2z#?iwaupQ&*={}A>CEKwIF6Qu4tdYNJbP`^zv^_iz(=~TTxCQ>avIA?< zW!K3a;fir3zd(slE&RfA5kGO{NsC6XGX9S4_MjuEK*db&Z=FcXC_3h?%*? z9fv>BsV0a2@d;|rHC|xM&(8_UJZZeac&qVFFBk@l@lPzH#@2Wv$RstBs#F z-eS!ELj(glXnc&{mJ($AVlqNF2?X&%#wCrb7}q!Emy-l_`Q;>mhZwtox&C{D1bo=| z1LL#C-y8pK9LJ|)v=bLKE^A!F_&PWmRPdh5QRShg&~3(3jrmWNpzcB%KU|jJZ$w_l zcr`!1kyd;Q{;~|7dx|rF;GT8(ys*+E5g<~@O{c)lq!(|9qhm3ff<|2li~_$Z3>f4sZr zOi%Y@W->`;azIEp!hItk0ttjW5W)?*A&_urxP#z10YL##L68C$C7`RWiYug?`%s-CJ2$b4!7I7?wJ zC#Ev-LXR}hVPX~eL>iWJK8pUmxM7Hyn<&QIL`p^nVkP?mVicagVQKUk#Hup6P?_St zCJo=6hF?y@C)4oP4t8qI#M?0?G)}BC(IpKJB35}XC&rWpeQi}hcH2QvG#s4&Mj#GeFffK2K z&l%9h2{@A$A!MG7+%^sOBUYsuPOLIImRKdgPZwn=JTr}F!C9Qp)}=+*nTGE<%cT8* zn8Qi@{s^3)oe@Yy1`1u8)6c1@B%&!CKoz-0%r-y?a{P?M$EQL$c=!1z> zH4aas^D989($65~@DIO>fU^{?OXInOnByY+mL$leJeQ|2@ykCcq5Ses>eH}0$)E2; z-jl|27cs|j_}xn$g%6Rg`p2_r{I4mxEdMcjRD^GdRX_M8EkXtcs`w_Y{Mo=+3YU4ReJw^`I_I!(4Vu-SmUf@US#IQe1Vw%1y|XE%kh;OADsGQ%b~= zG|cJy6rD>{sXOr6G<-uE-kOHFgq7mI+rj9`_&tyoz;n$~OkAHz-I~v*VX3;PTlw`g zI#-)gcjjkl_;ecnIt_b`wuqo^L6gdX!r?TWZ6psr>&tN^k|e5^2M^Xv4U)1sa8@lP z?VHd!`TLS|_0I0ZajL53-xI4B48IVZdbYdqrc)nOeqLeZQ9GT@+^J^-`D>&|hI5?4=D>o*uxX6&?UQ zN#QbJnjbKM;lQ&M9tk{8;W5As3eNyuuJCVwX`aQn4Zv3`%tyjH-~#l^Zv2=(6$ zo>nTLA8@h4e6sc>Rz3WDg_%H^!WhtKBNgU2rBY$O^d>3H$+#H`_XVy|cr@_Ew3A~3 z)8SdFFx%{Mg%<;_Q+OlrCWUVS<_a(43SjD<#Ld9BDZCGOufq2O%P)PaTl9ZO2bLS_ z4=E3B1nn7xGlAvTz18^cUDAPB`VSRGGi#qI%v*~#y5!*<`;Ee-z&|S71DMYm^7IGx z$q#G8QvnZ_GG)LhU@E#~Vy(0#X5He~NnvK9hr(=vehTwmAEO4=c>J ze~y@kr}Fm-J-`(7y25_ow-n|>h6YmPVKts6R!_rk6=q!dMQ_j<*9IZ=RktjK$rD#t z^0ZbS)^JJk$-}<8y~Y=V#Kp&aox~T*LQ(Nx2Uo}wx&RF!9zW(Q5zQN1Zt-a!D=NM_ z<_j5pE)eD$KDk-z4IegtT_9${E4FL|*Sa@+ZH-Sa5ciVd8F7RRlLw0*=>1f*c@y4; z2a7Rp!h2dQqxa>(;#PP?=(x`G~BHji??<4fLAbax=(djKPG&9QNx4>}c5OFyu*lf3#3`d8E z7wLu7KD{T0h`hJK-{-Tum>BnRZb)26)bzGbq0=u}ZqfX5uH~7G*Ka3r;N{#BWnK(^2soee9qNxpxWSWYs(_v>s}d64Ac72+w9 zKLUB4XyeU`7C;JE!C|~MLOk>?l91opmE_Zmcmfgm&ZOM_;>_cbe9v}742bX(krLz65u*A% zL}~_Uri`@ZJ;?fcgxE*&PayY_8QIk(cio z1&#t4u?ZZ;p^@U|_YtuUWVa;01~T@DoO&NkT;~yk$A)r4s2ko4aOAH}^gQXqt`Wr9 z;%p9EdJ?jZj}&W9Le|%~W!@M2Px?wccaFt2U2%-?bv%6DboP6MPWeI}e)^z;%gFoP$eKD|@*ejSNR)2sv?K+8I1J=iy;qlDtgqoM~o~QSAc$=j6G+DKJ zVSEVjtvcf%2~qp89~%!pM5P|8haW{}rOp)L!FdJTV|2gJ7x_x;QFwzjBarVX?A{z` z6}ShYW}R}L{LpuHE6Kku48^XCeB?_;KJq`Sr?!(M-}~7AvCr}K>and`QBLyYKmG6Q zcJ&@`Uh;`e8Gj2%v~5SmJ+Gy>1mff-XUsQ83`>z@#K-P6U%EF%N!~am&~szTCxRD; zbCd7B7r3IMt8cIV$yt8uS{IQB-(cn^e+^j2yQO%O?+vs*YspgbaJh9hgQ8VdUM%^y zG1g}-?2hQSF0)>BC+X&F$T**c zz#f;KNFieoV|m@wQLIluIBGsV9geII^B~n2&3+44^Jxlm+k=s$`8;vV#zr)3S0L^Z zoWDvlUnCrAKgTb>nujj|=VbdG2r!Ra0ldW?j_NXxQT%rMUdnv?D&U>=Hk8PGpQ-P* zsl%8bJp|lr>y-cPK2Ywo3(52S7Rb5BewjQ!{TBFsdjMtrJRA7Itc%H$p&L{$AI{=% z$qd4W^O3TAhFG)Kigmn}B8w&QiL5UWWVY4!BJ#nkVn%K+L!Qk_y2LMw%~)XwLFPc+ zg7b3LF|rTUIc|JSb6@8X|5KLYg+`AB!4+7IEV~0;F+%)E z3k-tuu@-0q*RNV&BN&?Wz-4gO=z)Jj%vwFb!SXeFU>|(zbh)Qyy&gCZzH9Zsg(&28 zdf*pyi4A&y=D8ceLaR!l2XfFPJM}<2IJ@+~0T7?p1Fyn)K@SW;*?-lw*ddvjiTjw< zqlm5ro`);iTL9)kdPU_GuLxxd7##i|kA9hmhfqjB)41rD;DTI?_IB;0}7 zZ!_dB(6j*Gpn6~eu7+l1gYFMpk_*AI^9CB&p0L3LA+U&8x7VOhfyFUk!(LDN65c6p z&1!|p@&~TqGKUlS%CyK=wM4Gg0$0n}!G(3$ghc4Jzrr=pMC{e9+mS-4HU41=;-K5A zlJ}zB7qwwkI}y$!eKLi5?ej#}YjGEHy26@K3#OQ6eTMpo+GPVE%KnUkhB=w}h`7SZ z%mx;1q>~qzTWR)aNA_Nbu*b^G*j)3oCz9W9Q{S>D5og#R;c8DIj~QICe6D6sOYr`* zZ05qAP8`BcG$cPLxa3ym;va||T<+ZBl?Vt0cDomHG*Yw4Nt-olGt%V#UW&q|y{KOajf z{7S$A?6L^!d=~4|3OQq3ZVd8?+>KV}Rx-V6CWli(w077mGl@Cb z4o}-QMsoH>Yprf{^ofr)S(QeqU-Z7-8fSc`i8a^5KTQ*_U2k#d&lR-_hO z$2RYjl_3UgwhE0+J~3;vmEV)boz|VK@vks1oWt_Si`J%A7h5li4nVlCk)YUAiom(?+VFMy) zHFFnSvSQ^TZNVyOh`OSF*<#ot!j2Fb6ooaBcyDPUHo6L?drKQGtKlti)}pRvDa(Of zp^k-|V@*~uLM&}Ev&C&WcCMXXLsg>rxs(t|2`Yfi4~RxX#>J~y;a zx^Ze+yvpjbG`mz3tsjh3m%;>A3R?gxy>pl+(JLMuk!gwL*W^V++fCtO(KI_!7;@NH z_f-?djUF~b>^1YV!)QJVJ8P^ePTv%Z7C7XZh4Wx1yZDkCSjg2jI28aRyl~8pXE+T2 zlRa_fl$j;2-x$ajttvBPu~b#nEQQ4-O?{O?rWh)$XwS6FR!>SZOKq_PY&@qt6>c#~r*~%0U_NoqB zRaMP|s>!1#jMwUDLfb+dRZ%v)qFOAQAB>7jE5G%qmXHynE5;4i7Pqv4O0J@2M0MFn zt>)62M)bOdvj(1X7u3S?S@oTorJ^j5pC!)hv!W$VS4eBVikea5(u+R10-M(J%fyd! zgGFNb)>v-q7Sm-X?$V`BFG?9zirQa|tYVp>yb0$nfhDKYqh;}&Td`+9v1L~*Cn)=I ziy5i-!#!4Bw$ra#ZUU#(MbUQ5BiuAUBX3$=ZDVc9L=-o!^g1=bUR5@Hcy-03Nh!-v z$KsQ>Cn})D?DH&pRrQ2XqsvE6t{5)57TCoXsjB32W_(#%zMWiXbqnS$)#f$S&WGu# z?0T|y!Qy$z5}2LOm!_(;_C&tsH!PV`+pt2lcG)xA>qxkv8 zz?!(MGRG9ukzYS|!IB!Zk9e7#>)*e%uSyPYwpMjbsdYTdAUFBeE7lInD~~t8Y|Krr z+~nrBt@-z+QDVvPdb?+#t5?7Ck`?>xmko)czq6lfm&TQw{O(2jv@h`}-#Kk@`3qho z=|7`Ce8wA`n{&B+{5-YG@Xh5**g2NK=!3V8D_q5J-Fq=S#x=x|Ig;Yf!^7WL$7tD& zq!^z5cpKsb1K^zVKrt>uV8WFrQ}BB(q&UCtHS)SW$LVwX^6|RyxB;jWVdEkKeJm}^x4DAwDa3Vmy_WD!eh1srf2NHs# z7n~3Ax9@__rDbr>Sja!@rxwQH4x?crY5&;&0o}L-dG?QEtPJjdbZ2y0M@{j ztZ;T2<{+a#;vKaf-^^^X&8&mu)XXusT2HfVZu4pcTF(>5%w@P*FAyiX1fWY=FA@(m z*;LlyJ-ALbzoncbe*oTM?jrpd#cwyMw^(l<0N!b4lKy@^uDkh#C(Zik@1QrEFCcT) zx9lr-nqJho_5Cy8xySs3JU_h(e7{M9HS6cZb~q14E+iltQpgt5qFGsj|Yz@`9)bN^S9CnLK-n2`MYu#eYn|5#GJ3~B6x2;?J zKzetNXnou+HTHPKXu4rTtT=9Wv{_oOo9b3h*e8AuQsR#wmD=MuMPhmpU{}fBXr4lX zb~Vf5Hdi4l_GA{{Yx0l^dn&OnAXSU$K9tmNenp-c#4#;{E6aZSI-b?wMBc~)9sO-$LXWwZuYG+6a_#vUS;y=7-7u13y+lfD4OZ&njeCa+}{ zqWXeUC?jNYlpmBiih$NuJw!H+jdTZyC5^iGFh+5lUFh)GTcwKL(7~*oMHAw)-q+* zOj%Kx(1Dxt(ED+V!2BlK30E z1$+hZr9)%7yklOm<{kTXqgfMePS`~S(j4IZ!3fqTfi z2Vm(|uNd&IT{u#f$dq>+PAcdi%>^9qt6*yn-7}!Gh~LB4u`7!>-53Me1q)CWAD{rV z^Xl-Bxb0oLz<9}hG(FT{!JHZlK z$3EAk8PN9<>$U+Q*|K@MaE;veB8h9x5+8Gm+3(x2j#(f_Za9z%$o@AZXkGiE_*pZ# zZ#bJzIIYViZm}2aG1^!7UjBCryOY9mE^*|2J1h5oq!eAmmM*Xnl|bv}(~>{FZ%@dy z9i32HB!^F;>7qzyu`AzaiCOCdtweV{*rxET8i-v@mpZy2bw8<)iQ1p+HloMRMqHd2 zZrT5vDp=UEWsaNKT2#WC1xuDTEL_yGaj;7}?q<{eOaD`PA9fsJL(q~X4J*Wx-(y== z>lzpoO}Q=*3Sf9TZ+Y!}IoeC9b-{e8-PYHxSRu!`E!zvZGmlDMfk)~V;?e6+$ktG$ zMCV*P!%@2GPlrR|H?t!{#K{dLw3_dh>PLz?{G z>JC-JlpdMd+NLxgS*M&Vs9Lym`2utlw0>%HAX4ELzO%VsP~U)keJLeKDnv3DXIZ2g zP*Z;?b{C4Pe+;x1OX?yX4|Y2)tP>}#{LX%)A`{^jx&e4&HZ)+j-^%5S&uXDtcg3>B z`Wph7qRsYLmQ-vim&}`|HlxY5cGM?XH_k4%vsq-&Tx{Zm#w>TVu@BUcs4bnllB(YF z1!CNdfi~VH4XiP-xWH~Lp8Cd~DxU6`o7++Lvqi{#O-qu_yaIQyHP&LEDU+hs!JTR) zvd$W@rOs(?cD*{NMygM;2d!|ns~x;4ur}HCJNu#Y&(SG<>K%;v6Kn7o)Ysyn!{ZY$ zqHOsYy8v5simMO`ouVEOf|O3d(OQd6!C6D&6k@dK6g%)pF}QToqEnnfWTSu-N2llj zcvh!)gW~)?PCP=V;0qb5#3np1rB1<7!C9T62~WLror1RCN~idM(9tOlBaYH3?t?g` zQ}jbzrBiHjoz*G)AS<0>Hbf|$VlE1ybc#acUg;F;kSnEAxP3!t%V!=zbj_?mGP*f~ zB{ym2?J{kqrpf2NuVNH9Gu*zBzh#V1_{cRA#c*`92@wsGr+c|HgD*kftjoa^xE>HH z3&-_VGs%kyHH#J)N@cOygQ8RxJ56P=z9+wfsX)U=#7h+Qe?PFWDa^00U222;9eke3P_qsD=OW*4LLK+1(4)2Icw}T58&!C z7vbtPBN%=8%!4esc@v^$m`fPdd>Ge2!t4q`me~!mZSytYp!pM+GR>2S95UyC64nAd z-N~>nry6I?Mw(WOBJ*320(XP!sQvgq7}5-}_Ca!LRuu^L(=40Y%7X~|dE%J$3sZZ6 zIMKz1B4fWuJk(+p+lRRwWwOPSpzI^GwAo^vV%%dCzuodu=G#5N^L21i$h>9JPEP(K%G`hFGmc<9jZSM4|J3< zUh&P)V2SaFSLBridmEp+#00wAJYroL=u5R8Iyjs- zZn;qW;0WF|c{cWTYr#>Z7a+MwkQeZw2gQO_nTR3#Wl)alH7hZX@~X+JTa}bCi82g} zYjVNK#BOUUa^YwqUW?0Z!KwS17cF-+Jnm?}zd$M$q}h*KA*+V@Jh02;QmotTfRsPd zOzy+@STlLh+pk!EM2sfg%<*9bb&YO5gu<@X%_repqnj(?tkcawaMtVQvqL#s5g>Kfs*{Pe0;q20p4j1&yOgJy-<}N0vYk|uUzch1v5b-S@ zUXtnPf(dIGa+&EUgBA_JG96{mq8W3hqYT|aPte~G#>f9K<`@8))(c$p#ERs`G4 z{Dllh*^S4NqmWD8IU!tHmE)p+DPubEc7nBa8PWii5%lV!w~-QjtfSvBHtaC94vZc9 zohI(62(~XBfgt@sS|ff0aUEkhaIYWLiO8oT&g~4y!EipPi}+O5BL;hX zZ~RM4$kC%l9+aKg@VABLmu>JZrcWt}c*L*~!M~4u4?RntnJO|%rSIN{2yxz}`b^gF zZp1B+X5s9%F1t*sRFDFk(vg07(;y&5GFuZ|2B z8!L73)yQD`LRsLQEU-SwDekSZxYM;xV_l-(s9@KyEX8RSf{zJgL^O^Ht}@nm#Xm;{ zV?|Q@Y+cGn8m)&g53_YgWH)fP8y&o%3r$h=p?a#Eqhxz1gPjxksFFb0 z4`B5l#iiE}w1_=Z=BalFcK>y}f%|Y&G=#-y!yuc_eb6CAG_J4xqGt-=V>L&v|vRYFsdqO9Nv^-@S#*a-7sJ-y@pG1v?ns z{o;jj!9t@P)}!NsJ&lizWPWAvcM);Buv&@RsxmX9N>81SHA_eJ)Dcx2sbBer5tm9ohKj;&)zt7F(**NEmyd2v!&sAm%JWfWr zm?@sg$dBayzpPq{LzhPi++4TZc2!nxd1}1~s)+;TF(+xuH2=RVlQ_eK$NSWYdq!lo zK35~YNGika)0JUaISuu-m)6TdsHMo|I5>n#ae)PesAV-$Om6M#l;J3>=}V8cC?1^| z3CT8+N9Q;?zlc|677qAtH9EB*i9<-ZntCzTm7SE~rS7HST_tBGM47O%Iyk4Vv>X(Z zRsrWMV2YeMkv74!P#l=UwaZTKvrCi*1No&={T`6U_kUZbTvWRnhw!YRKF{-8pi+u% zb0Y9Q8`*@;L{iJb zqfae1iX(G^F|Tv-jHuldh_?CP7a4hc4Vn>agP7|1#va#$Rnl!P*Jl?rV47+*tF-0h zn6#$A!lPVblxllGX0-ah)(?yRKkJ8by2&YO!$PS1Tuv;Jjlkw`YDa?-Ka!6f$-JPx zwho32@}QYl>VmDr@|Qw4h<|-*`o*3;xqeZ(B*PMa$jP$A1y8yC$)_$3zA`OMua717 zKNYNb$kl5=&t&Gx%zmaDNE1U=W)>#rB{J8%o5q`)bYBz_@pCATTpBtNPW*%KBQ6^8 zZP&zyvHBTp0a|7SsIy^KU_9Oisab))BfMo+pajopV>v02IlStAjy;V^MoX!#9=-0PxcZF= zD2kdJpyi~R8=zUJnj83l&{=Qn2oancz^K`vvhL|}5;6=<(|fueBb);fo^D)0GESf< zp6(oj$Vm-P4;?X#Vc_+4&jp00KV&6ble?0fk-2WRVfoD{<+v^FCFe`8#6L{N4M5g3K&If&AsI zKo5*S8KCjca(KjBn?m`<=eqcIQ>Zkt2E5SQdG?{z8Htz!F9n2RjEi|b6T|}KGZ0`7 zx&;B$+Xq6j$ys{M>;kBp+YxM-he2?eSFyg#dvNub6L9sKS7TV=GdXtfn>SO0i6Ig6 z_IGd%j59w#Em|g*qiu6JY9(l%0aK>=CqxdJoX~;Z{uXjJ-J10wlCyXOg>{iUtkIeV z*$$3c{e9xI>qEr}j%}@4vUZWxX3b?OdRQFMS@o>iUREy%cW@tTHsvj(y#Ce^CU6P) z$64=^zmb-FRo3IAU&@gW&jx1&7&I=mrhg6Sb^m~CgolJ=?bpPn&7l(GagX@J=1|+k zJYmApkKT(g8)}b!jOoiw51Rf4(=mA7q^7?~?6Uq2LHcp>xUG%2>TeNytrZZXzfJ77 zK87s)9byxfkcjQpKYkT7G?^&7A(R{ZD}-43m$YLgZQc!`?g^?^ZFT)8jzn#qF{l45 z`-ycY1n9r8^lobp@voE|%ifNw4s{q#UiLJ4bm_^@;TQ?leGDnc?!wHtq^B^u7vsC7 zr&Tt$hGE@>Y^}4;=QJYLXPA6Z?o{%bGN?$`f_xCrT0qV_{i?+}16z7X{~m7k0-u<0 zV<pS!O{jpg-pLY@YNzr22ic;LoRPou#v zPTd&Fn!q(&98}E=@M(cxdR-g61K>w`>(2vSYoPfW>OFr@5mQXArYx@m@wauM}g*#kH z|JG2Yu5S`kZw_^bAMu`Z{gukWq)sKsK|B1*Fi%j3eD1qBRBdE>#J4wxdK;bb720i~ zGGnVtEZ!DcY22%ckGF+}UO0zIf8$Qo3?DrD?l(~^r)Iu!KMjeUSW_=C)8Dw6!XM~g z!1n&e-4Z!4>^jhjtW zhtlUS)btXW=k@Rv-ordQ{%7fz_f%WS{U!a&L~9WmGC^vY9VK}WGFmu|d2;**;cxRC z%kZ(g9BH)~fcrpy&s|K+-Fx~eH=nzmtH5&vY82{4>=&Wj);F=VLu6jI;u+fs+ZnXs zV0r-hUeO|t_)vsu4VODPVrQs9AGnE0EC&l7)r7mdb6QcJ$B&s5NqG=633=Q$0xDbO z0HpSKToYgH3RM==vK}7N<%1a9-DM1(tBM$6%B`W%hVY5zTSKjk3XeE+YbaJPJMT8n z)8PCHlAJqen}>JM31qQ{>?hki>?iu<9 zHVdN7?$Ge|16b5@o$;Lo-y+&W>BD8EC`zR+uHPLhGB$g}e!6Wje*t%vJdbCzJ{5Pp z!`W*!@@5WhjZ*ev`B&9=R=4j9rxP+!iWHT!%Qm7g?E` zuqiD|j!F8KA)?j9D*HW&Ogc-x)EtqIGFMlV`UHa+S?fcK5^MciE&P04;w6Y*zukaD z-!hOO>o6~O;o{c%zJ`1L_E0SM4sc~I;k&3ECb_cYOR4WRzj*NWP_Z$~ojiJb==+jR za!lXT8QS-96pl$VCe=(HU0DH3Qn|P$k3p?z6pud_%B|wbkvz&)n+rvR=Z4AyS9zRh z0}ok+nIR@2S366k&WwOOR<^~;xn*UWQE;@YI5p7~pG1#TY~-nwQbPerowf=cj$d0y zpAT?6IQDZmtgch%&k;`S29~pDD9rrNu$g^iS>(d zlI_ZRu80?yFfgiJjN@dNuaIWZoJnY#kjs*(ucokqYw(3QSsWt~!&lLoTl*XKi?OtgbK zi`Q9w|L5#TEXrJ=ZDC;Q%ntETQc-rZE1Fu@uacS65?fh_;Yj zN@hYH^vgQsVxcU5W!ZFDUkg!TsJ{9Y8bskdW%h#=>>=oVxV9VyOygl`ov?7JJPH=& z!&1F-a_|3oCUELBS(&c|^|)u8^3&hQ6PjgGk|vR(T*DOmzt5Omuw+FeI}Wq1?zDQX zc7E-`#TqIA%k9f+aicJnI#rlGc!hH)t&=~TEPQS*SX`N&JZqR?=zJ=Fsony8yzIG9 zVKn_fVYW0YRowKT5tE%jmZZg&z`3u;A)f+gi+Z-`^1$b_=MT%)K~G|LagI6uuh}K1 zTFNT%uv)odfg{JE6_!nN3gOI1$Rgq{LqBJ2iK2Wv$HyGdc!0+a$In`V!@!>j^7dZY zxL~=s=$G7qqIK*)p->?CHNu$a#|BZgFfRP^B$3 z;Y`aohh39Z_O({4MY^`k)HvqfsSbku1+bT3lhf{- zv3V;=!-@9)>k+?md&UYmjzen8tN4K5CG|VlxpEFg`_Tq40Zi=#I z56rvAy%K&uoT8M?H)F}s?}zico(# zbvE)|!y9q|hM?#C-d&`9*LGWNo04sZiaIBok7ccl^t)Eq@^@|7(zxM~sndV8{w*Hz ztiiE1e%kzPFsuwNRFr-?Z;m^~XDXfZFR@B)up}4J6`#9d3mSueX;WDuGWIJ)qU1h_XerDixn-e9;jr` zDcU!u)xJ6T`{uMM!=`$7`J4#ca<^7qUeT+381bA=^4d*ayIb4K=k(}R{?|hNbaKIG zSy4X@0N7is=ZZ&ugYDh-pUKJyCFWzCieVG}`tBDoUhTqOtIzlT%Asj>7x@*K`Cd7m zoTPP@qjp+wLT8szer}1fN=4}|Paj<6{R#~DLP%$BU(@+Xt5lR87@#_-toQy(J7>MR zdnb-;*L#blCZ~0-Wt{C|f)UM5Y)@r{H>1AYyG-#siIJOrM_TT8w8*_9l@;0_g69|$ zK~^d;KG**!qp-t4(QAqF$5fPinDigL<76t`e;?>5y(K!F$y#SFbm_GG$Kfp`?H&we z!YRzN!g59P^w*LdT+xWp!DN+cbMe=A-;5!4+cP$x=_BS&U?-9(W_u9HN?zfKcJ_^@ z$u`tS8R;|*OX&Vv*30ESj#BmNwwQ*ak4^I^q_vVwb*1$4l(vo-lVbV=gHBq*>(?c} zwxaWNy{niNjK*7a_f0^Kozc2hd>(UizlWmus}nZ|qhk{70H23iQA9Omaz4OPQV6aF zxU(2wV~XcyMQPs*z}#Ae(B1JZpaELZ?^9uaQemYktiM+DL@MkRfEeOcIAO*L?Z4?T6~T;i9x;r zAoJ(c|GrkJe{Q$eosijx&^C%L0RL;~A}iPpXbGSXmVSKih}QOcxseCO>zGLRKLkdyd{ zRBaNSI^@T#eWh3Lfk*z>(c9vWkEC{jGuna7)e;9b!C^FA9<>b*9;5Kik))Z@j|;mz z%BdMzk3Dob=c8*g=p@+fT-s%cJp@i#GuV@Q;7@+Ka!ps8L1!TTlAXZG&kXjrsrZwf z?nU_H6C!kGz3~?AGg&%eqJ3)bWUedwz0V&uFD-d}4|2 zgQD5Se=MQH)z|MB6wT4M%j+GY8$7N4XzMOlh6@vZJVHRnw?s5u*F2aXK)TN+=M0KA zx;>kMm=6@Mwa?8-o*5eL?G5|@f=hmP1fMTypPQ8|9~r$|*Y}IZM@9SVF7fTCXqx~( zOXAM(;+hcQN>`TXJ3875N9j)<9W9G9&?N)$)e?!B2P4BP4vmg>sL*lTWh!INXHK#+ z0-)$JtF8=NV#-blVf0j}0qljS;F#!25slhe##5F!G$)j=za|ciiFVTuCBGaKZROT? zh~R|iMs%f}6Qb{zip)K>bpe|Zce<{E&BUclrGl3NFTkIy$MN5!FngMzFpi+vYvqey>O*al6E2I654!sG?vZT1E;`CW1An$H zdao`iJ8p?Sk>SP60B#!bz=Yh~S6c2PLc8-S}v(;0xsv*EII#Jr>CE6mbf zOpM4BN*w5m3x2EdC%uotfon+Bv?ly1hpk2udHO4y%JgQ^69{0A=}AStg#jw^t;FCN z3YR$06BqpMz@K!MiZ~VbKGId(KPaA2aEViKA5rvia1->TB0tFh75O>ER0Wqf&=nW_ zUc;XWPgXb;mnCIf_RS9z&vdxNfd_HHuUIwlg$f5A(2{eXjJ~xd5d!5}w0Z;*cr)Fg zFgwCFh4X-SDa?+rM`3o1-znS)_&$ZZ03T4e2XInhHr-PSv%|cQi(bHl*$%I&fFZ!g z6lNX2qcD5YDTOBhf1>b2;D0L2TjeW-*^$0icowib<`i-^a6sWX?1f?FsYgJr!t7~< z3NHmNQMd`Xqr&W6-4*6Qqp!m3MCU6kfXfta1|F#}J4+>T0;S&%&mHRrb_#tNoIAxtI!DD`Iw5g}&IwVr z9M0EbE1lEg6rG<$&lPZr#2PwX#1T3RM4Lu9o5eCZ4~i%03>D#(aK?#RI@84gI#&w) zQaH_GBAxriUOKOdGjI&;Wl_E=d%WI5Y+VKFC~=BTf6;R_oZ(^(ohosJPNQgZ8JtqF zj82_+^0Msb^rd3s<=K1mL89XoAbu(?qvIAY&?y!1E8#pN7SgfAU+7F08CPYm($^)| zT$MdUXFXjF>S_^Az-bn>blQpobS4YE3C_b}BAw%6FCCmaN9RFNwg%30v6W71+^N;dn;j5jjEZofwFQ{Lb5aDDENt#)(s8*a-$(3MslS8w)z$ieA@cxA)uwvUBF$ zQjpPEwz-4(SL2!MoBBr*)8_csS+w)+ zXd?L|u@z+fCGi(J8^kFx<=?Mq{}4x>jAV(~edA%#b2Es?pTzu$lewjvv$ImuHBVk< zbMoMh;5ZcWQ%4|rqA8;<2h8q@ibkByG`zBq?+vTyuTJMlGj zoo=Yzn^3{WRVC9gig-yKCcym;F!9-CqB+%J0#`t#YBBNYWq_FrJ1r(YSCeu%I!lX* z&+TYRgF3G=@%hq?$8*bJ0!2*0@4JOk-5zdMhKWxH_~Bb45Cz2*_#9W*_$)zW zUj>a@V8YX%@wp$}-`&y4EgtcUjXe`v0tPq% z2G3>lmvbAnaRGSz!x-0E4XWE;*+h0!rRE<`h~+hE{#yV;cfqG)Z#oJJdmx?$fCR;? z5%GM(mmyYZdc=j@v++Ay3$uhFr-3^kp39+${=UWP4 zi`WOrsoC8S&3>9?bKAEu?(@Vkdm`yC5GUl}cJ_AC+iCxZOxW-9DB#`pXW+Cysse7de`Mm$J|6o`l*ayk3Nn3<%>_~W zCpS{L-(JLg{#^VEB0QMISqALmVRb)@4esy+rRPssqx@pXsCcX+mu#_*ha692?P1>9 z>ijax!K_CZ(q4urmw21O~+HH^CaLBF?k9u`f80xWJ~JUa*?Dm7S!ZNyJ6= zBGM-l7u!5fIyi-`-q!v-D8Z?`>-yWRn4xLJgXC$2!Rf?9?I#S3?}9T~;^B5PBhMlp zWqS?r)0lWcyL^b6o;izcYp+C<%!?>ovyX$|;HZ6ETrf6XGL=0vvzDA)@Js-n%gX3s zmmorBJ@ePg=B5(|_p!@Rw#b9~2@PT=LG^A#^k8UIBLfcL)Pr&HoCNRj(0C?jY1R^yydXT}pJd=UpW&el(Clk) z36~KYHfDdca5+CFRS>+KAJ{3ddE|ERiax+y?5D|pB|os!VDq67yo!C|3;Ph|Z z8g@gs%?F)6n-4d?JsLUDYgwU|O*3144oer2_nj`gR8-6RT+a}D$Hzw+2mRt7^ zH-6D`LOeGirT$O>8JtOM!+xm$!0P*eUYX7hOov;NifQ|y|HStpjVg<8L2LiW~mDDm}5a9oq{;OT$6!K^M zsEHpY#EXoRE>Tbwj~ScXqF+_KzwxyumR7~DH15d|{{p>-%;^g{v-%_c?Pa-M&{?ou z$X6FxOE2g#%n$36+v647Z({s!iATVypLBDMn!k7P*LS-yIniFqJL#spzL3%WC9r_A z72+?U|1K8xl=QRLw;#=@A4vZr^oJ<<12@xull~uAz7J)%3ysv}Q4sY3A4&#etJZ}= z^pD(3+t}*v3WK%3yV>cv@v~$*BYz^ZIgb9XwdA4dxTPDmCJs-E$BJZbD?QBZy_7CX zU+H1$`lK#@(S>(%e0ZW8ZdIMt?@WE@yZ?^Vy2!ZW493-~yQ0;`;|7PO3^_gc7%Aaf zOrI!;26|>IPQG=9sMh*SV+F9*^Hs*JGuXQPac)H4U59laryA>|@Jsm>Gbd+thRPWY zob-Bwtor0GUz_6d$?FUQ@6qKJ*t@S>coiwCB~+p()2n-=fW|0Lxsa-}-e zy|Ok6vs1OP$i=EQa6@#!&ArIQR@NuA|HLiIrpI^bzZ36FkH@QIVm)R58xB^dKlhZ~ zr5LweDWdk29b`OwCBH|0^xkgv?q}(j9j1@$FdMUzU=#zc_a*O}5g)1>F~9id%y_I)W^9)%!we+HGVDr~ zK{nVf7aR9K2rD_jZ2i{7n`SQ7+d3XV-t^rrKC5slOGz7DRL_bZ$vVv%m^T$~R%h+4 z@Any^--Yo`m9@x4pzHwz_&4Cvk9{|EM_Y*N*Bv=^;CXu>&i5kw?0aC!VSQ@-HzKL% zOwQ8e?1x_)&|d7nFkWD^_KKG-M5DR=;`D{_!o&_li!|`DQ;&(590KjUFVR3*53!c6 zAn_T1fm;9Pk!0|$t)#F8b68C6ydy|GDmTa7#gKNOY3K211mCOd0f$IrmQ=p{40+*5 zit5(R-|9+kxhUSH%_L=xLGy`KT74r9Amn$vrHu?fnyd`n&RY6_#n~={6DjcZ?z)=! zs~rD=RjGYYJF21`#n3G=UqBxIsYwGOab}8Zs2EzCVTuR(_zU_%j@&!N-99*Kljb|p zDh3B()GWo;H*B&}_A3=5G-O03BF_;mI(s?{t&OmAM`fGVApBsqcyeMiCYra#B4W#a zcXV)_VoT*%S+O8hmQdwhCJsTVLbRA|iEex11!C#Vv57?pp0ga^z~%?UTdYiK=i}qu zPKL$Fxfw;l6)HKH3gK(xFmH~v@;KXsCe~$?i1z*cp^mI&$2e%gs+K&Y?Vww@ROLhb zp)Mm^yxwG#iK^Cl9&!EJxEW!Ru(N}e6pJoRc$&Y>&hDt{L7C6UQ$H1HdF?6<$D87- z?F*%$%)veJxQ_-=ussyxf?1`x6a-r@EmcV?@UeSr?Grzb&Fmr8ZI4AvC5i?^RpT;q zd*Ixd#>-S2!7xi5n**+v0x5H#I<>p*^!8W>A4^UHyuDMSC8F$>SbrB{h^uaib*W74 zFY5)1Dd+4}Y5yb-rj+fxWT`wKGL^-~p2#t_UBcX}o;E`(>(OYb#J3eKiHlYj_yal8 z9tx+mHueHL?KI`L$3^!Y`1W?>1~Z-^Q(^my^Co1r@yz9i!SVI(Sl?;f)9Dyhowa;g zuu66n>_CJq754qtDO!q|4&Vt$^rrvYzGPJuP;CDml43&B>qIuX@&MO0l3%;%0Wv zhE2s{eb+A@L)*qwPGLC6yWDB9R3pkp(WD6|qF!FVe2HU;$kx-+t?b0A>*B@Y((B^w zqKkMVa=T=jiJd4C@t6-!HJ-O4${I4Vxt%Zld|#&^&XaCg>e(^3cJ2Z^%w+k*?uLv! zv42vgFQ`hPtpCKz4H*}-Ry3OBIn^QSjwO=!q?kB4GjE#AnygG|P`hNQV{xeBss}8) zr2Gm!PSkC&O$WBko_6@q6*> zOCi5F_?u`*Jg`akCtukVAG6_{*}gtmc`G`fLwRO!-s|bJhPlayN94VFE~R;V-b*c% zy_be^lN+Yy`Szsb^n5=YbN4=PKreC1uXASft#9%!(a#qZ-{zfXHWxJ(o-S@aU3gkt z`)%G|#kkLdF>%_=h$XN5PhO2zuNEhM&btGnkfvYqq7}dE$B|uizTCF(yM1`I?ZCf1 zUlIE6TH*EfG`t1%Fo%+X`jkQpTV@3nt zKvisYB-)yZX%{2G^DnLLu6Kh3gtvD|py^Y^ysTb%!B zf*Iu=kO+pNRls)=E0%i|#wbdAP+^Pm@o-@NoR9YX2v)G@!a-b$S6m|xVg?Okb?VfqQ|Fvo zy1Hj_{fpK2yjs1csjExp;-bzaop)vJ(ZWCcD4hT1;hHl|{IAFR$A#-J4)^Cf#py@* zbi!Yy<7eaxd2C-L;{VOVQ(iCr<#Ftuu<#ta=PwWMSzCm6$+k0(=RkX7!e1Tb}94I=P=cZB~`K=LCWi{zJf{{L`<|GSl>tg01}BlO&H@xLBn zlPUG(3F6O=v|+2n|JS2Qr=8+o9qGxs2=gS5G2=w~|Lfzsi$(f(7tgJ#pIS3_ZpGZH zMHTDDEKhsjV`rZxPBkbRUtOAz`oO@9i$1mzu6)a_HNNGx{ZMPAHlAE!dnfr6%4e%> zjpHnow8jG`Y*Ws%P*NNF7TZhp@Qp$Ut(#K_!y!Z(5|NM1WfQ{oN)gg_-Brem&GkE& zblov)ZoRPGX$L8(lo^`y6J*%7=)i#~lH#69N;!E_>SbYvhHTqEG*CiaK(WmOM`wGw ztikPYk=5;5$$Z@rqA1;U6c>jM@DYGh->XF5VKWAGw&#R9gI5m@qOA9!te!HKa0#gy zvj}%Wrk;5bVOvt$UP0IoR7abWgy*4{qwR-;^Ko*tbArv*5{fz6|3c~s@)jkLx`Dcs z>;Tm>7f^Q&Yqtn=?^WP-wjT-zCJ*)OKM4uXccA-S-8MydT-^zUaFg|J9C3FbWfwM| zFgkRx=Z7ytT|sx}pIP8rDCX|In+3d+AjsXL8L(g2u7#`IJzqw`)(fY&E|li!4HiAF zdux>P3Y_A4IB*ss!5`OWC{W@xV2JBW1ri;E{YVvV3LQs&sNxWb!t;!AtcyK0T!qZ| z_Ib#)`H=1DOh((2IC*+>;5h}l`aON$K&E#d3H`_+ygP~eUj(w|Ed-Bez!ktY?^@!4 zeqi1EC3yxv&-#VuF|?1o2#6A8bkd@`jDflEANlzMLyk5xiD3geBg_NKkpqj)pV`F|(xYzmp6 zcweXRiHg@n1tyWj=JgX-JPoXSn`lN!H+x}t4>g}DT~Q1e^p0zbn!H&M;XQ9RgbMEr z${$a%?!AEY3B5sfdlwK-B=&lLVxdXo@gv$<&a(sJGQ3mSwY;yubKYrW72ZP>S4FIQ zNA+UHbR};v@eCzzD++sOz7AHuH=Xs&qMV@jMi#z+^3%K(b|byJy=Ax(IU>*zIa;6z zpe=AQB-sPMpqw7K1ZPKJESl~Nyn(YT@Hi;$z!2cLKxdSV58OZ_1Uj&uzze_$fp(DK z3;Yd~#K7Mm(;p}WP7usd~Kg(?#+Zp*Mj`IZosp_R;LP9~MnVWwerQNiXZlPt%0fFcHPMAVQ*H(uBnYZ(Tn}i3Tt~QApn1ubtnjZGcn|?;dEz%Pxy&Z?vV7OGx?R(k_TfD@A zx8xv$V??t{anf!fhc+hI+GZ^7Y0t~}CwXpX^@ow&;%+AIV3F^U4Be?2kM^|J*b*E@ zQ7<%hGBUK!?m&}i;S4{LcgEwCxkERqd)d>na@bgp_Bd#Rz>&phHPh?|tsb)*cl5Fs z*sgLIFZHsw>F^_U3TSLZE~MsVF`cYYflHW{`UGYA2-An`Mp18js%?^^aaeDAXU(=) z7?<|37X%hVy02d`lyP}*YO_c;9_eFmVM}rvZ}+h`wQbgnpZnOGhucE3Ka=vQcv~te ziq3|rf$@7txR-?X%Wz7nW;8rUq6~}nY4B8F1XX=6TD1Kn6m{Q3;;#{6+lycX(f$II z4pdQIk_R$ar6{(|vo~(+Ykxd3t!~!b&K1+EYZlF#JH1BCs_k4+Ic?hfiu!d27Nq3V z)z7c4nk(umE2dS}SBkotsk50YWTCpLHMLb0v!)r%KTB%TvaUk~Sr-&{uBaC?E2`$t zpIalU7tN}zm|0&lx6bhVy43Dxzf5rzqwOumx$^}g=C&yIcHY&5>Zh>>9Poj zwKenWQGryP*toQpI}|4Sg;n!wgv_3chROQDc3~B{D@|d*m9tdV%!;{{bE+aOtQErt z4KJ-2F|c#R$nrtugH#35M$_k4RjJ(J{l9x*7E| zjmhQq)cmNKE9&ZN=2ysbZ&KIm!I-{a?W=&mv)m&rl`GHWzlm*izwJy?bwwjfZ z31y6TzDP<5SJ%v)ks(jWja4vfu8c=#ErE#>r!@JS;gpK!v~#P zKANtinPfoDsH$gkrYw=-r31?cs@Be`?O3sH^}Os-=wDG=kA7gr5ml4y5eaO9>@vzW zGLKy;+ED4)XapIRf7p_z(dp=1(%dktX$roLusO*O5<&dEBBP0Qn38Xx@X3Akw$N;TeH9^cnZ3szUos582K5MPpm2D0ZM z7H2W)P47h=EyJhEII_$(v=nReX;a$Cp4eG+#ah*ldNcY5jUL!P(m`nDSWBQ22#g?e z=s@IjHj;)V2933s+LksxJl5`TOzzmVOIOiuN?l#MX#Lrsb+OWD3J|*%M~G%GP$9{j zqDYQ4Rw<{O@#1pZQ^urC_6)-}(A%N0>m>X8wsT|+(F$dYBsa|QC$eL1R$4@D#xh;k zt%`59F0`&?4=sJ_UzbCa{N(YKNo$3;`l^-gRfjUNP9D!nx-qNyNv};Em=8Ml z6HT+cZtsn|gt!9p$FhxUj^B`UkqZws2dGNzdP+snqRqnck`2|*Sj%qkN;93j=P2Ty4LZk zhQ|6k?NzSuEomy_;_tlrYTdi(fDmtcy{T8E3UOp((y|-&Q^|%~7bLx2PU00thL^Mi*~P5=@vTbIx;A!bl`qu zRSI#|V6SslaLQTh^A78QK2n_q%2!d%eNIHsKBOrV2|q{Ya;z(vtnhOOi5$ z=-#1!nbT{_Ds%OJ+@Cc7e@(Lnq-A*qq-PCil3(`L{L&ob*baM|<}iNPVc(nMyl7I+>M}kx}o&5(BH*Vj+5dr?T#R z;B^JY#Q%2B9a&CodX~FGw&>7GbeY<0`gP8HJ>S;ly+E@mSp&nSkDE**}B?R>q@gSLNDo~o+ekZ;5vUN+{qn`M_ zwAH%2mHOn2V8gAq2%)O?j>;MsiJ?)Zd|T_x)=7Dxz`f4<4|x3tCYUXMvMCyouXnYL z+H$hA%s>5!9$ltp?8$oOmiwOxHuEZRP&+Ftke)SCc&B9bYvxQ8`C0j+S{GaBHqzq+ zd^Qr&jJA*4v%_5v6lHvS_AQT?c56uQnzSu>&x_BQX|MeXELXSu@$BQ<^!pF!s;VtT z^=IFrpeSoqS~|Izb8P4MN+BkfZyD!6GHIe$@b4k4NWA#jt)6C(Vfu zh2MxD8owB!d9v>if9`_?_u3w@AL{qE!|VIar)oIGt6luct50flYCkyj2gP;ggKsD> zCjGY|RSs`2s4cwByHx4k{#3~3)rV=@oD`n%cE;zLV%}0@v^r?-<#SF?zUYc%A*N^P z=fn>-<{q>!OL_Kx6i?QcS;{&0+P$7e*Aw;yns%14^hx`W@RL|nd!17%Q>Rphpiu;R zomZrYRqG}%=vTC8%VO7zSJPKrk3?UUNZ7joiPA+|=I4nSW80`omc~bV=BmTXs)~cy9RpiHau(k1KWwi2p?cQL6?-td&G{vT?I2x<54=>wN4_ z%>ZL$f6DIzDY8FR0(rI-=*`jnsl%kalL$&=e`?%B{4G@IYKUxl^V??YQ<%@?MPl)VQLsRP%Wd;)=Ps zVyhrW30-RI<_7F2jeIq`2S9r{K!VB_mgrEg+;oeo;E~GSJBV+vU zEkQ}BgVwsIT{W<87_{-U{}^?liYLNof~S8OnMz?czqi|(2$Q!vAq10m3!oH?UAadf z*n9ROP!jzKT@K^w$DN``=t?HQjv}EOs}c!UqcOpR&R-(o+m0qAbmy(J@O=%52|f1W z9LC1omuN*oPs*_kL`?hIKZOii3$#A53+qmpg$nh=?yb=Z-(?V)*hB3(B>EHk3uNCJW(XviHiJ*y=y@VESM`2`?t1-!H3OQ#F)P`*=_H^ z+5R3cvD$MHF@AsF7r^ej7AJo{atPnmIQjciisoBKo&gsD+kCXUf1n>&_jSRBhJWzu zptwasJ6xLi&(20L`s&DZjuO;9L4<{WxRTU@B}OPomr#jw*>>H>T@rsOo8k7g$347% zB_Xanq# z5qc2?GDCe4Jz1d}K+g|d4*gq)z634^#UppW2xZ`MNQjgk2nRj+qLUPOKUb)sp0K7C zdJy@x(DPxGw1?h?$#jvjlU*nI@}`g+DncNL&=$n67CHyEvW1d>?V%8PM9O)zTk z$!bTGiO>&Z#k>VCCEw8pbf-QDXU}+?yz)dHylf}3CWD%AtquO~nS56!s+YD-zMDo9 zzD6)5-%BItf!e84MDl}Var+LzfyuiW!(Lw=6inXF$-?j31qG825(j-isYR)6V*=z+;ts$;eu&^_xD37|NP2DBKd)H07b$+ zc(F~eg519Fb~r6q$xsl!3e>1@(ASNPsiY?Pf%=*{6Sof3*H@dk0A^&}3CCckLn#ll zN*~3g?2U<2Scyy78xyB+>p+0<0XT-C8ZAkx|Vybx1ud{g;v;QyYUXQbM9k zGz7n=@&S#5*OuVj)HtNgMMYbK2WaIqtq&60f;Y2Fx^@hSdxAdZG}AUBu`}3)jcK7h zg2aQtC9Ee;V{`TdOE5;Hw3dnR-r!SoNP$f44<2Hx+iA4%!Qd5Cp-3j42=ZZBN{LK7 ziOAo|$e$18#)Zyj50jA}niz|Gg;nH-CQ_j4ND8Zt6q*=jhKl@9CFQh{5gVFHdXbFk zP!+A%K}NO09etOfIiXpstgCM$@oe&+)FXG{T8+3R_tjYbO6OOfxCtmPr0^gr9L`kxaJ;+szn` zQ>NV}Iq!;aGU#HQ!dA=bYY$1L=W+HhUde#^m4aV`ka7u|VsjF%qI6q3#^!4JHYEq` z&{NiofQdqHL7WKf1X&9`0wdc(HSmW$bQ34X5TETiLf7N$4805EyF!W5;6C8EPzZA3 zMd}8Socf3`#Mx+;(70)UPW=L$Jy+qR)MrR~rClUVHrc6Pi+mTO&o+^9(5VA7aq81> zPS;Y;dliq5#f=b998(ERj%hw% z-S-37QmZJ=jha}sQ)kh1f9lNPEO-*plsfAZRwtKGsTbq`>b`YobgJwfZl4F!aq1k7 z0bY@=r_P&_2>UDU`J_rs7hXnj`7E|bs;`PIA%j%((w$_;!ibc*Ts7rY*fRApV%=v) zW~yAmxM_@)>^wdn;y3jwWsF3BYI!yy**`_3j?KpXkMPeGspsF0(*7w^Me1al&tExB zq)w;J{EI|tO%Ou-=$3VCs=p3-OQE~)Ur;SlS5RMnHKbil#b6h{vy$*LPR+D~PeH!y z-rAG0d;5-~8QLL^3cBwDAKI@SrXAhB-Y}r{94DQ4-yw7y?Fi{!--U=H?ImKYH8D15 zasu_syJGEa-W3Psq^uoh`_kmvRC}Mda7_YyT&0~LJ>9n#3TdAbHxnepdSqt-~ti^G*af-$}z2AeN8b={LI2x_d7RiJgTN}2^Ag*N#a^%>!SmviS4y}Qy zj5^Y}-opp$f2Upm6qjK$gmOfbFJmy&T+v2%mergv8{v|T<`ey#`{}Sa@S*)WY?zBk7d=M- zv@?NdSw*MR%A0u5#A-N7YdDT5rN*^x8ma_Ev)LdsJ(_9WjGF1MkfT)vE>Xp zy3iSki{+4{HT;N9lHHm;MddVsnC!=yRp?}A>B_Xm&ZE**Ojj^WRr)%n|A|vrYaFah4> zn^<~hSlPKK?4+T)K|oe@)k2{aJL4c=EYf)>FZjBR9~EWciLk(0FbC-c$jm85Od)*$ z>FbdedAT@&QS^>-ca+?`&sN+WCHHa3%>{gO9M$0{dnd_`snKNbB-xXZ7I~X+x*x}3 zaOWJSnFl%WQ@UXFltBPtN-GwR^(_+&0kO zcd?nawWX>Xec<9^rWz%sKj@Q#A;^~9=1Uj5%@$6}L>sIQHa$0DY;v48cG{Es7@i%<+J$G3(yk3qqI$~H}~$ERt~RV#v~ zYO7Ne9s~>H;19_%-nI~-)DsoFBil9JRVU_)tX5dzwA#gx3_t}%ZZn*ICMheDM+wX;91Y+pLs&o*-4I@YW=sMx14IOf^S#7{s)bSWHK zLjeYYY;JghO574PXL2=(G#87Q31vK<(70UGM(1XuSTRKA_A~*UU4()z&iAeOR-l%E zrosM|vVz^nWB*C;vOVWPavM&jNiqqOz|jGTc}vh1ETTZpjA>rE3|>31Ku(-0X0965&(Z+JVSu^%~UBI=eXkixT>x;hS_ckvC!>Gv0W!kx{j5H!YCJ~v;OX)=peRTv?) z@d!mU1BccypegQ`E9cK3bq^_{3f7Wmf}1(os6r$JS0dezY^_bQ&G(Dk4BB6|#i?`q zyX8-`zc-$%RDQ3$k~9L<)`Q5uS5=)tI@$YChyM{IJ+Uhwa9_?x0;TU+V>a? zBfjL+tbF->oYj{<#wlOs(wDqQYJvLA*;(>wXjSe6 zZ2)y6P;A4Py^!Z?|=}@{+uE)wC>^1N(lX6dL^7NnwccS?mvN|jgQ)$9YJgO*tEN%_lFj$mrsy()yg``wbVpa zO4)FdwBdTN=H);JTfG}nR0J)St$6^Mxx-+8Gp@N9;e>fuwLuQU&|P!_-?11?j(7}j zQSzb_+O3Ex`x9tdLp??S&Q*&3HVUgCSs{buccx{KtdK!+Svu-hQF5hh&8wJvRTEaq zCbYpI8x4a+S&=5Jl}#w;2;2$PsxT-8nvEj~DimCYkypDh8fknYqiu==THe)QV_-d< z#rowqb+Z&Xiz4Ya)!E5M#~w$`(y^E{;Lq(i(Xj$G{h4F;Agis#uX&GvKqquX0ae{S zvbv>BQGf2c$WcxB7>J=aCd#)<@@;}zvCz9fRx7)E?oeb5M^&O^WIUR|S!-m@3=&Pqy(`w2ka& zTEnP3)kZ~s0Ae!mIx+d^hoel(W$Q6J`@%O!XY*OMk`oqrn1{1((?EE~&PjD5(@%0T ze#g#9bsf^mM(;`+J&kl5yyuRaQCWd~?XqxIEpA2a+@@~9*<&rI=nrJHjgo1aT&3qD zomDd(r9YI-2tPoEWL9^=&Sl>xWRQD8A4wN*vdWtV#c4F|DJ$FlDs8p~nIdlvPIS=P zXs*yXb8SVg#qu2CC}c;JEmfD}-ySLDHDu9$uSBz(ODWG%%CE>!Zl;cpAXNiibq_vD zZiL&{J{T_Gx7f5YxjoK_CudRu(xY|WA$Ylz_S99*=;lk&*{^V>r5Yl3^>4R!E z-Ga&KCrFfYCBHx?r%Em!qf_POoGR^WC&2P~{9+#4w;HmPk=Duvbk6{>5MGnx+byyt zbD7EeuS*bF4@u(ryr(T>?_UqvVMU{R)dad5#CNR3zk`#dzp<32k$ErYK~Q37;PL>s z(V~#MD6fLIy`p3MM}~84Y1p|?WHHbez{&^F0^XeF9s%GDX+GP;DmX(xIZ-kgrqm3* zH!we_2|eI3vj-^phzzV=We+fP_5iJ{NXEaR!?SQlehMxe7+Pa1It&FTQA@Rw!JQDR zqIS|mq9la5Tf6DB3j5`&E~n@<(F$)mrNW!c3NvMQQ@mRFDb*Ljf2w+O8|94pYuu>+ zaJ2pc7({FMvOv|Z=xb1a1|JoIk2&unt-83%zcCX5As5Ea>RgIAvyj$Z5cHfL=A)2} zAQZ?c;&~a%n2dSD{erCZZgTT0g4&BZgZ~FIC!u?3FUj`dhB_w`_hi~p$sUhUQuW`L zbuMJiK{^j(4xSuh+-MyM&9_t!ZH4&H1<~wW{edtCi?S%+dy;PtgyeF5Q+@CR5Ii6* zjI#Z%x+>Yc&{45<2cooFqHJ*vjtlRQZKz^H{dwa}zC%$yzvSb9pF1-uj%(3Ei2IUk zyzA659gHX!LMitUGTAFd9>2UsV_kwG|mgTEnpF;Tx4f0EDFG9Mq456#QCuX*J=6tgWh;e(#&06 z``S_`0>!>|G%jimp(+fuFI8EGeJco}&<*K~uq22;fYElc;60qMWQ?`}$L*}YP_bwT zK}==%y^+E-$YKl*mO1BREiSWgcUibamJ*^;6_Qy}A5r)avKX5SRVjHlnokpK1Ti8& zl;kA9Q@2G1)UY@Rb+P-`4xxi}yUOSb1F68fO{Y26F)ah{HaX@!inJQl6~9)l;_7xe zzG`FC0C{K^EGN(N>00CsYJ2g!T`87Oq_)X&FW>QL3;P zav4VD$fgWb)f-)l@HbdsGMgfjO+|%Q|9egc=gtvI2WU&_wIxKrLlHv#st>IVnmh8Li z%n8e^c~C6-Yq-i}eVgf9i;H{qD%R!<4o+QPla z;JxA3GDF_v=00YY5+(CEv^b*=5>t?&HH4?2qcQMQ#>;3*rX2B{P6i(K)n(W@<-;+o zT`+9PZu!>>mfKm4H(E`mtmZ|t7DfLawG_>&!Q(zJp8p{W)eIq@%GO4=k*f)xlVdoX zn$N`}*E}$+T+vBKs|Au%e-#2;e0R6xk~qkyj#kZ|FVGscmB5$sQK`yFZH*?%_X?`< zTpQ@&bYrpmKRJRr_-QcPzQ&AG>obdB?4M9cL|%jclAveIXeR?k7_ zna@Gjn9o5Y>5b-d&`5eqIGi&r5d!B+fkQEx7vwQr=j3|}_O;u>jI(+vemZh38c80M{9wXj9rJuqW;9OrdFLAfAnRL@^~gERMj z`$|uD(H}AgD8RY(uO}-&v zc6h#R@Yfwa$O+ATS~a`OY7~7}v=;X%wYc43wQnxRl}I&wT4pr~eJV;C&}_{Ytw!Ei zHP||<)+qW*tj0s@s5BZQUj{K#qt&Y*KJ!(OOg@wegH@_v&Y6DsB1kb76KY0Hk}ra2 zW7Wf?WH+A@Vf4w%LM`a0qN)=@ooiODseCJBHA?2P56CGluM&u?tDy&ya5`G9+7M(Jr0>TVw(rj$8(NAs6Le0DLVoCvd;p-0d_sMDwo$ z2ZIzDm{~;0MSTB9+Y#3rbbju@p*56sF#}7|KY<3yriw3OQ!{1SbVuALEL$#Z3W;3q zMwTJF;&|IO6h=`dy+2Maew9hX+JkWso1%wEo9>2Fl}-1?od9t!isrUJrn1#YAlmfp zDBJsz?FiZCMcJ+dO2DC`IZE2+lI>@*(GpTxIBL^0@I`FOg^sl8IRLcj0Gat`HoY7i zR-2y3PFF5pi9(Ke8V5EAx+;?@dK#8C8B^y>BVTws7`lOw-JAn?xrcH6G}3DP9P6R2 ze3;L(7FJf{7h62EY93#NbeYe#f?z^RcTjbT^gaJ!b zN9)`u>&%zAcbU0YM|1D+gsDJvQk7K=}PlpI~Q<3jwZ~Z&dVY$4^_vV1` zAqeWOLKV=;<;`qsFK=d(O3014&{})hyNi%6_z}+23ca#FkIC7~rADFDVLWo9kH@O9 z<}kfgn1Ol{V5(&%ExZVfaJXmz;`Jtxw1FmVn}tRb^WNYsNyA*q+d!-dxZeMhH38?1 z!pSJZ3Qt<(Fho+)@G^7{jDH*qBaa3PZ!~kVU^zKTQtyQjb1O2aVrQA5HY4saX=lY~ z`MXUT%b^*fWH?P$9CgftplJ;Udn(5id*%Ma9NJc{x{IY}_A@OVQ!E|x8PduzN)T@M zq~%Lav3!ZFBn=a9bWD5S)QpB`hMH-JA7a`TcI5pZo5i06GgU6^3r5mfT4*Cc(^Iyl6R5yui+MJ@TdM+iWmG<#=SYpfSwQlX~wMFupJy`UG`AF+G17nqEv^a2YFmXX`X zZ%NvJ*b6LjWG}$?F9qlMKko%*M$|LWULZ40>jg2|nZ3Y`kx}a(^$f-nc;*e12-7tx zqXVp^_RafC*F^Ts`%AyzzD(}4DPD6MoBfEp=%;NGoVj>pkI;smR{vRj%=%SES+xG4 zr_?{xtY2=NpHU<0{*%?}E_VA7(Fz}w4c^>Wg`%R@qrQx=ywe@w<-R#rb!t0NF?@rx z3a(NWT;*zrEmgtQ+0xMuqA8K!YKFQPT(6n5h2TS&$}aVph1Q?6Fr%rjDojRpboq2a z(#~jDVWf+9w3LZ-@!^tYcJT!ern)$$L^DIi5i=q^{KCHBSk;j(eoajDDP0`uiIU$q z*^i0ZH3c-S!O>6IRna?iMh}*w=@>bhV#O-Q(lHS~Vnro5HS(5*&tJ}Hr6}n`_f3da zlPRmIH>*+fGE}2BF(!Dedl)J=vWGFrYu&?O#GyXR9!6N*+&spqb568A6)sQ1L+l=k zUXS|Jv-~-7LVk*Ad9OA{PRQRNt)ivolxV3@(b5HGM<YY1sdgldm;g*2o-lU&|UUTP|#KpfanZheZciMm>~Qj4O~c4&R(Uj%_e$3&9t$=ynSY z0U#T<&q8Bh^4+~-lJ?hu`E}S*=yDXIT|H=CbUvheBI8)LnQ_KA)>USxzO&U-=bRYr z%)pGtE`_!N27vwfQFgt5u(B&N@NkB9ly4iZkZX^ZnU-%Gu8?aF4Yvr&u2-I7*DGb| zw#bc|^;J_Bu00~t!#^c0d}@dPBc`-`>c^l-hE|b*fp+DKlO>Y&*LEFZDHAd4WJx=% zzlUk?C1%bUc3o`|6S3?RxDgcD+`L{ioHgZHAl~u6<3KHC#tqXpwN8DQTwtX;<#MtdzvRwrhh$P{ghe zN!n?4rCFahGtMyUdod|t`EDZJ{C$jgrd|1UAZ`6=cAYRx*;UbhkJ?qGN8*MnL*8Sn z^irf%xEdC-V*kmIV(&tBG+r--$4(yx)|)h|UGK8cB6fYmLZex^_wu%+{h3+ee-5u- zSqeq$8jt4v=`hgB%s9iYU1Y|o!@$`w+L>nE%=e$Qo1%8z1AVoIw=f-W-dFU!FpPTN zT%{ASa#8P_t8@>f)yC#cYPn;6$L%IL_|8DCvifFab@MiTv#j%q9;m;NyJXx^`PNjG zqXhc6G>jX%&=ZS5>jWAjrJ03>m4u`fS!km`PSZUI% zE@-gOA}-izq0t50f`41m{)G#|boK;r%U)oS5OF~~ED`MmRu{A~GtO{97nz|#CgOs# zW3*FUfcO(74`F9ayEp0rH5u+2u3Vt#3t=U-$hcQdhEFpsSHJhF8*!wSk#|@|7i?}z zshPddN-wHnn7?A`!j?B<{cQTDCXp?K-DFJvZlOg+mjJY~PKJC6(?QbyY;;kw2V2TS z2A2v+J6{W*vHD$X=A1FQtg?uSOom%xv@=JS_;{H0q0`LjJXe`j(L07=8D-apq+PFM zTH5s?Y1apkR(5SX#jcG~>^oMw^4{_ELA#GhvzoQcLhDcavp>$T5CO&6aKe?6_SbgZ zWGNG|>w}VJnGDxL7>APQ%#5g6Z;&;k{&y{6B6j^QMmy841KqIeBT>5^gdnY9Y^k!V zqJJGV+oQ^CW$Gs4QCVsbI=&f>sDCm%a=P8>OnY7j#)<0;YD0#^PBR(0m=}yqJh7BW?O%;6{td=1kajNv)NUP91q-<>7 zs2!40`0Gm1E`PwRTXuPfW{-ba(ojEF_#I7!J~0_d>ub_}v(PY;i2KmxQ=u755_=6L zdZSh-bClF&;HCiwD(*9H)FzIE|7lujK^Q_#aJ1k&iH>C#cJx zy6E>p0M7rBF9}OkM4t@UJ?Sv@;5&%&r&2_}2XwsoIfUOo^=2bqa2OO#=TJj_B~)qH z+a8DcKRHu2ZgxbXmp>z-PW&A-(eGBMk-mZ7#`E$gEl?x0Yc`qM@r!s~{t$#bi9VI6 zw%HWs@H=mooc{dQdvb-=|3j2bo~-pg--)Y^nh}5ewvuX0@0n0AIUp7KDnj)Vq4|98 zsm}qNn%_@T@q07g=K%(Y-Y>%b$qBL;zjmRVB-_Cj!-;TJvQOsoyAsxX{{EKeeJSfr zlnhfN45IgKXl}A!Quz+HDkeSNGcAa$6pinRD>7fl5xqx}9F!$?Mze^ZKc7ZflQM$%`d<2qtuO>QEk_m$|J0V+8HJMrg^_VKn)DzyJ#x-dVfmy*fctj54FAgjXR}eN7oeUw;KL& zpUvp%!(k-7f!5?>Zy9l3Y1=-tAU3TJgNvi5_j+)vZY4d^?>7`lznH_6>MsMog+}RN zB-U%GXB)>ZcDan-`r1^_eN1P4pvg%io@7?#}CV>JEQ+jM#|C_S4%L0yx49`ZF|Rl|}A(~~XqrlxdR z9z7=Y6zR=lxiEUHDwx`+EYX{^LjRM>p|~v-3x6c3IFlIbvpOQzxFEsZ%4nGq%rx#x zz)LP3ElCSFsYw1+%QYm50b5^<-}11ft?iFe1t?_^QW)W4kv5bVtDvn%D@V2M;>{9C zFnoK`$XjI54PuLxSmQFcE7Q0tA+c2$S~i14JGDcbDKoE0hO|}Z=Fo{sj`N%+jod}) zj4ujx6veWk-8#Wxc!4aYYM&--agTPQPZKH4Lvzy&J=0hIM0iJAcsWYR54B_sP=^=tIw5ydE6u{qNelnG?Aygj$sJW)<0QpA zaauxoUf?jP*Qm`z%~VD+qt9Ybia#5vB1Pe)bK{yW`eSjqA1D$pgAjjg)u_!xLvTPW zFT=HU?~V#q{2^J(c!{u`3sIBcSLGp~mgIaV@iO^l9$)!9YdAAIC2R!P=!3R|b(23)A4 zCd!RD{q<_&Z`nal;|Klqr$c=@NS0B&aCN9mL4>Vs#(niLY z<+`(H8G5zkw28H&V|-k0Y3@;JhF&5r25p~$mF`FSV`nexS6JvSVhr=!wHQP)O5i`~z zW~^1r*r=E-{6gC8sM;oqHg7Xku=Eo8gyLX}Qb74(b5+k7H3*RHh1uCw-qZl%EI*gv zOaV4AI9lN`q`#81PKt)D9l_T-Sqt2aRP<8<1aZ7X%sWb&H{xldSDoH&UC~HAeT`%- z<7Gb%728AyjquljwD9O4Fw<-ZuLp6!nK;W23qF8D6XSW=FJT$Z^0OG{6*!z?DSq@N zGuoI=pbfwQB?seTu|%DsF2sd}n_8^04e5tfHv7pw z99N?9tBi(9y-d5Z@nog`xZOB6GuXsD ze&l~*y>2A&OGfSZFNb9taSQd?|5viy1w}OO)4FkBU-D?9=n`9Q z{$&2)Dn#-uUSkIlV;{j!5-RyQV`HovvU2R3(68zVxIY`H=^rBhQXYn6FRn4DU zS*^(U4rDD5ZbWgHh;<_jdAqLJZE<#?+3j%-c}~RnqPTd8bz|OUJ=F3T7G!pl$%YIq zPRBVcDZs`b7wgUO&rg~!)$^0TKaU6NMu*up{uSA+z ztIPOcsa~X=Y)rXCFVnSq8fPunM`_wIWAA19cI{zf#^rkJym@iXXffy{1vsNZd9SM3 zm&7@ZdoS0Az-HfFuD93hM$QWSbAm);(h7ZnW19nN811XIRO8DPdbxJO7<7f+u5fi) zq_GYuBu+MV5vxPPX(L;lU*cqA>lJ!mZFl2`SLo9bwMM^Bd#5pNt-jD^GvbUj>-46!o77c1-1zi5y@hSioAH|673Y#F zdvMmJ-)wOSz;`Z=3&;#N&KJk|aOQ89L}KC+i9c|~1&kNxXhEZGr(k?APH0YWF+#LB zMvD_6khxe3YAMF>4SJTAY}9Vh$0oC`_&Bc=M!^f>9L5_P^daHRVQI|w1f}D!80EG& z%^oL>tb)O+>)T7>LJ&hUQdg>frmpuo*&sxN-HAbhDhM+uoKD0rtRRdF4Ske-7L-1D zvmQ!5>|vGc0m>wLT$=Htp|5u_#?egU`i*)=+ZA5p#Z55oDzEX;MtzX>d1Kof^!}RW zG-_|uyBQbF(h@YU(Rd>|LY(pPjrx;Kb|h-{Lg{vN)tK9t`<0-T=JguC@x>mn+^KkwU>?cH|cM+-;F*dBMK$pji^V7wYZ=>s|HC| z8X4!>L&m(%8Zqlm=Y)#YAAe2ABE#?^P|`Pw7IO^xU8z_!nm3QPUZy;U!3+MN#IRaY))Ou9$MxU|LHH0Z9FRmXqWSKFAhOTSBxUpN|r=Rh*ae^qF#X%cW4 z`-dmG8;?Dt>ss9CSyN|^#-Ll#_|a~Becw?zb!t_uas2Q4<4x2+TY-O5SHb@aS244y z5~DBvC82Ta!}_WK#$x`ryT$UqHdai!WSfVB#fY!Q!4E|dyNmTKe#api}li81dV-jbmANw(pdv38(4-AK4P z-D_O;yneZ{R_rCGJ2lvZmMM&InZ`S-;oEp)|6zZsR%9f8 zsi!sxDG}1xfKoIKuN$s!^&YVZN?@JTjk*it&G+?JvDK;g@5Hs0G56-QRE+J4>xl7U zrmGKQGH6`#x$dVT2;~p;{dg9mN^ylr5fsXGB|of$I6_}x!Pfz|HO?MyZ`C;Wgg#J< zR(~Z5{0xuJcN?tk}m+Fok+VI9=hhv9ZTip0=g5w37TtfzMb5P1i!{?xJ z!0*8Sr8bi!`El@vEh8VM8%|4aGt*qG2SlTI@U(pXKp{UVI0EAD;(arnDbxQD{AVBh z@Jp5f@km(wa+&}iJB<0E0^GLdhv6L%kBW9?T2-)L^f@K{m?$;VdnErsG1*L02IcW* zRr$FC2foMjq`2B7JS_=_#CkKmN~RBsEoPdr77)*h`^+?wQXqdwJ@R1%&ztE7fdk@s z@y03TkBCprGy@oy} zAdZP)r{o_O<(70fAl?&GErfvhK-8X+J|UKxX=T!n#kHrTKNYu}!vC3g@Raly;wdwI zP%3m%95vHWu(4ILqe9P)&2!?f=dI1|rYW%r^3qhta9iV%CXS9SBbec6UhJjKluNW1 z73NT>y`(Tl1MPnlZbp36xTK{cwUTbdCm)BlRYJiVG>sDoK1DdRyCjrziT1q0T`lyU z#4jj%U*eY)9!R{^c)q!#Rq+u;@{?q0B(*a&lG+_rJW{)7jptiAQjO0u9o{CdDmq69 z&BSc1_Nvh?6FjZ69M#&J#)d3Mh4z;5eU@VgF1=ehX6L-A3d)M!RajPJwo_L07AqR^ zZ?bmJc8oCY$#x_eTDl`yqT&-uu+;7&g{5{TmMu10FBLgqe39*F)x^xsMhVTt(gzAz^Ovfr*72-;V!V+HxBjI-#VQ;BjKY@27ymmo ze5{J`tbO+H8|Be6YWr`P`mz61>c22`i~Ojm{~N09`7f&0yUl-9wGaMN)&8w`dhh>< z)Z_n8q;j7WA4}~2FE0NVanr8g-*wKgf2UiTJW@5YKgz*zpHf*4jwg({ZDM1UoEJ>i zB5-N{!C3XSl4>zT_D>0NPU9x=zIuq-?S2p?G)w&cbFm*5DRbk2f7(93Zxu;88+%rfLj!nGywOq}qM zN<%9ybWo?H>n8SWmA4T1aw;>x)DhQwlZnjvjm7O855$GJBo0=q`y;j>h}(c0aix9{ z`o$J}rOC4qS3cb#Kk+&XzJu75$(bpFzchJ%#r0c-1A+;M7Gr8>Ea>VO!uLO-vMWqH z57!zKUyUo%k^1XQycXBXO}qhDwuL-2=uIZxi|f4>%!s6p^cu0}4lxE7wI9sFgP`9> zNE7p(^HUT5jB74+2fZJzoy~SI3W+^;1K`ugG*Hh#)|_T!7#-0*-J~3fzQIVK(R=>5qn<537^h5C{mgM*kdlp=z~a8 zMw&cnxDtEJh1yt?hw(a|7;>878fL8OBP12!DwX#*Ou$6Ohwk`5kj2c+})8x!0!kP(M8he%?NxqPlL3vi#{YGUxvLc|_( zSdOG|p<6ozkueuQc68vyz?*Ocm#IE*8!_nH zaCMn8 z6X-H@!IK7jX6TwsQ;|ub7}bx1jx%utd#cBg3rze1u6vD?^BmV}Z#Hf}&(TiPW*e`MceDw=g~Ir77m0>tPT}7`Ty)WXySTfNu5I3FsCORHy zViuB}1zuwzV$ZwA)sq}$kbP{D<3cS(<_}N;ofLF6PR82Fj`muy@!VwiP&dAsj1`~T zh^usz;@)h0C5RsxmsEoIk+Go?oF|MYD;OIAg8d+KHq_n@OL5eaD6>Rip-koSQNQKyV>O8z)9@+2q%2li&;9~#3+4us;nb0EmlWw za;;W%5QA&PG+Da0J&%D6!{bg;PntE`~jyDU2u- z!E+G0xJuuyQ}hip9IfGof*I10BW6fPPM;z5LmnOJn;C1lG%||D)G>O`luf>3W~|B5 zk=LK%$j4?%kzdb@Ir2uT1THq2IO52yCY^N-tm7+TsFP$A}AJ zj+ABv7waH~tYa6*HhzDB6xn><|Oni-0W>ihglszCY zc!N@g72KU-0|lSv7MyRv111!Oui6+y81L0sOuNpS0j#EEw-` zL@P_O;N}+G!Ge2P@Oc(I4|rrmYx!^E%s9Bx!nDqUH(T)C7TjpTj~lPAbo6M#d+~^9 zuLY+WZLf0l7{-^iBH61g_%;jPVZr~f;HND39pjO!9IX;`tTQ9xl8kq+aZOK??!8cg&W(&UEg73EAT^8JE!TT)u$p~iqUy3AvU$fw2 z7W{z)e`>*BS@3TbYtmP@qY6yR{gq|GcD{Ex{IdOHj5WWkjdJja5USnyg4 zzR7~`is7($D3%cXPEw@e=PdYj3;xi8zp~)pELgrTXU0T|J0^3C1y7M!#h;jK$+*yh zZ?|CnU)6|mk67^27W}yd|75`q+%reYCRuQE?)XMBT3c`@3+`vZ!!7tc3$C)@r51dZ z1+TZ@TTCq5f3GFu2@8JFg8#5!Pkc=2R10op!R;-$hXoI@;IeprY0>mkg(YLQ1uwGT z%Pja>3*KbG+bsAY3x3RkUx;F~|E*{O|1!pczqepJZnq+e`YpJ*1s7Ow7YiO}!6Pkr z5^>mU{cKBy{CBM;eT9X7g9YDi!MiN@5et6Tfk?J1uy(1@E=s$1M1e1wU`WM=kgb3qEeaC%mXX()!OV z8DCrQj~4v91?zZ+C{i|L!F?^b#)5CK;C&Iy_P-NJ0Do%1-&ru921P3KT5!OE(=51! z1!r4ufdv-B}#vCOMn+4ux!o(k03VcnBp1{xdz{w`&SK=dr5{XS8r(5VPE%bu_ z!`Gd_*;N1k13!1nW@a#E24f#!J5##hHoG3@)9f43zVg7k3G>k<}ML9a%Ym1*Q&TGIseM9m3Cf?G-+nG2& z#U9GxF!^&${23E}&Wro|pR>+XY%~qtF!8r&E%>nU3FFJgztdWQ@S-qA zl~XjFD3=PdBHfESr3*8f@4U=^+2t%2E7 zZr4{#;~ggdZIl1L@kcP*?nc|=jBCZdrnSP~7UlV03;WG9PR3s`Lh*9ORgK%znkheT z8$f$bec?oTpvf6Ur+X>R*gJ8o|Kp}&p7Ha>tM4?xNSOE*6Mx&p_tNUbN5+@v{(dK} z(%cT-l$_U~D6KUsO&9l5%E5_ps>x|=+}=2YPWRgmq1E;gnDc3fs$dQ)w6H0(8qA>8 zV7~D((v?(Ns?7QAjN5(Yb1pexuX?0oHqW}_$IBj|C6rhcL=}6;$h${c@851^39(;TKztVs9hj5Q4&H}UBvzQDwnnD|N)Ut{90n)o|GQ+UrLeQe^# zX>FRXOwMH!zhUBk(OQAHQh6>+YZOytZ~besptbL6JluGO@oMAUv}U@WzS|$U58*`l zoXNRna(*kt^S_dKD1~MeO;_`06bC2D#Z0`M$>*<%1ycR|ROZVKOuVJZ??hK;KGwe* z8+ZlB8O(}we@4SigIp7zXyQ*AKV!VwL+}55ZYs{v>cn+p-kuqXN6_kY zewZsz0sT&3T$`h`$uDp6Q;mbQP+;TkXxxYuYTSlaCpwr0J&pUqY|AF;jH~SkT5YpU z{v_imFxm#adwZT_g&HrR)z~!+UNBw>RR-HX zG>qSw#*t<7;)RT>7}qv#Y}~`R56q782Vc_|S4SVA*@+dn9YIV>Qt}qI!gw{zwl5>+WyS{wAxzs- z@*2NMtEc;oKZM!%goAH;U|b9SicUum)A^LVw!a!jmP5P-5-`Qlnty806q?eSX?wbs z-=GtmD5o=??#DAteva`xle36c+odq)QwhyiD&JfG4W_}Xrom3*!^Ynj|3ItLH|g4b z=WfG^a$NbmP8X(?U#dK|e`syWnTk}?ptgxOG4W2u-DxeXH_QcN=W+%xu7wRZ`B``J zvHlb86dY$V%*Nf&_zA| zYLH-D6lUk%!A#3CuFh4Z)43>oeVEB_WZV>H+snvl$GF-CyR(qarg-UO8jLU=XBteU z>-hOI;Y4{kN&Q*G&8^6Mxsl51IH;6F+U@x8Y!DDE>A{(Kthd;sxlz zekYPmyozyklhe?|+Z%VLwf5a%js#{KbRJ}d7LaKgj4%yGtHCJrV}i+_Ve)62{3XWA zU@q)qwEYj`TGmE7-QWM5EvCVCH8_O^@0bP$y$1eBd~EW+F#ZbW!uUms7a7;WZW@Q< zN;?!U6l5XYpJ|e*s7PzL+8TE;?rWTFoC~uPH^cDe2IK0)Y+B1&sC;kz*Qmg5>@YrT ze9ri$aok;b9j#^D$heg;e>ghSp#gXC{9n&s`+=xPl*cnkJ#}ft_nXF_(D(RlkHd-b zCC1e@stT;NFG4G))txxjzcUN<{TX$K6Xi_CHKTFHlW5KK2@{`d;?J1)b0)sd#5dBR z>;Lym#fPTBaTEW-#4j1&FgbiR73y>(t(A#^xng+r<-IHmtw6AhX;8s5sBTinw+^N{-_(gsW?k(4KBc38=ilznfNaz{wL#FOWw;GYMW$S+PI2wY7hl3fEOC~ zutG!Kg4Rsing(5sd%|pc7H#`8uC_yIwH;~l#~V+A+4gRJ(qslJ)OaDS#!s6DE8SPO z;=4({G@&cB_Rs4ko`Bb~p+QJBzR!4|@uS9bXmw>N-4H8>X*rzOP^XJctVs9b&Q{Za zzb+h#?=$fuCjP03e`9>xo(OALIJPXv|=|a6rVTF2E5k~L4k8#y9@p>kXZ_T|k zBYgSoowj|9(~KW6&Vo7rMciEHQ^n0%)sA73uh4Zp$ zu-(MpG5)~#8{_{P|4nODqVZxm(Ae)p9Guu#r;8L;XpJk;YEaj>C9TGTOgxLe*PrQF zI8mO(xaRq+$=_k}zYdy;%XAZeMpxlP`8SgjhL?PynMTp-Xc6NI#!)_UK)f}pr!Hs#yyRP8V9pY;Wb)o@D|+^JlzXB zmrVW*x|tvUmHBdhJky5q3(}f@Dc}C_hp$+_)3}pK>Pt8GXZjGFD34}boyax$(~TF= z%75L&-=SOh^W0Yt%TH9{b5>}kr%i*)#Nq`f52c62SNcStMnFfuF?=$XgoJFf`j)_k* zUPNobOJOcJ5sO>t<#7BlZD1kYqw}h1u+#W$n2oz5?EvE%_M^1go-p}mjW57#`y|@_ z$hg|x3bLTaf0_mnxReX^y0~$9<7PBok8o;Z;=O1sAdPP2=L~`qa4LUHM&Zdsj)#UV4PB!BG8P~#w zn*32Fe~j{9M*bv|{{$UOM-c@jGqm9RxQ_JldHyNLf_hXrRDpOk6R&UL_nLSI<6b7`0a~3K zWjxLJ88{e9;%|J0{I&57;}~4ohH@$xH!$vK+@IEp@y9L$ZT%4%0VnznIzd*X`xP@y zgQrY&APH51agBv^sIov(EpwO+_3o$wEmf#_fzBG|n-eZ@k)gyYc(9 zM&%f<{{rp&wLbwT%9k0}sN6P=#${M2UVzq&N*Y%-In_+OzKP$fxVQctOj0kC^Z>06 zjWV8Q{EYF-#$OxXFpj}>VQ8Ke_#4ZiLIYFL(YQYy+KK4<{LvZ#C(1#_HCn4p{$`W^ zm5E=X+jBlx|0^gYdIiV%hZUMp+2)}n{Ny36PV}KWurc0?gcIc~#?!s9GsSoYt+oqI z{AoJ$cJT`)X_HCXN^1e{8-Hp1lX0L$UVb^_dyKmn2Zx%%W5!PzucoyIuh929-t-!r zDDP)H-3vPhY2}|ZzDO%S5?4dW33@FGv(V9_Qv^g~El_q~fODsQB@v5oVWg5I=;)jh-nw+m_E$nCGe68~0#f+ zBPM4wtp(38cH3~jQN=5!;$7o!jQ?vKhbN#=+e*fbj5`|-pa=VFKb-CgbH5pdLLv*8 zrm-U3qch7iSZw0UO#B5CUvJ{ujo&pn2WTzp6dVi{u9^yd2T>@VWL(dW)|B;$p~ zYmB$i{zwF!JuL7#9n*VoqI{C^bT8~&GX9a)Fy1opKTSM8o=-wKNwnruoYwrSd*=9K zYH2EZ8xJ?0W4zLMhw)M4Z;gL5j>dCTsB?)y7WhgOQ!zMEuEuz}7k2J7?r7YN)<_I6 z9&U27Xw7rF@iN(4|Ba?%kMUXKUyNh%L>8K9MdOCXos1u*)zM*e4}Zl*cEJ9hsKQiM zXpNsR4HlXBGbX;;#MhblHsd`eXTOPmddFD*GbZUgtq%QaoFC72p?GQI+QtKn#~RNw zUTeII_P!evqjAJkd`)Y(F4H~z;kpVZ$_}1cL!%WzD?i@EigGRK()xH#F0V#tn@-89z*ib}qV?b}l$kp2~P= z-!l1&I$`;tif2s4YSUnyiElIBV{-P>TG$uHKN|mQ%%^cLpX*;YRDka@PB)%tyukPc z&oN$Uyw&)9<1d4z@RM;Qo~1$yD{EZW_&(!)v^Lowy072qp>U%77~|UZ z^W^eOTf~AIuQGnwOL8w9#dYEpS~L2`I2lhap?IosTjK%7V~uASzeKAK+v)!P3cTsZ z{q6Jt3lI4fhfRZ1^n-r8pfKIfk5@DChV+Ymys3$I>A~}adY5i0 zMj9_RUT?hL_?+>d#&I}{hUQ<+xK7Ai|NBA(c%<>;#;);J<2Q}>8Gm7X+qfW3W}yz% zfbX0qx|oW=#zEs{#ygEq8UJORit|NiVGWGC=Q-$%%quuEj29X|YrN6;kn!inKN}as zp&jZ(S!3=E_&uW%T?@?J8TVPlgytRGiik8|9PdIJuQ6V4yu;YLEmUpyx%(0#iv>S7 z)n6K)Grnki&G;AN-;KSSMzxrzN_pLlHBRt7#9NP|roy{}RE<+jysmKrET z_!r|_#u1hChBv=)ao_%ltF)=8Zd}{A1&w#{IkhqFXx!EK0po{_2OAHoTr+Q`V@<_) zWA9c}EqI#ya*@ail~$SRHO8Bax41Wu8a!k|pBSGsK5hJi@lVFyy{qcQZ4-~WD{l>A zjm!G>$G3v1sA^op_#R{LCRi=3g^9N@_HKw(PG1wp&9Qg3)4;pJS#XOMi!4)MGAr=M z0Zvohmc_8YKVw4A8oy}#lJREa*Nt}@?=}9=_^|sa7Fpo330-vq$=F1JDtR4?FfL@A zXk5a$jByp?RO7nF4U9YZ_BWAtH?Kygmr3epJkWTE@hIal#xsncG+t=DqzaZF+APnS zij~G|jW-zYG=AIIyDL~L^MQ$fPU9~voW2a1>whj(fG--~qVY!yPJbACw+kyCad%!$ zF&ckI;8fDMym4jY`mmc)A~H4D$wa#uKWIF_IMaBzagOn$##4-^8!z?k?*!gG!Rr2M zleE_O6=U!IVCC;L@wbf+8y_|HZVy)5)875WDqJv0-o3(#|7_y_HU881U*pKCdD|k! zIKjAR$nn@TaF?-pbAx37s0F@D5&tlPa5t}z}rp=ri* zj29TMFkWrE!FZGLHshVf@A~#P{(e(&-1wyNS>p@FSB$S2-!lHgIHp?OwkcSRX8;YF zcYCy4+$4FoN-NG=r9=7EjB6SloKJZg1SlxR-Iikh%V8p#nU}c$D!NA*hDn2s)*!YC;DdP*qmyCZhzG3{Q@xR^&4K$qIJ@|40 zUuVg@A3x;M#ubgL7}qqeYuwn_yG@_-=XFF|Q_;bFxng96;)6_RsPSm`MnydTPcoq? z#tV!W8$WBj(s-S*cVoX+d5ejAH~B06wjcL5+Pfy{sPSjUr;X1VUo-y2IILFQSVtNc zF)m)KQ(jUPQ;}-i#JGiVH{)KO-2s*HVlSJ<-?=&Ex^pVy$e3e73yfXk=Z)7GuQ%Re zyxsV1<9Cfe_3c)>3r|*OOvO3lE5_H1e>MKyIA86&_47WUpmi;1;t9s3eEVBE#Z=TZ zu4~-bxS4T#WA6hET5wMj?`xc4oLL*o4{eo^rXt&TlJOMd1;*YdAhh7+ChmP2Lh%<( z{H2h&{yRbi_$}l8#vdAgVtm~AE8}mBzc>ET_$C|-t^I9N!H-Xb;`!?2Imy`j^n})| ziixKhH!*Hu+&#}hr*~e#8A7+=A>ufX7>_X?XB;%1VLaD(q49F#6`u9Sffr51OU7>+ zzhivB_@MD|>5AsW>m-i{Duj=X}sU~L*tXi-p6aS$nz%t zo$;^6zZ>%=e~h2MKYO3S(Tw8!3U6fNjmsKWFs?)2rww7;)VQT_PrALI-}fHw&ngTs z6$6cP=?;E_3C2NV?{hlJ@jj;`^K&|(w#$uIgv|9{A1c7!XLi(htBJp1{Gst-vh7zex$4r!(l z_=8SpE#r*ijY}ApF|KZ0+qebY%^$fo#vMcE`gaW#;0KH!HXdv|%y_Kvc;m;7rx`zO z?83oN?^cM#Wn97dF5}w9_ZYV^Zg1Sxw}1TgG!=u4hZ>Kkd-+2>$#|Oa6UI*&KW+S+@hbin zdT6E_OvNVSZN@u|KQjK;L0bNzn}72w~E9e&#{G?l7(Ze>#(13ZlX(t0^YRML660mYtBuzhZ!_L$ zyvO)G<0Hn$Jp22f^Np$a*7z5?k3V#`jQ=*~Ut>c#vBrgriyD_OuIPQ_Q46SIDry?n zHEwI%!MGpY*YBwJQA>G{i4Qd%BYW#V&Qwe`o@zYTc%kt##?KnRV*Hx%4&%3)IW_L| z`hcl8X#9ooS39RQjVu-yJjvUxBK)=GZ?uPg#3-AN@#EL%IN!}9;ex)OMt$h#LN3L^ zNq&4Wazj525slo?k1R~2OZqt*=+b)ABC!w(W&Mgt@i1<{tCB|`n^47m7);4tCLUkIO ziPQabbKgVh7QUNRg7w$ULKvOUU&yY~dgFN_?_F!-=l?;s_5B#{jB4lmFE|)_zo+=! zsLdo4dpRHclN=5I zSH>>j{O%dsADhDYR}~mpCm&|Q8DZ3%qBL7#DkXEK3Apgb&K6;LqgK@M-x196YDO_b6PF|AMc|PQY<~k;CBIaya~t91Vv@ z`J)&E$H;MTyc`b~mH9*C{4rjPdeBKip}Z=J!u(}kZjKUgUAa8mSZ)NjmHA6-9p#R2 zZ@CYgCijDf$OGUp@(_4(6t+JXHU@&amz4{{mEj;ON}^C*6?en+w~-54qoxkHLS*r{R1!=W?Xa!7=i8aN(c|KcJ8-UxO>i zzrfYyKj3Ruarl^YxDE`j|O8<*r;Z2zBC*oul@W&Vu)pYm>)SHkS*J~&D~2p5zO!%6bT za0&TSI7R*%t}I`GQ)!<6uc1&!6}RAq@*i+BISdylZR8mEemMc|CRc*{$hG1Aa#MJq z+yNdYcY%XhD)dJoSI&SZ$)n(@@)Y<H}0{%t55B^*32S>&F^LY?1C}+aO<)LtjJQl7T%kw`L z{3r^ks+bMek@;NSP+kr&!DR`}%0&kS-z+2=t@D4c0HRz1OK2`LF56XSvPvkWC zgghKRE%Vv(tULw2LE~i@r{84k$Ijm}_ID>AF723utEr%qUxkXONRqivl#qFuRZ-?e zW(}Dyk{Zcv;O25C_%;t&Z^k)VzsNn{zhz!+^OwDu6U;y%MujnO5jh7gC69;8%X8r>@_e|4ycljI z^GInS^9s15%p;|Tyc+ITfaibof>*!;RPiP}Smv-lA|HUWZ5%XQ#~)0;A9^sdZNd0*x{56gw%Pi3B$zL0so`MMysKWEwig>O~C z6Uz^BEBI%bCz)SmuDydfvn`)&qU8Q?teggyq00i8D$4A1RXGyNcWSAC>qV!&%#%YC zxiH*H=C*7vC&OK2Zr5Hix9fv4*D_tM3J;Na&KL;?**mWNSXDHKC&-=QDKbwQGv$8p zTsa+HBoBg@$;03k@(6g1oDFY~agGT(n^l;AitX~_@LTc|@LqWi{DI7q&k=bkd|X}u zpORmI&&oW_{~&LIuY1P$^E`h`6+HR;C4U5m;W*+5@qAuDJ_aYr$Kew4H*ku49kqg58Wj^;0m3i{Xk}Jbw<-6f0Xzmc0 z=E*_sjZdk-9cm3-nJL&#GIKV|aqxB-1LeFW*M#4fx$Te0S@3b0oA{JG89p1&^FJ2G zZG2G`+{RaA7yeb|CD&i_3vd_?3$|SkN6Y)+g7W)tarq#eB7Xu`mOtb9KUIb6sHh|V z0ymX!!fj-4)5!lK-c8Pj;q4;dSx@@Ftm;YujXAuDvCXhWE;R(<69T1zyJ;mnXts$}`||@*Mb*JP*Dh zFM$7)7r|i({-${j&M$9(Zh-Opbx4%SGTha&dT(ToHa=t^%)GT#lkB+rJg$_wCM6>EboR>PY&{3k9$?v1-FvlhTF^Uz+Gg%1JX<8I~@jQ=i2!~e=SdYqUdem)+Y!ZNQ> zi^&z>(sCWRf?OZIo90IZ>q8wmiaV#O|AgnmTSOaxK!q*tOe(n>%)cQW^jq3JpUt! zPpK7EaX(y5=6n9NWj>oVkk`OX<+X5Yc`JOsyaVng^F9AQ@^1J+c@N+JAH@Q%pD^Xf z-03FDyv&*@bEjJYlXAQwCoh5f3S4Sys*10R)N zf=|obC(g;+;Vbf9_@?|G{IC2W98t_)$)j+re1gYcVHLhaMKSqnxU_s8E+>Br*Q09z zm>SC*trjv~p*ij3c({|y(dr@duzc7vwtpoQ2C0Jc9VIt`AC>u zrE)L$Ik_LaO6F_Dt#oYw)6Sp@T!VLHuE9YWS5?k&8Kdc(k?|_s`BqMWe~`KDf0nuJ zf0elcf66W3NDK!%5oE99Rmg-($lNC?$~>7=lc&M8<&|&)c_Z9Zej9EtzXNxXc^TeM z#lq$Z0bL4N~iSlJQDD#~0gnR>@C;tjRCI1Gmp?TiLv_a-bZAC=>zB11%!G~2yLSe9679JsU zhZ-X{gddf8bWE4I#tY>8U{~hauatYjFUo!3mwgAF2T*uT6?|rULmm#lEsuit$=n$~ zl&8WU%M0MoaD(%&QJ=lTC$75D~ZOSv$7pUgKJJIfW}o^loV0l6BSCO3dH z<;L&`xdl8%ZVf*Q2f6lq&;M~%@IC(-@?dy@JQQ|izMxzwkAz>8`Qq|rc`W>zJPv+C z=HCe3mS+WU{OwcWMO1t!zYKpY^Xc+4`Ca%+`D6GS`2_r(d)S=;jTdy z_}A&)@=NeT@Ah&&t4miZ>sWAZY1y1X2o zFRz4`$-GowU7F{AYy!Ti^olBu!LQ55;axJ{RN5o+By&Li20kR8hmXnE;jiS|@Oe2O zj-Vgqf_(qyR~6#nzvN^%Um3r1DR7Kj87?SSfy>biu)Q$dB}c*4#oF;dNACU*axiYUMr^qAVCuAO3^W-U5zOz^bK7X%} z7sKo27vU}PE_kPW41P!Ep1fcF4gN^}13oJA+4Xa|1UHRmZ2!{SHmXR4znA%9@h6!t z7XK^rwc_t`7x-Vf4;)k0-y9FYN%BCrq?`+vlOKcc3aY@py1Kjst}CyG8_Db7=JE!( zt-KNLDDQ&%$a~@b@?m(0d=k!kW5BJv`h|4XXyJSr;5d!CrUzNwgzsQr|+wx@iADX{*I17dFivISS4adlf;DYkga5 zI;Ki;KDZ&>%nLisWX4;`JVEuQd1Aoykj$K5nhH!BOSb?pO^}&1MJ@=>l$k$QE)Oq~ zYs1TAp14-XxXg6;wf>wxPhuN<2OXZpHmiai+%C6-`5pgka38!^?h1b(r@^1f8SoeK zaQM8;3(g;9KC#`BAA|p@i0#h>%s?TmlJ6(sXqnG)1!X?V6_=ldQ{+`}WqCcEDsO@7 z$b6EkFYkam&|E_--|4CXhq|}Sp?*l_P-n<|f*C4v*!eR6oKa;sN3H@-l=++zl=+e2(^*9SKlwUg}ce^;Xd;HaDSOkwFBjD@G$vdIE(jxu&3!L`G6;Wy07@0#llWqfGdPkPG4Otwhswt?FSEXoxn0l8&%yki0xozhd`;d3|02Hy^T!Gj zxVK`8m$^BDB~{>2P)Tk9*OIx%HkNr>Z6ouT?jnzd`Qrmz0FG&Apv<%9aGCqoXn6~q z<2&eZhnmGgI{?#SISO7ObLiH~9J;MCM~*)xz_uK@_hpXUQJEvh9}r*;NA6phBX@GsUP)v(N*8ZvWQ(jAzA%Ws*VKXLl1 zz)g@LByDnVVp)%uT@G2jBv@30BG61nXpO0{$cbbGQlklK?>$xC!24 z1y5U;4$54EBQiVp4c(C$c=;_e=SP{F?1r2l{!NaB|CaeGDqmH9J~-@g|E~&MKp~mW za*1+jxH8=dz*Jl2f}6-}+fHr)cb7SG56Q#fOqnA$+B3$VLpML30rLy{na}k(6I3A+g-h~K_`1xV^4s{?U_2aN&G$k$ zR$dMlmN&utVt(fHv|WYn0${2uvvd5?ea3m;q0?Rk?sPq64&B2thi<4m0v;oCab-Mcb7_mRxbosikNvobq(SsnrZBC~UU z$?P1zAD{DQ=L*Oxc>YgRfxRmxvv*Z#E(sIAF`s7VTFC4iza^h>cCNR~CTTJ|H(X}t za%6VyahiXBXYZa=1$(zp=Flybx4_F~cJ39rJAi42%+BqT**SjeJ#*MOe$hS6&YhFl zx!@HQ*gJl^J(JkGe`Izpy1E}{=L*T}ToIX_;}_bqEjyP=_W&?8kR#w$astdRt49vL zv=D{9s^|r0$fMv9GCMR*=DD4BO>qHJ;5qU#c#*ss=9kYihnL>Z$vfaz>7D?lUHnRZ z7TCM}s$lOvmf5*eGCOxc9tB^O*|}RXJBKgg@aDnNF<^--A}ohEa$&Vz$o*b)?$sDj&dxy|Iz*f2QnRoV*xLl-W6cCp;I- z&Xtzgxmt7|0MorPJJ(KT=eo(1srhXOhr}GBxn(dJK$g%;xx6P?rCFIKejfWZM(vAK6smAk-m(%z9Ictr#81JT=_&Gb{ zc1A7^@EsOT>38MTj5MBL%uD#tH?b@-USYg}ZsyN(yRr9UVu~MOyt$u~aLN=edUk8P z8TnMD7JmIyTxtg7`NqpVyBCd`tVk!ndMeI0fllrrhC2J9QaF$To!udO5$fWHb}`h&4cmuMS3l(aW51n+9c1-%3m!m7XZ!TJ z2=#I|GNg0tUkvqj+r5vF&TPx;A=JmcfKWr7L+agwklcdq=P$Ms{ebU&^n<uBHam#N7E|1Xe9WHWp5^0#DQ=CA z@E8|#r|>a7=zhY-2|>5aAv~@Kx>iE&6xq`h+FPxWQ9N}cUpQ>F}FX%d-2A1x;qA8x7(<&aCc^U zRFc~*wnThb$}D%!(a6efcK4WYw_^7ggfAmJf0kSDSY+kEFt=Rym|||HW0CP;%V)U* z5Q`XzGj=a;kt-NpJIme7)V+S{RmPS+>Hfpm0YBE{Q^Zz3>2~=Pv4eiU<}@%~wfAc#^UC=dlP+@QFL&GYs!q;9g_ci3}|>^$UcXEOeWFfpF@b@MMPfE_4?%-0x2K2*Yija?dh6 z^G>+bDTEI`<<>Zb@D_yYd7EP-!<`nnQy9K@Cwn);mlwI8ARHDS<$k)aU{N>jO9VrO zdbZFXg^2hlJYjn?oyoe9i``{kVx~k^yf{ynuwp|F%C?kvQ^lA_(se9T?qo@CzIIK0+z7oS94k*_f9%a^;Azrx16 z=yv`p@~*Ic&${DLj2KoBm&@LQw||8N|Mi^v0mBUo;m#`e##dPI?dRR1XV7rA+w=?? z9$D!QK{4WTJTA_>hHKBD;qq1P4u)&t@+ZR!-$Xd##HxVP%gz5aj^(9p^{>&s%75HG zUnB8g0`9T!5|@6B_Pbwj*CQM_<9^Jn+b_7cPz-Yt-7;tKSY?gd4v!K2ieat1Rx{6{ z)%=&-WehJzxV#rW!EmPy?j?kAEEM<#Gn>4@t^W-diL6*JEB6~@E#2VGLO5{3eU(|8 zHn=BQT)!^^k1XBqCq zu-pB+$RxM)1#HSK+uRx#5FdtkRrki{v5D@;3&=mX&7H#d((<^{bi02Qndt6DJfa`| zqIc8%^g?8X2>$)&fVYIWZzJO)JG~Wfh6UX6-$s^?XkQ6`==7@kqbh9s+iupkm|1dV zyi#-nSFrF`zs165zvJ# zj}d2(w%%*KooQ9}yB{z-6Bk1tdExL&2)94r7QKXUH(U_S_rkppj+lzSWUg?BU&2m# z#$9j;+rHEX?hYpMHTrfh@h00(_|T2~9$~)P-HqqnqDgMs@3F2Y4!V69kH*D_zrB`z zkMvrH-1P{DRjlED!pHW9+*?d*fi!=v^)4eV{gB)4GQu|z_E&W#!@Cc=%McEWtLg6H z9%F4@kRu*scEq!WR+V;&nBb;r1W9vlw2AYZ^cM0K;oPaZe%~*1op; z4{ZwMN!5X; zr{P+nf2f%39||)=<>l@RsRa|=O(=(rJmc>9DYA0peEeZHwU2w{r^xb=ovs9&ck?xl$6EI!AKRUB|Ka17 zm)*)gWA4jNOZjYZa_bOY$oSALiN%Vo30PbdX*TDG>qy*fW>tl+zXMVO{)A#XJKc!vI?hHS>ei~$ zppJXKPVp*%q3)$2QRScBnUdr#8X6V8v)0h4B7umO&YJR$n>8$IRG`z&GsB{$=5t5h zicEH|rvzelP8k{1I1o(26AZ2uFog$rUtM53o@5gwvC@{W^2@zD)Q?}T^4HA-|7&L%wg z3u^P%=1X9|!kzFnm}_j?!l*`z z`v$Yc64W>eE0GmQcnN{91b!wN>#!E_*oRu95X)QSlVV5mL(IXrql{ht96M$W z7#@e?(21SIF^^6hnVIFpK2FDYYZ5z^YZ4d7+u~zq&;=65W)5*;=Q5{YV&*_6b^&J- zkB!Su4ipZLtIkgiC)|%7I|)C50q^gp!LWoI2<1!Ii%@t%Rs0{35RMj+2}|&QR6mi7JV?qjTiD6LWJ%%2mBVDv-hXq%^7B_VHaWZVx@23u_ox1OFEo!Te5fQ?bhx$c;d4x3~%HP;mSjEWQ_p ziNh1lZ)z>jk1vZN!;9ko{P*BL@1Tg`!eh9ZV!RlaiKKf`AI0VHEi$LzfR0|%?rb`Q zO?M&cH{f!d*q1PuT7lWWp)T$l%q$p~!=5>DucJ4CxpW||C6WU3=&-me$PCP<^ToZ3 z27v`UIKtyb(hKS6xY^v>o}%O8lJI|E5$7Kt*O_e>)5&rCg3G`XIwg)DZVx<7<1dun z!4}0W$elXi#I9z3;Kfvg;&Rxlb+54N-eDYg$y-+^=}9g=0?WcB9{vSZ@T*{pWQ-lk z=o*GG6)l4Q_%92U#mcY;g#+v+zL7VX@n_<2{wW^lAE;G4@K6ML#i>Lw&iiAM`%hrS zS+p+c_5Wis(4$lkT?`!OocQ-UC-50A0B{Fdt`j)HV42+EqnyC!yaldo94fZ(zsPV_ zC6(kHIzo8o6aRvN6-&`Czvmsjo|i*7C4107rg5VOdKSs1x$Rq_t{l&2D04Rm^e)G* zu|$9Bb8JUJuDu0I4rsfv+8+Cy+TQgkn}I+)X+=v=l&dG+y!`QW!~amPK7rS zdj@&@PSpRok&zJ*H}zV5jDLkMk;Q#&rr$D9%Spbd5YkZe_t3Sd_V!ThAdzt3Dw3RH z_!n4l0p*HgGshrE26`mNBc4>iTWnY~cP?)z!^R>U8O{SUDT7;YOMuUR-h1?c75rw- za@lOZ#ox9)Dq*|7?rrx#&!S04>K_aXBADC;K@QaaHAwklcEzF**QPgSy2WecA1&T$ad?t@ z{r_7h9po5E9UKD{;uim94(v*T#Hr6c)-i(A86xOa9iiYU}GM9>yQ}}@-l)Cg^dmO zb{NcIBkC_>6z6;O*oj&=$!{U{{~4R4KHOl(ytU&I5?B!*gUz^w$L+BI&%S{k<#usv z9rHJ8&lK+@b<8`|1HFP3&>wH14%)FJ+#uYoxKC;aysH-aA4tSp@G%Gc3#{PxS61L2 z@iv+_R!h9xs!#>7V~FvaGXLl1bSku99X8=`KcCxfF!#S7kn^Zj2N%VYB~J{Syr%!-#85T`bum11RO!pLZWYFp52wQT7g%xE33i^hlj7;ei`>9W z$`vI$g$-jePRCUqW!t`Y+WMJyJ;}Db%@lvp^4bnTMUmlyCosyUW$^FrE=WL`C&cC` z^Dj2ucIE(hdqED~A9!J6R8p{NQ!ehsFz#iX@OlniJbY)SFM2agM{R`^RB>l{1C^l} zMd#q+8}ahoP&k$QJ^a4>Z2HO{u%yd_M-63Thq-WK)>=7Fz; zuX>uT-t&rxI6R~SE2^m_Yq-ArY6hoT4u@qG%l;uy?F|NA;IoAvD8MJwhtXE2tZMv< z@4(B!&IqYVV>a2v=OjOn`VX2!H{%6G>TqO7|4LTp_rApRTN`0k5vgGmuGJOI%W-1`Ml-*=hPU;q(fXQo;tl8r)Cls z!bG0b{0pJFY{qK^rv_KJzydyf@$~fnyhN(O?~IAv%O}s=0@&MQcwOx;bui@An2P@j z4(2?Ta~|FWlcyF~vcIO0;oM(pzKT&{S9r|%UD=P4x^e+5FohlB;TOZTaH_wBAuaF( zk1xM(b$R8d(M!VI3QXm4dGPr4c~^F|#<4nx@H2s8$?ku0W9qtRCr8CS{bt7+?)N?7 zQr+eyN)(TaZXA1WY==aCiEENuE-I>6vmy~rK1L%tB!*$8|*gw2K9-3oVGA^ttnOw}NvX<{Pb<;>VA zarYIBE|P##fLRRIx~jYNU`)v}_#M_z|1n1=HLuvbc$4DpzWH&L-4?C$g}c9vk4bSy z7K+aAjtxeYbL0Dj$LjaY@0P(P^WzbBB-4%5ky>jvJCTWNc=plQS_V4Hux9qsQf@ z4a>+HJTh~vGdL?JZD?lhu+cfW11Dx>jLLMnwd&n2tw+nwA@udancqP%WrWj>lVJUh*s37){y+-Yl~ zl3Mz+%N?EV;5B0A*vza!nO+BTax+F{JL78CPs?>i4a&&LP2)>0Z)LqE=&;`jH}?0~ z$4h!KTxE^R%*pk8-K$5-E&h*PN-W^@uyf0PPEJE?-t^x2@WGbs(IZDXgN9{{wHwsmG?`f$14m{K zc5BazN_u)r!D#p3@~DDU*;O=mxIysX?GPCwF%Etst}?ejw!Zt#wZcWRMvl%Jn&SP( zP5M7a+}lOGUiE6-Ev;MYR?axin!9FBX4c@`(HNT0$c)Mym6Mr^Z98goZl*ut+zGtV z@a8%^Yk02X7Jfb|F*thc@S(%AGLXk!`a6J^!?|L3{f+BIMrV6_!q^E|;-DPAe^`#c zNBCpfsY92Jp$hJ-ey7+`Zw@?&MvWVpJKWp1hGSQYQlH(@3!{=7jm;c1+}q3}A4Pw& zaz_sv>8&B+Fqt|M)Yu?%n<#hS}o%AAfEA-G$5d#?PA% zuJ+v37h+1)&+&FPZ>wPEKxe&uGbb0v__$Gbmh11VojbLupLSo5uD!dt&rgpj>$dwg zrl9-H^}xdjFe&l>EGITqLQuDs(k2fgr54;fh#HMdct$7f=*pucG|Vrsd)3MaPo z&R4Nqk(&Ik#vnJaCaQQz9=G1U9XfG@w&w6`_vlkmMf&=)*0}OyGGz3)tigU~yR_}q zrj=t(7k5r6X}$WHLw@++Oq?u+49BYb2T#||Zs87vlHA49!X9_mFOG_L$1jeW>@Hk_ zb8QQ^Tp9eCw(0BZvr1h zk%kX<_snEwdb%ew$t0Oc2!wagCh@6VLyNZJ6smqu5>Ol^{^^W9HX?Z6zIN&XcM3~!MX zokj(C_-p_!@s0%UP)ug#1N$UC>%iy4nxUCFU30aj{j+)eCdHrjG^z;hf}nx?kW@-eB6uNP**n=|0|4%R<9 z@LwJH6$gILfscy;Kl^jyJ{VO=Eg}vK%Ogea=)inanTjtzy%A>Gcns-nE&6z3o6dy- z^6;4lmywcXEh6TM89!?nfziUx1_#rP#CUwf&n>{2Honur^N<5S;lS?`+x(w8=wA{C zESYCKC_mGVq+!-f)}YXV+Y;OD-qV3g9k|kgs~vbHvE3?Mtw?bYX&Ba985CmY`ma3T(rNqRQ1&0j*yhjIAy zcF_4cCAFnR=j)V`{44lQr)1;?2fmBguFWoDyM-PnwhQ3fjxufhf`ezj1D|&A^TkBT zykTOA>nJ~& za6g&sX58h-kRY}NJx|OB!}z=moN42~Id~2b^X>tkL*%jXCk`II6UdT@`tzkg$v2I% zRy@;$NVhYWIQV-L7g_uR9P|;yg%*8=gMK-2OKbcoiyR3ni3_X@jSl+t4t$#f zKjy$MJMa+)R`AR)S+Oh!?nZ~|WWq#8!cqsm%YmPE;QbE#r2_|oV&Rm`LQ!yeD4%19 zpVne^b5}FIT8f_`_$IHPp%RN;OI*#(sSbLTs9xeKs$S(FH9GJ{2fo39Z*}194!qNW z?{nZ?;_MPvPW)Mt>{e<)lkP~6 zH}CdER!DmCf^%RRnMu05k+*qD9dvn9Z_~#(=$8`P*Vrts8zv+39SMsZm}?Bli%H(? z+ZWR&2Ys^xODn*>X6_^1#=9K&u_P7)8Zt}7#%94T3C|1OKWXt@yq&hE|Bs0=jq}6P z6_X?9N#0A^|IF_Z+x^D_(vxj{1F`)Vv76YQ*?%RrXJPolr6$!<;#~WxoWh7b87?Na z+wpEs&_ z1cCB~jXA!K5!(apl#R*rPa9_dpRqA+@01^G%%OA6#+`t9q(9~K0;VBE%&9O&oXPgb zr-h8r-wHFRjqzu#bg(f8FkfDnftiJWNf+3-8!%sFNP17;QX7u|=8FtTp9DO?#_X~g zHeLukm!=k(ILj`yF=y7LHWt7uZG1QI8XNBfzQ)Fn0B<9$82Gr2y8wS`1J(d@ist^Y*hbYe`cv!@eu4 zv@v;Vh~<2P`qTN65hif+Mut84thI3(=rk2c=k!2Rk(e#C)y8azZ8m1#KTK>-T#wn9 zauPQ70q-S_gQ*aa=j;SF;{jrOraNq7W~LJp>C8;$yW}gpezY-pezh@qTp*B#4eYhC z-582m0wO+%ci!-BPSZ~G6_>s1Z7&*2v9DrxTUW^A?uVyi;)!>?MWV~|rdzz|$%u$E z?|R|D+)rrldAV`o>;_kk81x=!PxTX(q-_%SjKE{Y&7{59PwWIu)V*l9#e@y6h&VxV zm;T}#k{kO)K^}qaGhGgNL;lVEEk&o}K~Y8v^@Js;5lPwu{lzT@kfUNprdu4i2sz#% zIWj}?uTf>L1T5d`n2>apY$PWH3&~`LC4;Zn?D5Gp&{ZgjKZm! z(MYM#45Ulq?W`u8&NPejGDA9>wsj?}042=wV+F8Uq;TSQbJ0o#OfaUG*w#AAp`*XF2X zJ_BY@)uZ0F;=7Z+(3VZV`oy54k~j`Ttrni>N4;%4&tlj|Etm19knHJ=i*q=(;&|aQ zjz5irID5U8DSXF}bQ31G7c5`&E{LZ!UX0BF8n)-)32-ImnQhW-y%9-T?@8j8W03w& zkT*#3J0!n2S$s@#JuWiCaz-yW4oPKG;VI<7UL9{?+EoQORmUr40BaW%i%$3H*9jZ*aA5!Fhn#m~nfx=TCEQR3`j___B!0s5EKV&ns>_R`1U}v#J_yT2b~M-LAXZ~nn|1#rkcl-|C1;2r*@e405SjPu`@{c15KYc#iN&4x3 zgt;{3r(cHzH-}ToPk$$bxVw`l>8Bq>vO6FDBetLZZg8aB^b7a|5PteE;MNj;`ok#7 z?d7}VrJp``%2|H;UhDywj(^EC_de+4+k>Ap_v`reyW_}fJL*3T4%<?L)zJxIRI)QBfVCW9ST#C`1*jqX=#aL!B^2KA= zIuHTf{S)CR<}$XkaeSSwNwWJoQy>zqC!??T@2mt&CB8mZin~9u_=eOn{YNqIDx=-p znP|6&zt_LW8wU3GeH>7c74i3DMX=Z4In==4|2-t6x#@RpvJjf;Wn{^w(BGPmaweD>e)at;@w-{>GS}ayxUD8{^7X^3 zfw!4oL8yNGbKo6jcgj1p2l#IDQ#7Og!%n2$YYu{r`cIo7=K)h?-g9>V^Od#0zw+Vx z?#!vEx9(Tttk2__KQR_m8F?b}CkWJ|>Yu^=RAfQJQbjLN*_TgecA>CB$@WYp-yop3 zQtyGdeVGTD(nhAdl)0bMidEiOy&PGHWq7^4OnEi4j-vaj22$S4oC5)dK1l6_*gJ}Q zgeJa@8%65%Vr;G6S^b@e*XljI?0Wa7Y2vCzqe#2NCyv+Z#oBa5{H@U_*4BE&kBvq< z{O3(yp!bZ^XmtmA%}4QpMwFxmc+{#Es0G~>pk0OyAfTU80=)bG6dN(X`kNBqQcj~P zz4+ItftE;Hs|M&DdbJw(5oznxz=McgqXzzpW?rubT0^UA)c}tO-Jk|u1977oh_^r} z)Ic?YZE7HdV7nS9gbJ^!fvyN%Qv)>!e#1tu+oh`Gc2ZS3z$pRz8$jV>_|*b@frBeR zThAT%4CQ+QTy9HKqUFf$4ov+kvz1}QDS-ze2=X)(7Iz0OJ%T12#F31GVgH#XO1Rzye~`tboA4LiV&~CQ#kLB3>hI#h8S`eSwu#sm!Y!nOCPW zi}%(Vk+|Fn(?}_4ig7El6dPk6XU>}-(x{M^ok_#Ys3eoyyaUpW36zp%PRFk?k=Pqt zQa=+#SF>#MLX31{GI12!X;8h0Ik*qhH3y(xW~rr4Czj$bxAb}1Cl+08WXJoVg62h1 z9dkYMo8y@7Ge3Yf=6GViSxlab$)n3s%}XAnPO?;U5^+c|xNoF?aMA57)eQ}T_0|P` z6{-?!AaWaGFh|0SivPVnpm_>hSN*)Q^ke+)|d zZ9Y-A(TL`ZMX@NjkellZgF~}(N*0nT3lyjM=Q`2 z;me;)@@LC#>@>=i7=4}5)-S$UrFYA%s^eeSh|XB9tTaz%Mn#e^Y>cxqa(d9zt_XTmjV<^s4a!rf~oT^Q?Y>S|Y1;c^iVZ8e&S zJ+rWFboNm_BucK*7qoXs88g_@GUecBDkE%gQRt$B$R$E*I+5jAr7EV<>syjnN!&;+Q_9OUj{7x@gT@RJX!e zXhnq`tEi|NTQOn8*fFAcBi#4YKNt~l>8SJqabct0qHj}a6=O$@D4pyS0jI7e8NCGoH*yrR_4uFP*=5}dS=z^d9@92 zpmMYo`c z5+SDj5-1SwHR>h0)tU4V73udFS=lK!KZiQ7wbIwIDx$sBe#fSxf7!L16Qi zR}HNkJWPa7>aE56HM&0|e_Ik=;1FFvg6ng16m-a@*sRE_~=3j&SM8XX%Wt zA3CCZRGDb8R&Un+8)Z_LaV=Ov6+{?jQ?y!{6w zTeSQHjWYcBxPy+FSVXbUH)W z9V&V{e@Zxzs&x5<@L~LyytR)5%RL6(g@m}11>L)N7oc0uBEFKojJ^Q> z2)wI_b-f0{b#Ej89u0kiBIfKji-XUjAw#}C?~xNy8WFxp!$;C-?^J)_tV;O`+Kuptb{&Rf;JX8{6jK8*Uq7( z{H4qr4CxoFK$tErc-PE{*CQdK_oC6GbAOHAcM70l)uJCO5mGd|X6XHyE94G$Y>tYD z8z5T=^EJ9^m^W%#_%qbo73QXQceoBLo^U2Iq=mo5uQ$9G6kpf{><`m;(!+lIcL(C( zF-S1N7a?MXM?*v~%%zC*F!#2E!dwptEB;3~4g*(m$wlX*^uQ{%HAl+;ko+r=e8AYd ziTd-u-`Gb^MW;n)yuiA-b?(YDUL}s|yiGG+BaW8@<}AnEBJm)dy=1&~7u1`ee+LQ1 z{yze5)<;q1`xL)b?@s#R$AGu#kCA>n4?H{cT*^Q78R&QG%_!#w4wHNJ56Sb>i{N=c zzZ<0(=iUb9W-j1g3;FbUcg7n08h(|{{dfj#aw8}sPh@=I5~trYqwTo-WfV%{GZ_mQ zX{FL>XdN1i?utY#&<$gR`nHYc!VX}S-;=0sv|fOqcZBrj5ZdTaLnWa6me{}9rA z=C#*SsLZ^P85I2(8r8g>Sk-ATn>Wm137UQwZEoJglHH2GEA)#5D>xYCPza7AR04HM zu#(rXTfYHvg5$qrDY_rr!3oT2=;uHQUQCf8{TP0OQqc?@rx)!$h%1Fwmpfx>0NKN9 z@S}w9Lcyxy=R!dweeh<`^vgg>FSQirgPinoOW~i9m_AJE8>pH$OGzJLwayo)Ncu&@ zY5D=kOdm&npU%~?^zp=g{T1?D94C`5n=Sp4u^<_;+0rKwhZO%7 zx&}B)hZ>08dI%yy%gN%y(;(oLYz9N$1+7C@v4D_Hvoh4k>mj0l4$jb8;$o$5nwwSk z=dj__DaGhA{T(*IRBLLa^`cIbwF+QEfuc^AwNj#^H1XR9W?{i=P(h^a`MqK~!@sCv#Ub-|T6>>}eP|Z+^q~UkaXdB0e!VY~%&iHrNz@ zi*c^o*y*iNM%!;$Tc7$97LC>;UR>hBLv=GhOxsk|S)q0_De;F>(7cQ->#iog+^$W${R%4S!D_Ala|84b%OFEeO;@oOIPue=V+-x$p z0eiOOwkCJo%%$}r1mnfST~%{w$CQdy$MiO${ZD2~&1tQ;XW~Cz96zS_PoG_1J!b*- zQ&cUQJsZ1X#J^8N>(CrL+Feq$u%>2K&8*bMq$TsNl>33~-AGmj#j-7|JxTR7)k~Jp zHkeaiy4QQ`vbtlv4XXO2>{FW0?-rOd?U;hU zx~gUwTLHUuQuoA3yCN?xh0E}gGhT9%1msn!w#>M)xidpH~c9p1N+#N|KLVf zVf$JGS{NHyl+?B%Zoa{dcd`|e8;8UbYhZk*p9_pkZ!#sY=c&FyS`hwub@g*$e$^~% zvJYCO1Xazgsl_%l-pFG+;G#vf*aF2JM6?jH#2shC9mEe?jZtwFOw~Khv`rVeXNgi$ z6-qVw`0`;;6itgFr76hnw)d{p&t=lwss`-HvvzJZV3$@?y^w$%OK3rC{lO-~SxV=N zvEye+XYr4<`h|g1+YcWl23-xaxbG>wo3Fk`ZVH-}vO;pRxa+Il9((BBUWyzcC%-h? zikuPYLGj7i@HOHum$*WSp5L20`#Fq?oWyrsf>B>wSy3!MrxyAQJMIa+OQU_Lngk`HJx4 zzvxm#H0;FL-7i=i9|KXaNY0U$%XfO;r^stiXFX|={1b)f{Xam0-yP`4B_{nwXoEA7 zkXzMpd#VihZX=CyEK9`b5B<%bxLM%=V*~X#*Ae&;BgDMF(iGpF zaR(a0#EK99=pWArqV{Ie5_tg(W>kF<+)rh4#m6jA`B(mQ#_JT8v`wZk(n_U?y)R=O zRZQ9@$0@s5ypSE_Hn@!irO` zQT4A8tX1`YBe+`C_aRuP>YI?^8dd)k6f5t4dYPx0r8H1p4x@G?v z708%w*?%VOzw}A6(nf2H*!0Q7Q6+E)wTXlVb618j0F@3|=9JMBgpg%U8K0u{LVYZI z%A`FNvg|2?#z4rjrwo(WvZoB5))untDdUeWv3PJWJI+!=lX&J{2Ui4MdZlugP&|(sLdOh_iLHc z%C`;qTAZ|~%%D~lG{b_=kYH4M%_r^{5^OV_)495PA==;+L=;NqJ(71yei)Q)Qu24q zEdMiJ&EQ4rFU4#ZIHty^KmX@9B(w#^~E(ZdtHjs|2{!t06;aB?bK*f;vb+ zS5uH$iK>WK%7TU3LQQ;87HpF*Yr2g!RmWTPyq!XEa(Vkp-J(-@uw(dRCZ1v4c$GsD zQCl8d-uF5T0QFKesX07{p!tI^Qwn5(m#VTvl-lB5*5p#vDx?$g=MN3upbb{VBSVAH zE*&U-kWA&WqQz~+)$yI>(Mm&PDbtYJ=_0@QZfI~o-&1V1`%|Tlk)Uk?At0;$inlK<0Gek-2TXQRx=rC{pQa(M8P=-X^G z>v1F>>Z&{TKo;w|d3dlWgIoF3k#a~tB*xEP@zU^Mhbb3hYy<}X3|8L({B#?ORC9{d zy*nQqhu86{?(sUhIAcm%3_8oW>^TH7GB(n<@6`@jGHP}K4r6+20HxQ19x-x6Fu&_t zP|-3%8=1(lYMHUU>cD1My|*S)lwJoEv28@Kt(M^u&mp@u%p*>W2zJ$`dJ~x=gMY|K zmn#^xHPy>%=HStNo#^tfKzA|zh+e_9yDs7Xy)-A@TCF$Fl{fPL=OwsIX^cwwmt$GP z5-(TY-koAx6lDU;2HFbpToE1|zGNn|IfM{%-G93@)QrzvW=NT zGqy^+bUNHws9fv&?sT{~JGIW{SPH4A5R;GNgc~lTrAs@_v97~oGD^>{g>8VHZralvE{~s;YJ#)`-|V|6kYP#64ey zW2U3j%JJgnMm;aMp!y1!hf83<@?a3TqUK>abH(BlSnB!RFM*7UWW1(&7Hz(y3XW4Y zY}>eL2`*(EJIccX7ENWj0w>NcL^o!f)caikd9WN|z@@BRSwYmzI=G^Wrmke-F&q}c zNPr`%-l|K}2^wr89<9=JB8HWRC%dFXHHe$HL~}*jxxj_u=CSFSV&Iu@i!E1WW{ZNg zdVan`+5f{jS$l`Ydmi`ySS>sEu|6_SD!~&htV%h}T@fCco-fXx!?yf^XTzCkO>1Sj z|I0+Z?v$>(F&L`EO{es7@y6NkE-~ic0bk;lIl=EQNgAU!f0G+c{9#|PYLBZ+?>-4{ zeR?llqCug$>%1NA?91^kfD7%-0j)dbAF!`u-gyKW`MousGM>~e;BxS@t1M2^E zWsJ9|DI->3g3~U+43#os#~@j|6H;v>_7C9bm0B6&tsIQlWlVQ_mQs}4n+6tX#1;Tp zMl2S_ZgGjh>qA-bAECQ#yK-NK+p=BfLV|6(7DI|{yM9GpYe9^=8$2Z^P$O+5vUxhb zPnZJ+PbWSZ)XG?D=Pw9{LxQJ^iZtyr#M3&H4Tk8zrMTf!^j8pr3mHmO^}P_Q>C-Ty zyY!nuhV9Cg0B`viE6cEZ5Ml+4Ip%^()n7(FO^>nSigr8b-l>h?3H%#$n69)WjWurVL_nFpu8?kQO!ZI5TV8iI=63ed*6?fw*1#H<1DDXR^`#SeV zItu3+h;K-9&;xQw&fjOM#Uu7#8_LtN74a4F#}}Y#utERAw7)}Ly)U~-k!9)qSQb{r zhM`V+|67qj8YyMg4%-Wn2Y`>LK#D4S}rchs0^tX|{)neZ~|thx!q*t^}%(*{y#1 zHZ|u!Q2)*Z#hi&}cIrP0BZz29;BqRheoc=;aETe$g*t0DXyT^pLOE^u3_<-jE9y2D zLof9=N{D9BSx$ukhe&Q#2TlC#x=^$i*L_r%B<5$GK$7Z~k>*)k^@cS|_7++1vKl`1 zegp+M_bMXq`cQt^LU0&rNc{=atml|FLv01Um27z`Wkh8|y0iAP+SyW&FY8{A)R>I; zmDmR!vFiFzG$WlXCGNXE)V005>zk}{&6sY#%?j|7&&5`p*-0X=b$nuQ zqEt79qJ>h;85-sA$dg=NDe4T3r^ND{o!ke#qTi;_MWf|1&wVc0vfv$#uexI#nxa59 z*aI>}osu_CQ6F@%1>9&&dDOW2unX$~N?`_mZj9ikXt8*2Q>eA}U7GlLQ>aXv>k@-* z2+f*yknQoF#v=GIC%=eQwBoNZew^_GQdPPFw7nS(XUFpvVpwS`RtGU(cEmv$AI$is zv?p&2jaKm_YRpaO_DyLbep4u>E%u4qZwggv-O|KYH-)-uXWgP`b7-)3ahjODIkZ&! zmq#4k92%r`^@$cYhoVDdTYc|-0d;7P_Q~x-g}-;VM*NSA%MShC%?_moxpc2oe{i!; z+o7e{mMd-!HS0E$!|f+G)%^wZ{JN$%4?TdoNdMXWGHi??jPG=bS8fgo?SxxgdP@i{ zoE~xIEup*?kgINz?ez&**#rXdrcq zhg*dC$)ms>6>!hUmE&=Xhr{7p$hIz>EgoJvM=+svk;7q&hr>ag&_xc0tsV{r_2MoM zvKh8|sFyl1Uk;?(JRC?g@H@-}_z=qEKcI=8+d?~rFJrFtDJ5cz?szk$#CoX&jioNK zTh~h^)bW-I>zh;%vF)L<;YXQ$h|2udLSunE(z;AGlTG;(wI1rA1UYjS;`&X$57}Kx z!Ha3)58Fcp+76F+1!3HUE>%aU6TxE1==KR(Lcg#DBz0Sg`s&{kc5jL7A!+FK*a)f- ze+W4;KS6G#=REubTe2PYk;tZ1dj17T-e>ujd5lEdgeaLDj+wl-P`%u|?|ybxMiw}jDf2CG$qY)5Pf!Q%v5u)EDTbY(^el3V-M5DdaqQK5w}*;y=*I1R zok`avxs{$iuQ2Zj<>%ar0c~7Gm7igv6wsq4O$@#Rv&u2An07}fuj@-x`zX^w*-2Gc zp3;;43F(V?H`1CZ^0uVscZzu6j!>aC)|Ghkj?hm>w zKO8REbQa~zu2oCxaMobck(4|q4hQ{v@RaZhoRqhC;UZZW{1gWq z(+ho4rH1PHB79vSYovXW9$6iSSixv6CBqDAwU)>#ENooiVO!Kp(n8JQ=-r_ER) zGBohK$SSN{qAwh0TF%Dtke5}@oG(wbjHe9q|2WaoUO!$~y>Q8LEcyNKV=b+&;USE$ z4;$*c@~4~S#9J|TEW8xi;HlOc)3mtE!6j=VF8V556u0ES2ql;a{p^zlVTQ}zOPTN1 z(U|C&q*`>;WC2O{Rtlg4r)*s7983vus%RA#k5kRUhPDsJtPv-^3Pai)3Gxtag-z)Th5x=O4pT+;og4tN z5^_zRymBy!OV{X;mQqhFLi2FVD{!AHAFII8(U?@9oU6D;zJr1xWXX>!k zriTQn_3i)nV=))XLp$Xmv@^TOIiTrbK$D{`T0rt``DSjm>}C6~Putz#;xg-)(f{kA znzGUj_4J9g+MgcMX#V73o3b*pyXEA?!JC>pYI(*irUW+|QdIw@Wmd^XN_FnM8he%9 z674vr6Y67vsjo&4a$c0v1oNU6_OOus-*j-N)noGb&Te?3!Dp_i5yFLdW|o(w0)=G9 za~3Z*>!QG9 z-SlXW=Xfnr0t(h%nE|xN%=F zCo$sT%;&x5k;I)Bl-qua~)`_0?Fd2_>trzTGN?a9fW zHHvb=r?kX6m}dC#l%n|WvoCWeIeg#{rJrUN#-E(h#5tr;-5F7=j2-ofxpsgi?mKo`X+#7srFUvrPCkkta zly@6aN_<&+`P)hUb~d)Hy{t>OAuo5uEn8*pA(egd&tP};EC}$4;a_A%6Pv%vY#EBr z#*H0rZtzuiypCJl65gk%v(tXVjg4AaB5m2(Y4l6L!TKHe+8}kA%!2zSWcf9fWtp9& z^A9u;mZfq1ky-d~Kwam^(gpXnRw?V!ev8XuI&;YsOod#EL7r;n+2Y7EGnHpcQZu>q zvL$V?o#i>+m^&(K?LEs_PSH{E^veUWs=swC4v!Lz{Wc zuo^TE&!g2&VsRkSOr0Ta3`9o8TOsvTSSSTU0Vd=DTuutX3V?eH0oEmXZm=nBwgXUA zBOjJM-uu!=DcG4z+ij=uy_8JrtrYw@nf4Mu6#2@nG;IkML<@Mw&vM$F0C=znzMV1^ zuh@9CE#CzLA$)yAK@1h@k7_7|U$A2ai(8CHdv&bXYeZt*uAl#*fu0JDa0ZxFb@vQZ7Y?RuRlXh`)oevxGy63*G7f8CNH?eoYo8#gjT zA>JHx%O1p=)3HJ=O)SK@^;#)+Mk>l!eAOKX3X*+!tKFBKui)^sW8s)(m;rs<%C~CeU5LmJ^5aP>876TQm0R#4 z1oJGo5&^TR@~mD&Fmw@}CP`Cd96ucM7|?k9*5xjSa^NVF8N^}vU>vT9-$h`RHJL-F z6TakU*b`q>narR!zLK55(q}RUSS7w>XE+&ORhhzI8on;&%J^Lbmd+`yK*3=WD+69V z@od}3BW`s@VnIpd0~G@pVZTIUr^sks{Y<>oJCZ%@2Sasfeitq|TrH}qcwkXN^g8U9 z{vYHm|C_wi6mR#AWMSGE+y@uRi-{S1A`Ncu#vq;}`d#9&RymQx=>d`MY3fgjmSqv4 zs*i|2mq&W5Zn6K#P%M)>$0aL%-TpNE#>H3-YdXt@M)Fjbs2CayG+cIyx=qZezzG)%c0`u9;QKeE z!jW2D9C#>$Z=?_2_Jfd$CF#5}NuPm`+K|plePUx=pGs?77NoNj`p*#KQHH{qgqURw zv@xe6{7uAVLIEPa0JX)Z3%=xMt5R`dw)_Aavm%3t zp+t#|1Kj~ozA}Lc$iVhy?TFbA)i!2rXAvVa3nC8iTE%AxzNGiCao}oFaRwH?l=BY4 ztBAov<%p9?UrTx%3H<>WNoKx@33lc!#NZi(kT}p4Kltpxm-I3lC-eS+bUW`uHqUT` z#L2vWvgxA`#u-Uw{wovg%=>Jn3WUUgj`+dnReV`6Ta7rGmo;TxPK}3co=FIa1H18q zPo~|)Y-!@aqe`OcnaGE0;_T@4IEEqv5;#%bU}Fx1EjH#r*luGEgu86af$;|$a~6Nt z#vB`u*_eYNVdL(=&)b-N@>&i?0So5HdD~9l$a&w!gMdG>F-Ou#8}onSa~qEaK5b)O zD&N|e1L-FlUjpn#jaU|&AYkJe9ED*!!cmuFV~(_Z8*>yE*_flNosBu7I@@?1a8Da^ z5cRY1&A@|gyd8L$jX79G6UU*^{fLaW6WCvqZOlPYW#hfTH8y?;c)pF<`HOA*9`JG- zp8#HMV@?!T+xQ>A8*TgraQr4a@+~5_+V}_HJ8b+5@I5xh)U4cZW4dPTvN8RW|77DJ z@SknWk+#pq{PTXv#&k}6!@_Z;1tRib9(#Q#+=^1 zw=wU6f3fjJz&xOreNWdwuZ=nDnXybOVKO3NJ7HR)yfo{BVs)Cxugw~Zlgbt_I3e~j z7$wXF2xj4!4+N{kE(UmGI)l5#=!FR05qB~$#AybH#DGNz&WIZrd?}7H_?PHdhoG5Q z&7fHPjlnFDzZk&=v4FuNVlRXK!mLLyTuf&$LF{61h4_`h4l#NOf(OK%4Bix{5oqV$ z5EnLNjZsU)4Go}{iK7g9h>lAU3=*puj1qriP$%-2A!sEQFt}9gU6%C<&f&UddDdNO zZ_)Y+5KoDv3>5JagH|GI1%hWq4FjKef=vU}BRC-LWY9yLX7Gp@a20|H;sypg#8C!iqGKGv-^FSMIBJDKROB}z zxI!#oa7OH9P$tYZ2zHC<3)Dok}Dc|zDG zQdfyPN!I0z8l+==|L48ULxEfRgQ%g_#74{^r6E~1tmWx|y$^0g% z!^Kfjw}NU)YO{4&A?@7vqSLypHlBMywqD&`3$o_{M6FkMZ%swTxD&pJ*t;$(9sT^b zb#O%UiSH43o&vL1itKR>@;;j?VH%?9TVlaAV0s7C63O%kslCNsQqO^klhO|3W!mRR zep;C8A-F{JWDph85qK7sVr`cPg=LBz>%nxL*u~Vj;(Z3g#jgxPqV=^1o)x1R^cPDR zY!i1f7$sh^(oQ4LdR=cFVOFvMvX+Yh8&Jd_ujg&De5v;;l23>mNPcA#E>xjT3T28n zNnR(8lAQAh-#mWuW&5SxxO45e5#$5U;kkpQXYIzU%;e)6JkZI$cE`r7#Ey;G;|HHd zHQvZh7;ofMr5^r>XFdw#BsRXAlhI%^_G0$LQ$wTPFCCPe#L;fC&&~LQm@L$dE=)Im zYYiMzr2J?FZrBRR9V-6@4bDAx>F8v8+dDU4r*^1ZhXn09A1KLf?|*_kjSnSK&ONUn zgT{SwwsX&O;Aq;RLiZgw_jsA^_8g&bx0mnFl+HcF0Gf8FjD~gL*rAf8o|2P&!nRNy$bSjPIb+`=;fXyvD z?nlb@_a(%V9wq%5FmxYcsBaHNG?d1Q<2;24o z51d9F^uUJ@8i)thg4GE0LXVgM0TICfU3=04x3lQL4y1+^V-a|@jm6ITe#TgUlCLH@7*0CA>62$&`^L64uCR@*Z z3wA2bF{AU4xgXoAaE@6$g}qPlTg_1{i<+UaV(m6X+{Ex;n)vh3 zSi3l@HX+!Tbqn$le{g^tujXPjT5w=}eWEgUiDh(5z( zMH4y8q*s%(M9v!NGuaqj%;!;3dJXmKX3~qt!ad9m&^3J?#q~DFG4Fixk23kniu4A) z!lS}$;}?5|$GXO8fu)7|anqrk5kmbrNYK2`uwtR%4NPc@!5bRIx z`8YF|vjm@c1L;F~ieAuc#SFtp&%nS29!@$AOZz8E_JwDLcv-Qn!m|jKV4V`K;ZSj7 zBA{B@F0a@>BGxCq2qpATg9|uzf^b0&E}}|`c}V6WR!we73@#?tOxi!edSaI~l9#YA z-6oH^2sTh_pX`|6Qexd)g5Th>X(-w-Zza!i;*j|W)CyiPtrU@nbza&ECPYmSN6wY4 zpiVRMJu0=b2YyRTo>dZDRR&yZ{uP|T)hzf+oP;Re92pxIKY)t3)loNrAwb_)B@jjt zYQTjNpar(0&aS}I_{9NtU$P+el8-4JuN$8to5-XOm0HCi>oz$}s+V$V^qD=7Nv&pE z8|GY4)XP}240(;Ja`;7*+|jCr6|dMZ?UXJ)yC_z!{eoMkQL&uSQtHnUCoe8+?i1R$SXs0)`-r_`J^xa7e1^Ow zXx|y*VlCJc@o}*NEf5g*jEhA($<~~uQ6|r9wPeoHSR2S3&broUv+xv2olr8!FFqd^ z8=}4G7ab~NZ3<-hYqXb;`X%#9S!=ZY7WeQpvA8nUq7Bc?ffpwAX=JDFxEn^f#rvKt zSFLQ*!zZ4sjJ5A{AKU7n){cF5aXU^s>LHES1&$7E$Jr(oEi1a*p9qeRU8I&QC)i^oju&$F^TygmzN9HVq?Lp-!+Bt+KkxVN`~(W(~`(veyeSB8qXfcXe|f z9D`VqY~Su~4$_wxm!qMFlpBIFMevOqG%?makB6W+!{`?ECL?qU~DMtNlT%3Y%EJ=~iEyhfW?ay4x7Me}zmZu&((nPn(vG$|6Fd7*A zC=z@d@Y8D!vXtZX;9pxF>rT;!2-A;=#$W zX48qdQJ^J>z2Y_>8u&+ zC6Dl95ta+r|9+|S+(mUul)2Iurmh}`6H^@Ycej+^MilcqWSY`oDOpf zET6BGFH#*`YoLGfTu57*b%w-wQgefHL)zOy;V<~KCZWpTSr&g;_Q~iYt!XM zz$Nx5USW;Lq*vhi%vH0n!*7noft3IB7nCoaPHMCSZ|$yLGC$=isLT^{ehFl0Gv|s$ zC-k-*Y{~LP*6^vDyF4|}DH+~Z3I=?AjeL3Y-6!;D91RTbE;c5#u==&hInb6y2galV zbCz37b=;4b^uCfWkxp#|#EazF%GRLfsBla=JR`^Q0JCJrtCF5;a%jkRX`eTkF{Fo# z;)$5JWO#@UIx#t9&hs8jZ7OWK)WB_5z#eX#uRr#dftL3w% z@Y<$pru~9@R$5*`$j??udf_#_sGIG%XsLMnB+j3ynBk8FaCuhANuatxbXgtC%9n%n zzdQ}8Dd%9GAKGDFowM7hgVaMFWSZ;_m zU-9P0dcJ1?n@udL%E$`Hd`sl$6?d=Ib3?2NG^U5ED7}vLWKRJ7SsQv8(m0 z_O?dyQkOHAH6Bt&|3D*qxJrLPU-GgSgSW);ZawR|MqH)3d}4FH*C)PyHRKbIUZ?sJ zuU#7(xgq)F)pFzO8p^Hja2`pVzQCvu9S0fNiMIW7Ym<+2dr5wAbf7UikyDmC_k4N+ zzJIT$NQs5xbMx;yPpZ3n@2=g%NuSyl3o`G2lRIDSD+Yg?dx36f`DY66J_CO>vG&{C zmxX&!ESk9VyWHhz>Ns)e=iJ{&R8HSlheiR#7qb&9$xf*X=kNNBqU03HzU|B^cq&&Ny7Zn^w^7g6YZv8T^t^CbX z3ld$_ymhVu)lWx_`F=NkoBy{T#>3(*citfNL?Ydjcca%szk)(B?d?ztF?v%hDn{QD zFcO~{d0tJ-xWiQ-9<4SqM6>j~;hu5e)V2)1zH8$4^t|>ibyVV|jJ!(>Q@+O-w^jU{ z5bavz{WU%ukcSIqpy5~x?#m-)HMk2k`M$N?Hiq4yJZWRxdn!-c828G`^ESq9u=1*n zao4E4Wn(OVCLe z={D{RoMmIWF67y`A24^TFmIWXI9QN(qlzWRn!>!Xcp1+V47LeRQQjLEUHgmjim-I} zeG!PWM0u;c2Eo6?oo(_uV9`!4;v8v{7xGLh zVS}G-195kWthN{kABzD9JVm&@wO%T-sxA1YA{v!1m6_E(#&x47$h$-wMPN?Dl0MJa qEJh7l3-x|I&$AM(vPZPMUoSGdphdaejBSuF#xeD7_ze7&(*7Sr(*HUD diff --git a/tools/sdk/lib/libmbedtls.a b/tools/sdk/lib/libmbedtls.a index ac4480fd6972c992da6ad495a4221b13cce042b1..c0c692be39819216c3b397d5a40ab5f8aab6238b 100644 GIT binary patch delta 13056 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 delta 13149 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 z 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 V7K~$y`WiPz6R&h~gz<^R{|6hz5krMm1KwNH6 zRHX0<9Ib*20a1Y#H*8%|Tu^YS*493??bBNRw)VCDt$$m!?JMv5oiis4w|)ONpUj!> zZ=K)#X3m@?=WgEO`@?_uwvCKWE1O(aRxv3YE(^2h$8flEDg?4zl_G=~A%rLAf3NdD z7NR32!~?1y9Iwq*Oyb|pn(jVn4@>~5oRSxdAh5^ag~^+aOroh^~* zHPNQVj*h5^w6?^^>0a5~cuk~NNO2SZ%7c6a)ZMf?TG~BPjVD}QIaLk)u+Q`PsF78o zw70vtG1gcbiJZT9;p~RGixx&Ag%y*^$`7aJMSMn;-8p8Om*jyl*<%8(@$vav^IXDS z-Z9)WsnQ*Z2c4th|HmVQ&lBkNqA`+|8f=1X zelq<#*#!Ob$qWX50%MN>b+1`QSOKXw6eaXhG5vNxpU-~;>YlxHYh6jdxka~+0mpv=oqL*%S-?p?-~2Dp2A*X=3tl7q(qrG4E z;}GUT;)Op2^a;wkk9iil>Av2awxvQI5oZr;vDlU@@Ei-MS2`ggT@4Z z?HYDn&%o*kg^4Qs^NIU2K4KUPWCZ--j96^87MApnz_Jcj6;?to2g}>Lh6#lI5(0GkOYhnF~P%9kOV zdEZ)3;y#&$lh#%m?KU#u;dj;!`W}$J{~(6=GC-#O#Lnm~iGM!2$ZLQXKs)k_cH7f?}EQuauN!y~7-~N(VWXL847|UTDo? zB<)hI*h->@Rgx&P$|+ebi7M+c49njki5lyu-Q9P^>?X*Q`nZ#Mh9ium_1t$o?_n@W zcgwAHK1Q7M6eq=#LWQUACTu46nFk54u!pQEiqD0I>cEKQ$vCTbfE~!03m?F+3FJ-$ z_L%>UK?g>y1ooK`@<(3{95k1}Ss+{woMN7ZV<7Kx97E<9;(Yo^Gfhl#pkO+1y1AZy z$_s%l^BKe+m~?v_ePx?Z(4c~X9PU)gGe_Ip)a%i0}S0VxqX?Ff*~em6TMXw0q2D*u{w}7#X`n*xVwdTjvnNbD2z`Tj0tXU3RZ*D|>%$fbb4d&JC zc-B7PrRFN?≺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 YyYhaKZ-Ow9c3>z1vFLV%i(+w$0U`{Ji2wiq delta 466 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�S!cnD{@WO#3l~=NJdT;s0rV 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

  • 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

    p9dfkpM>u3MXKGoa5 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

    %cYaO&L`$UxvJLk>%2P>){lCv&H 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

    MnQUHB35 zae@C6!p{l6DEvP8_`v_5@MpsR7XFhwF!1-ABsg6-Q@AO4P~cxA+)B8OFm89(9QW}R zzvkIRoU*y!&Z81`$C~E}3uwo^K&CjR@Yz3JhURaOG4WDe_`De}XYe6{hf64tBvD92c3`oZ<5WtQ!7?0@F}T;XUFJV7>#NX*8zr zJ}FOe_zrWX37Eorb5p>42Q||SOnw|6NV75J#7X$y6HMWKhehBVyWg>dc2)q=GE97j zCsQ@1@LKT-FyFz*v=UQz{ctsy@6cmfgDJeOwGPbpn=!4&6kZqF1m-)em^NbyzvFKK z^F2sRTQP<2)!7aX-vzXTcKhzUlXl}>w0FP<(xaHd_k`>Qhu@E$p}iwMkoI5-ziYe< z=KqE>?Zp(HH|_)Te}S3yV+zla-Uo;OhkKCrN_-%Fj4Av-&CkK%xx`nrcfkkJcbLL+ zh9AM<|4aT#dpCR_{eda`pGS|+TiQ856deBFVmj@1tk0y~IGc7mrpIVE&ZE7G>Yi6X zdzC{kPJ7RQi)lA5rQMF9t!Xzdquq`v9ceeNpuJC^(~WlHD%x!LsKYiK_qu&<-tn3nKa?x=7&nIA}*m_p7b(|{Di6mlM!nMehg zLXMMdEGiZ*B~t*YHKvfu$Tk*r6s{n1BS`FyAy<)YEMn7!%q9uPC01F;L&-K4jSwD9 zj^hJqEG9pW52Oj0!f|Pe@C-5wgftsd$n(iI7A+E9LS~_nmSGCHnrvgy3gMMxRt(Z= zOd+o!+gP+tcs-ewhqMV($eYPF7HtvUO15!nyYLP&D;{YlrjU1$Z7h0JcsJR`qGyEn zkSp+k^fIQ9_mXW~+9$l9Y-7>;!UxG+@qzR)rjS1;ccT@*<%%if@5nYT{V4n^*~X$j zggx#THWo#N)5%qEM9LJ-Cie{NF=023*;vGJEF7caWE+c$g-gkO0-e^vWn>$RItsgS z%*G;)W8oN8MYgf1k8po-|3H7B@KCaiMI(gWIA&uJ$FXpXnn1R(Xo~O*^1wiUw(xwi zjYW%u-8g1r5y!D`jH)KvShPZz<4rg&xo5zz%=94bnE`jI4bBeuezJ`-9qWK&f!#gR zV&h492JCr({T{N78)eW7$A`PgHa-;91;+#btH^dvlAZ-F4(w-{HUE21$=Xl-K_O(isJKVoU zk!_z^NVffG4cYdcJIS`cyhyfvRS-jSa?gNIC0n0=ooxNQ0`(pC?U7{b z&kM-bhu!re>$lr!?;mKsK(_w*DcSmD3a=YjKa7(H2L9d2*5AgEt&g2XwtiI)eWpQb z;GbuVF5)#cM%8;QjZu|enK6pw@i|7W%Wl)lnBAtoaU1Yp<96T?#vJ0t7_)j$F|Gph z*~JE!n3fr*fcfkq?X|#{8KXOTR~t72-)LM4-e!Cx_-hkcFuCj$ArB6$or$9N*RvGEjebK_ayBaN4V+ZwL~ z_aS3{U^>n?4b0~fX^(?XHf{}`Xj~5FGm7+Km!5CTZoJf(-IC8G(uZ+gU_1_drST;2 zwZ>Dyn~i6KZ#O<0e5dg$@Y7@)b6zlJ+r4hgVdPz7w$VZ3GVrIy+&#ZFX8gYza~J!c z@n~=q9hTb~3+A(kWY#mEMI^JHn;Em7OO092t&LgFy~x9aY{DCoJ=JSX2Va#6}Gv=R-8S@{;j5(4K_%r5u#*8`Fm@yX`&jR!L zL+UeTK7UAN%vEF#8c4?)Gv>j@jQK?4Bf;a08S`Xg#ys1YG4nY?YBJ`tj2ZKJ#wUX> zGiJ#xuZ8jOT%ijjO?>#;d_S$OQnTKE@pD1{!m$8)@7M ze6lgex{1ad>rOT1Shvu)3cS>qW8JyNjDNK;>zU6MG6vT32IE=an~hn|e9n+Qtmntb z>;Onl8*}`B$(Y6A^Mv#%1;1J~v2B#S#SR_ zX1($GK*qp&^RfbFz2%aNX~g$mW5!l&%-Gr(Gqw)KZNc4)8Czdt#&*0hV;gPE*v1<( zwrR$UZJzO5@Iqt8wu)Q=K)T$RvGJKe+8NtsW5#x?aa%B-38W8W+hxqy9yexeFBvno ze;6~icZ?a^hsJZkpBgi^KgirDQlwtMjE&F!(azX%jOmtd+!kD9%-D`HW^8=+kLxnF z9>$EVuQ6jAXw2C7ydV7;+eyZZZ629}Gt%kCjO}b=#&)4GV_R*^*sd~WY}Xqzwk^ht z?H*&sw#%5YJz>n)_82p^myH?Qhve1(BtF+iW^CUXGq(R4Gq%5s8C!aG;Lq6V8#A^> z#*D4ln6VvY%-G6}8CzFl#&(P`V;f24hLBD+W^9v<8QW}Q#V0Pizi z2Y%0ZBbd+lQD-~&bK_m$KgeYOqzJxnkX=7FW}P%JW}WaEKl-!>7Z?u!wksf$IxiNkIG-kb};5?c>tpD1^Rp5HYy}=EQS%*!G2ZD=@**{ww^E<`S#_VHV zjpu@U8ZQR-Gv+aFka0Db&-gJOmi;8-3&G=!F9AS7V+J{Lh%@UD2Gt|0Hl7W1j0~8&3e|8uJ{oz<4^i$e8=}QO2i%+Z%Jd;`4rt z=SpyQDQ@ z>)~c&j$L;cPXOOz%rZV~yafEXG5gFuGB=9!t}$c&(3mm*+n6zbZ_Jo~F|GvvY0Pmr zB^GE_fomI|0M0dL8}Ye5Zg(u0&-IZfgWDJ{0=GA=2J;!e2HX(RamI{uuyHncBAJzj z#OM0R^qFN$pL56z5^04oeO4ONXCt{AJ#a0>m_B^2k9PX(BD13+@%cS6eV#I=&zs~P z^uYLUOdmeKM>~CfAhU6iel@1gAI2DZJU*M(pbCK0(3n2?#`I}N=9fOCqmAj)-I(oo ztTEehh%wu7q%o`R6l3XYEJdxbM&Un&|84sVY zqyGqSf$=CXpRc2x`&Vn@x!^M6Gr_&deE>)Uj2X`$W484Ka$kDjoZOf`ryA4eZ1S=6 zz_k%$`dnm8pAF=G^uRf}F@3fe)8|2Qe|q3JXiOhIJ4ZWx_K|tQfb_00eLgUz&-dix z=z;y+m_EN7(qzo-uunBJ&`K)ZUmrM;oKNd;Q5g!9W^pOrK%K^qEQ? zOb^eSX-uDGWDYV&)yA|l`ICcrI(bUKjLByQL(0SC^WcjV$K-RsL}I`3XE+R=otPOg z`;E^N5~M0jKEKE#p;|qk2N9&9nEW{ogXbUEVUQ+Z^5>E4IfwZHbLO8G@DlQZfUC(1 z171m96!04I=>e}NFAjJ!`HXE+Aj*&-Tz{t zk;-Ua6|lR{b#cH|wDTkf$=%Od9q>@vFAdn;x4JCg3AA4xu)9CSibR@E`xODZ`%pa4 zBURJBHeh~+eJPV{eJPJ@eW{pieW{FWeW@FH20oDbWAd#pajXgZ(gd>gC3d5*FD)Tk zUt;z7)|VK1*q1hu=i>uuE2gk7?Ic@Y+D*2;^fKA{l51br1YUtS`CyiPcWtbM10o!0!H_^(EI9)|XbZ zU04}N>&e!awveqa?I2rUdX#K^X%E@@(mt~FrGsSaOJ9+#Fa1ikz7&mstuJMhtuGaj z*&s-zWa~>E$<~*u$kvwzl2Zf!(ZcRMU}m2$_GQ8=h1Ush7TzwrOZXY#z2x*DhWCX( z7yeP0Cph7KRrj7Q?gU7AVlNgh6YeJ5UwDM@1mW4_>_C5suzS~*+1H4DlkisIox;0? zUl!g^ZV+rs-<|cH*!3M*>CuFLOgJvwTDU^E4>=ZWYpC#8;TghJFLv-pxD0>{#7`Nz8Pv}3m1?%5F(WdcNDG?cJH1t|IuQfB0OJsnea+- z<6v9sgf|Os7v3fOjIeuWl!Uoy>oe*xh@a%)XQMc%Zpk_+{b!!XFENC+yzKWIE|-&@2ixW5RLa*1{FS zeT3b6mP}_X?ZtuS3}N>^C9_wHeYNm<;Vr^D$R&a1qr&c8NoLO5yBIMXA8S`2el2#vO?@@gf|Iq72ZiM z3)bB&{Ic+V;g5yCBexIM{X;mtPQo4&jtldCdbn@3eON;BwS7I5X9r& z+he?5>|4kk1D_qjj|%S*-Y0xe_$%RGg`*h>efPedPQkVcXg4ku?kLRr-J#Dw;nBiV zgy#z{6L#;+v2Cpr`)1+o!n=f@5#B4z`_y4I~Rka<5kWcRKc^T`uC??Hz? z?wK+3aqqV=?k_&>JvJ4=wkFVSJX?5)@CxBI!kdJ*3hxx&O}1-jFAKYO(U|>X+Peht zd?);eaC%+%*fq46a9p@Gxm%#)-YsL?N9^t$GPrKWG?sSb8N%)zGCcwx-v14sJzFij zo^039wg~SKew17l=Wd)JED%V_Tx__%kf821PuHt|ku;d{&c31iYR+GT<%bQ33BDpBV6?J14!oKDv0 zy#rRgomf7U-acEW3Uj9HjR`%Rj@0P=0am@wv3w}KUu>N!%$YWe9u9Lgdd(oFdIeZG zlwM=lwLQuWkjW zB)wgS(OaIRcTn_lL~mP?9pAwNuEf4((IZ$4h0ANIe7aHb#kkJpm)c&+JBdM_sF zc{e2V8j0S2lJs~j>QH*$Bc&KT%|vf`k{+*x9ZK(uc5UC)H~a3n1nRZK6zav3^!8%8Dikw6E;dQh%f`js-LO-y6{b+HPm*3X zGME>pkolVcK%oNd0d{Dq{nM~hpNA^NqX-?Z!6ZPUK>oIp1XdDg`F=`xqI_3scBXC+T&(EzurF!#ULZSCZc6htYdKNv}%u_|+@a`z=Y2 z*E*ROrjUP1(i>M^xSVfU^#3LUb8N(QA=oFk)*c{dQ0HP{kJbBZkOe~8=&#= zcNPw{f83Fzm$@}Dp7N_tsP{sW-UR3!YCL!*NpCCk!u@xE=yCtj_|`y=+X_?2{9Oui zm1R`mM|oI2mX}|Pn8)Qm0jkGq?92;O$YDRKvWz~WHwd;+FBj{p-ulDn)i-;nH&pb7 zh+bKe-loIo9hIavR`mGwDva;AB)!dt(d(O}H$(LJwJg+g_b{*=_P;HM(c|xIaGfel zOp8R1--$v!_xl=H4)ypu8O#e)$V-#-szr}q14BL5zqSYOm4q7940&ym-fGd~*T+!r z-Xy&phtaz;NpHRAoh*7UC+Y1xjNbD}dRs(qoalX)q{sU~>BtXLSl$nl^md5ecsPgU zZHk7_`rCaNy?pp_ohsYVqoOxa^oAzs?SY;qZi{J@`QfnS(&7BZ!jI+q|MHu5i0$?= zZO+1anFv2E#~zep1@bv=Ofx@@8|#zwc#n+7wJ?QxYm@W_-jNu0XTX_$)O*$R%1wax z&CW6AjDD;e_q!sPBip4tfQyYe3%C1E*vVBiB0Yoc^1CR@F$+_;-3Y#{Q#aHbf#plE z9Hvn3&m_Ir_JrOXIEQ*gNqW4`bg1|WVb}Pk;D^$}_~waTuOz+MXzWAjbx+dUc~?U3 zG|`)sr1$G#^u{IWMe%?|7~ewCJ3mQ}_iPRo-`PoeBkoD)oi2JeCFy0?39jA1#ig)4 zu1nI}a&JQK40wj^@l=xDX6PL%zQ>aEe!MTCw^Z~#Owwze5&W-T5M8ic@;{UG`rPk( zt*!r^C3-2Sf9-!;p~w6%h2{NUlHU9W5_)IDIV^8+k{<6-EDOcVkBiOV$91Z>fVAns zgx1{rY9`ARm-X2_73Cnw)=(+#h$8xy872x90q2imEr1#@P3BBc_cTrM& zygzU#z4Mdw;*TWsE)cz~NqR9{A3v1d%}II#@z7CN-it)_$^tL?idwdp(;~&Sjuzg!#f7SlS|1aYCLzqInIQ%re*}HxB z{vYaHiYe5qOw!|Z@;gE?^W$R2B)u6=`W~v##do>+@whN1N$+Lo@p@jE!uUoe=@mbn zxc+a*B)$1~R_Q|Ihbb)Y`Xs%b&n3pIYv3G~_kkom{!hjEp_ut`@t!2TC^}0x-d}5e zEbnVcddqTft$_lT!uVcH(i`zYqCGakH;nI-Bt8D$!=dyJCh5%VH;7&X94~bL*mW2^{x%THRE3FYljz-u<*>Z1lJxkl+p!JuD!X8R*W|H0? zqIbLKU67>5|0kIc24{X;(aD zp8LRZxPPoajNW@mdaFh6KGEZQ6SRG|A4c!{B)u)7cfaV>#rcow?LLfNI{aAYRhXC_ z6}<2B9Z7mqpjQkp?jO%$3gi38%9~;eQ=k`W&=m3q zNqQ@x$KxaQo;N=(e`|VSd1o9ZzAuyX)=7LXh~5zp<^B=Ix8yMK@i(~`YZWG@T@v3* zSPsj3r0GSR7se{+9bwE_Sl)3-e*9k~92#m;=yz$7-%j}1=j zTceiP?wh6;mY05^2HivE`z}=PW%$8VlS02b_UTf^< za+NtggL>vOYwQR6FfosDR3+&xYJ&G{aG zy|EWXye$x6y}T!S%ain~f588~h9aVOPLiItI^ywJc7;Tzx;5hQ9zVUc?^Kfio-sp?)y#hPLm*Dl7sK+pBV^Y1X zYjJ!F2TkOKdhN>Me@pEHTWO?cn&K#w3gashXd+S#4&zyA8mS&~1dh#~ap)YGeoJeTgR%;}!K zzRv2(Rr$x_g)5QO71yQ%u5GZgC}ZWSqVqiOV7hl_%BabI7Jlbpoy_!AkyQ;=6}@zR z!3+0p{tI{OZ%X$zZ;Riae*DUeYp2!z4sP@-yEz`L+a9-(#$>N7+O&UVgY~5aPhZoa zVUt#^N~=fKuc}%!v`@Tx)#d>eTjd+a4OXXD=B;e7Dg_(Oscf(^@^X4* zWMxqk#8tEUfDWZcG%0Fz1Qon?BNt9xu&~{p@r5(yoj!X?e8$AZQ{$7SPMsT{zhLS@2*zj5 zjZdC9dB)Tttb_Vk63ML9Yx7^34f(&xo0n|9GA*<7wHXzii#GoiKO)|$bK!UW^8LqB zo2+~emnmvJR%^+TXH>lX)g>z%pUu`8uqyvT=%9J}Uz<+)d;8F`r170;qdNa_Bi@|x z(vx_d0p70V+78>U+G1@1OZ6Sudm@?jKHU7*v9-P3yEb2$k=eO2YggADyL#TXvDRn# zDQ#*Oe%EB>v52DH`qtM}ytk)dRJXsD{ov|%@w}N+;;5)DUHYS12BKEFbeXzf;=-w= z3um4=b^M}Mh=a!v^s&EEJbxKqK&t169gxT8F}$q!-|Quav7dezJHMwKN@sxBAL<z^LHw*4u^8vao$m2X_BwQ$iCoTfj4=1WT}I|7br zY3+x&S@~IR)&ckNVLbW`H|z9;n|1!n%_vn~kb;tEpEFE){ zbE#sn($adhb;jOf+^o-qZq^rf7LeEP12^mcqniz=<5oB>?q&n~IOCxCZZ;T?GGc`x zyxf|Wb^@PVOG_KZgL3+R@^I8iujE5LwWpy_>0Md0NG&u=dbekQb$&tvr1y9Q&irr5 z#h8|1%6JKRUgr1_^F4ai9Y21t1MKqMk)1v@+v$D|K8)`FxcMIQ(IR{T=v7SnFlD@c zXkFjSx(eB8wTDeb)2G!Qd9ItCyw1(W@?{S7j;Moe))`pul{n@ZC#7G}ob&Omv5D;Z z_`r4A4>8LrOUqpRJIbAwdB#y_@3hRbCb`*p{E3dV%=1^f+439RY{dg^cHsdxTg6|& zNXxt=3;iK2^RiMmyPQ8)k(Rk;uA5zXshh38)6F*Qauc!$^QK?@2<(Zl56GTyu+(I ze;hv7W7*%2?2l?(oN(Z>=rVK-=khzU*+YY}JC!{CyjI<_{9KruhglgM6}-m$@07ad z>_xTsMy=`M^Xv6a%bxHFR!+;F_???g{@u-{@O6u6*;8A( z*|ctMHvI%Qn=#GJW}f9{r*3q!Sr5C}ynSvq|5rC#&ao&U3&Ezd+PrDb1O=4Kalb+eU2IjdiFs+(O>jGmHK z|I*Xl(q$LB+2uF5*_y}Q?27$vcI6Llwl)(Ze_H)@E#2&@UT${viEehyBsW`sk(*t+ z&CNEvsl#xzWw;zu(Osc+Jfoj1+ObU5(uAp-yi0@JKg%WRaUadcB)H zw#&_)*zaaf{@`X$)kh~ttN(PFn>{nc&7Pg>X3s5mv*&q~ORK-*3%) zi8G3#Q(@HQl^2J`UUQLTIL_JeG_N0F`j@`}Lz%TZZV?REN z3m*py^CQiEgjDR4V6oXIY&G_2u+V%qdS>jP&&~SHuEM?(`^@KiiT$j#_-s~1-_LEu zY%Y8eWH&42!k3owE80KyZ_DY(oUbe=%7w2jr+^FJSk5kn_^stEK#61D1q(&@N3k#~ zl82&tNAMxN*z8ClqS;-$cvb{UKl=V~96(ONl+g-KxeV27F#`L4EHyF1&#jul4gGxvV1y}L%?E^NSSc>%W& zkBq~Z;8u7C`3FKDuk=?ONn%KLVWN z@KPW73mi5(YW(<#jt>0mraenxKiw^5z&^#%xv(vClm^=*N7Z-U^96kuxutrrPY&$W z>;HES?6cicgVy86PjfVNRoZMXi&dNR25QA`IQAFxq&B5!4E&S+EhtCB)BML_dInR* zDQu6xy3pST%Yo3EJB3+of5D*KaH-E%_B!WaQ1`Mn!jMxNqJD1cmKeO-t&XG7DtY?i zx9W|`q=P#_xgYi9<*Y}~KrGAQ+GZ|}hlyB@gNauFGS+D<6JVJYT5~sOEN6t~Fcxk< zXCqo1vD^p#Ke5ok#lrUT>a{^=exsIU^HUi{JetmzEBhIX>m&H~wej&!_cs1;iXxB!q+Nt3CH&~)xk6y5>03P!;)Kk33``px!GFT#=(a#EorvR&>k#A9* zg}GnCDg9WCiFt)>enUoVCbnPLj_CCqKg%mD<0hi9H&9str^l|rs1a~xZ0r#sXZIYx z#4Bv?A;uUg>NY6!pn5h8E*5SGXHvz5N3WvKHjL?oor3}#gDzZH5p0P+oL*Q-PLE|X zm@eeZ*a0+SVOMf?>~l0?VK;It_D~&gcXD2AIP?p9kPBi@(|!y&?)7>M8%y^K`@g^~ zmr`{A(Th!>*Ky?P-k);|12?hge(!a0EDYg7)c1Pu6!aZ9xq>wF(&KPlT{t|~4SLa!=~4L4zcYo8i?8{yx!Hp$3-8q4sP(rL*VnGd913a|*1O1AJ;zU)<`q6v z3BBytHyA|=AEtj^j3@VnkFl8wVn1->PqJ6VWAC*DKh1Y`7RSoiv7c>&&`V>_$H99} z0Jn~PjRB?bg<0UTp5srSsbe{p9cRvu^TXC75?Kq zaKE18XJg$rxo-d11@zfZ|Dmz}VdN`(Ckye6h+RwngM8QZ=vX7x@`oHw#>RGF^eFs@ z{!_euoUxPSvOMlPUaniD9kt1;+m%t)qw{1x5l^>hp8QSmtiYYGD(#n#ZL!SaPE)SA z^QXq0B0h#s13I>$1U{tda$uMR=7f^A!OD-e-0R~Jz+Qsj6URQnum}6+~va_ zaFWaH?>?7c&GLA^AH49A>pB-dyz)Nie@)};m%J7e2$b_ONz)@~I{7?uEF3tMhkFuoS0)rp#+!$3~n_p++UACYz)#mT##=APa3PW1_ z7@qOf=9{eJRkXG$$L_>Hy|m`7c@~=1yiF-jM$gCC>NoGg_cjjT&DrMNnd=XjgE*QW z(+*nxfNQYL=2b^Ko`r7Qyl0hTe%Wo_>sWH$V~}n>#IHtN7h=j72&)%ZPw=mX<;KvO zJIrOhfh{&4<=+GIqhVHX=9vE__L1f%eT&MiLXOXOVjiH&Xsnn!8sr5oG?+e&$;)10QbO zIeJY-BbMf;orOJtEBce@!)P#o@C-hOw}VlOccT>!QH!U-Gpxn=j)PiU>^P{!W#q6H zpM(C(+{XE^*3{zruzVI;b62`7tHobnj$q?%g}>F}HMP(n$n|+VYeARGuww4@Fom^v zE=q7EUAiN?e~rr>&LybDG;|@SG6C7V_~SN|dnR1|R*U?15`P8q`CH0?4_9-JVJ)80 z9Isa9=C;y@(V!OHcMn`r-iu~PiAMRlmj+Lvb#pqu1+U|BDtNup>zZB^PsQrIP8n;5 zfuyMU60Y8J!PGfkQ4u-nMKa-0bOhIff5|Thi5D~je|O?*{-rz#hJP*W8bz&Y!6&j9 zy``vgPhe%VA3oi9&u-#M85FfLIuVBB%k!{ykvk3M71CUuPJ zjW0IH+=U&w=wuEuyc}z~N1eYg?MjY*YJ{-kh9B#poJRemw6dE@u{dyeb;ohCWd2u0MORyWkgaH1;kk zqS%e(>0X3y#A(ryX9SVI;M1a#=PQHG#G$Fh{!AQ*bNPWNs94?##b|Lmx5-PZL00)- z6tcxTH1a~L8CexA-ldV3UCkK5DMyPtXyip$GiG8JZSgpbyd-PJHF+?)v%#xEV=f7S z@Jeqv-^SR#@hX1Oz!-RzuflF$ax7!mO&@+>_2)3l zavJ!!zOB)4L{qpmZod3ijKw84GP-(kWJ$H9C z@*%SyJXH2K4CxJKzsKyqhm;#g^vQ$I$MpG)J~d%k_Cw5mli9r1uiNH7VV8W$9NzcP zoD~o%8O*ZtR!A@;x!QAWSw0*4ddW!)hPOz9sJL0Lyer%0WJ;b_BN^nJ!WtUO9NtJt zMCq0DT()E!)p&13)js5|G>KvGc8jjFmYr=fbN*AaPEAwg(uOYcU(B-phmT>4=6L0! za1K>6old-4UeEto z`vrzSf=cU|%@HKm5lvx7<<`m{rqDu~chS>D5L8uSOefxDlHh{u&dk1;qc-n8C04XCfm9WJ{F5D?cC0B@39t`)<0ZP3fD6g#F+PadvMD(;b{ht} zmd(i7v0W%~OZP=Q7UN6tS~jO0*K4ukwk#qS#16*6N08&OHq^KD5vK6^?Y&jaB<&oqzvBfBE%cIC`V~=4UY1x|G zF2*0uY}tlf7Mq7wY}uCFKGp$8j+X7n<*~DH+SRg*+#&W7>ZE0Ra>v+<_ns*G}vtBiIxd$9{q;L>h<6v>MnhoY8t--Z(Su~{f^X%E^Xu{fHf^cZqVtRJ^kjCtY@*by0r-xfI?ncI_F%x?&L>7@IR<8lWgXIM?{ zIJfR(6e!3&4LP~}xP3R`oZ_P!l}^1M-Pk{mE4k3vC4+n~i|sppJt`+NC4a&v*iDn17si^QX;Ug#fb`hCad73WuxC!DL`sJN z5Xj(dMC=p{bil9J@l(1#083y&Tc| zKmIM->0m?dqI538wF{o^0w{ZzTdo)6vnJefGcSu;IFCR}RYti7RYnIPH;X;2GI|3H zIlStX9%;l{nVN#$6lvlrC^Gc`T0T<1g=l1273$bu4Zadn#%6qYnIk;bA#^yajIv>R zP?FW@wqM}oG;a>aNPHctVd^*NAWS^Jh;#9hG=YAR+^shzs4WSEeL{p&mt92~*LF7D^ z$h{cbjvV(5D$zZB^(Jx-GWP{`kJlJ~{*@RsBSVIx3ptlxk)47XP?t+sO(UA1>+=q{ z-vrss>EbFN-{qe4QjzCvW^N^NjtK?4{H~1elvA^U+vxs@$QhSd*X2$=5r^M5x$f!6 zIV-VlI~;N&Gp1qJXMOr>k#lX$x=m6tkvk^`Ujy8_ch;=uO>2PG_n(4c4~^^uUgLWa zVC0NvaFq4mhxM~CCupn2W1thcU^zbh-;q_Tjjd=+ISvP|$l7nA>#CqBvWr6(FW=>^ z{~jIJRY5o8^kVL<+;V-w7Y8XrKlM7A%&4&`r$_1;7d2ZhKzm!iY?&%ydun3KycX2s>85P6zkO8hU8 z|I^=my!_L-%e;9kHtV`&U6dmSQ&5#Nrp}$>Mc&xj|)I&o=$I8LG;4x9P~4Q8jsKeEUMEO}6rP>hpS?N}qc@E5xMk)V>{U=PP^7kAGUKR(M zSua8-CA}RkAY*cw1TTvRj#(^lN((Hv3o{8`7E3vcy(gs?mIsEJ1TTw4nZ<)o%6KfF z8)i~=_H?vbN-G|IX0JxQr?g`2d9&DqQ!a(WO`$iXW-nnIpW%j?S=`%FcEI{@=tA(a zxO-McIg-uXi;s-ODR07lAao*lSx?||7KgKxA3$kkR#Gb9e>xW8$;)6P>>())k=-nG zaYdTNZjsUkw$6XIa}Y}D3)`5`PME!r4Sd{qpqIr#D2s#8EDm`o3t(IpI=d3gV%JT% z7`6vOJ2yIKCjKwrX}0OydH-TZeU>54yBPHqdCo=a&EhDM@(k8`HC!`Ld!9 zV5!FB`jUeY7@2ujZSH9(lkaxWxu-3{vj~18mX88F2UyStYw^uqOdT-!n>NF;s2soZ zOi_Q>A`GD(JiXJWW0`3&25k@WUKza3SODviDTtTWC?-GebC{O0(lNv!lU0vi!mHq( zpI?HN&Rh%AQdWN_*cOGEr(X}t09a1H9WWLU4BFnj&Y)$ia8$m>-s|U{`3V*mvchZq zu!E5;V?PP=BPX0WnEC7{mJb(iW)Id^Q*Q-=xD1o4FM^lF=3T&Y^F0zwIKZJc?t7HQw{Q+mu6)**cRKSnrJ$zA zcEoWsIn34mt#P_B;{~_Oz11(~-ufk$T|+DYoaY~py7o&Z!m${8_4$4yRJ32l z68OWHG{SZv8&p&2B5Z0YN0X88^cLe_<6&s_UWa+!HvqrYG{`LJ2oL7Dx@~nkSK=sh zIagYC0tmyZ`_DT6sHF?BxC0qWX8>LYoH-roF!#O1y3r#aFHHF&&jSZ?1baEtpAZB9%19F4sA5hcobi28i#a23p-z@wg z$abTHzo|EjzhbIsz6FT*Vm~F9Zmd^-_{G8AG=y&c2-lQ-u>SeMzHPX?kDJ` z-pBBA1LZKb<4S)tY%jugUeG0mQmb_8{Er)Y z-mT5iQIVEh?thEL;vDzSeCMw5PsJW}D>~f#$fbTdw%R2N>s;!u15SpMe}#V;Mu~dk z|H5F;-6#0hlPi7vH?UXlWd278@9DCwa`||Lx7Pov9u7~fg1ZJwV3FH8o?qW@k(HB? zlGP+@WTX0ib|Vx%*GtLjlF>C|05+FW>}6#1Kt6h}A;zrKu5iKFS?Q;w)6<7%TDnKf z1E%NrDOnjAVGh3kgo4N9cf;9Towoil`GIL})_|OD`BQSJkdf*Q$mxju%yu}d;@0by zIVi|LZI>VuCCq_VAdPR_1+Y~hvwo#*0V5`2a?w*UC-S#IVu?VwR>MRX-SQ_}5O`ZD zx6>$*H#aK`FfU;&&j^kA2_p-W$Y`t?33C%QhyK|8BPaqZr_j}7D(kVS3qKY0n99=N zp(Izd)B!oi#6B zT8?d=8Wt88{nR%s5d$vOjIh31p>a`9xS(l`iy)3N#6Hv7uok{z2hGbew5?If2!e5s zRwsH@P#a}6odcTfgH<}B#|7Q1JfXop#{fHYw0=WF0d~%gp@F3fI_uG9LTv^&&kqh0eZQNQte1Cx3FOF%B zF4+#XP(?vJf&wqM+XbD!m)qOeOWc0gJE2j5YUqQ(#p_$ML%LXxH31ZfJ)&Pj+fe_8 zKBK@77>6~>x<9T<&5nIMk8T59Jz4-kJq}7#ZD1Je`iYGqtg9i}Ru@Bi8Jv&@tzoFk zbmk9tWkkFqqS$5U^F>RYQj_jc{~RZtklu%_Ca@^o`@z0V21N??GhFx@SNG!@0Y{w5zhz=r>3GN zgQ0d7^FsS<+Udxen}Y>wWY3$6cU*Y$!kvTJ^Me&x^3$yAyVVx7{eR4T33yc1+5f#W zlVn0hNXQVwCX)a$D=Ya zH>{$S*0tIywbokO>Zh&Nw)+45&b@c$4F+7k|Mxt-&olS@?t9+zp7*@xocEl2&YgSp zocQLxaeDvAlEnJ>AC;+&)*hkd#Pg}Kju?zM{n5EQeWYNxS!PfusEagAiH1T1x#q;o zRi?$8jSb$52yid4Wu30YfeDir$&2r2^Rh~xbvlz`!eN#C1aQXa`Q%wq?jalkVyfTeRk(>1x=*S{( z2?^uGM<{|+TNM{46FzMcc&|`lb6>WQD=m!vaFvB&)@>F>SK6+Jn;Hi(=C`8<&GLgg z1(m%~-2-yQqiZuW5%9JQ5NCB@2B2=xA~oZV%_OUvL$d2yl|{lVLCa92xsqgXg#^+^ z@oq-f<}kq22=`{oSKf#)bdU(a4D#@EXrJm;HxjiN5ezy*5dfhB(;sTjz+#x$Lo{Zk zV5nwbiLO?nd2fIS23E@IP)g1@=?`^n76Yb?)-KXqeDB8~l{{d?;;arP_+h0;I9WLA_QH&F3^oki z03@TSTQ@^0iZ^AX3*Ad_Y2+Ac>LeLlAr-AWP80}EJYc80;N71i0JL`e@5F?}(Lnbk%huubCXQ)fNqx>L|gP z@}TTC@>vJ%Wm6Xpi=@$xJlM*3u*2|R4fCMl*1@jG-Y@_^Y=4E0C?L8Wt9mGtHD?{Y z#TQzU2-!~t;%AwJ_9(&6I%GWUDv$4@|7GxiHtppI7+wEY-_vl`b;!a`|Nr)8od4ZB zb^=|E4Yi{in(G=n>jR^k@P3?z=D`0)k>5eo@{T}rdrcNz1eEK|3N!{sQ=^4-b)&x# z;Tu&rD$i2(he-a0M62L+85yIM^#2>FqiY*F+W(J4f1^zQhk4ZpYC9KxhjN_arA|E? zT>FauE3*WaWATNrkm}{7QRshoBT!psd&9DT@hYiB?32B4FKWdCI^1=AAXwAc*x~P3 z(HdwUwTMm)@0WoPV64{wg98|DuFiL}DZ4J!}3EMjw{jD_(ZAcPn zTtUsYnvRw>e=XkL6v_vYl!qR{RDtDnf!2d|}uBI_SsHzbO;GNoPn(JGd3^i&R$pRh3rK!F_>1+?Q`%mEN=xjBF zLej#3zoxD(&`t|M^I&Il9ks1#WTue41oUWF)3PFP8{W`GBLW)M0fs^GYA?mrBm3sg zra)UmU6_U&aTK_RMj#pXGUNc)w9z)Gn6b5;4UHXH4b2>r$<@$eFewum(6Et#*&Iww zjaE?8j+dF4HIB6{HL%%nduPJ}t?sbd)1o6Z-M&%Bzp-_@9e;k+?YcVKRD`W}3hrZ% ztcs4L1kHvEufn)h06s@0iKKiW3?EjmLz&+Sm9K7(QYq|asGD?NQ!idS(TE{0(ymdr zNW0^k5=T&3qa2Uu(fw4yXIC+Q_-{08tx?H! zD;vj2?O%cnWn`RTVZ&5VgKDZqWW*{VI&)NLwQ4;^I)m$C7S$>eYr+}B` zT320rYi-*Str1>knT9t?wBS{0T}^?erj}&^T*C$W8v`}%9r-@IcLMUJcoLmc)(Ib?X=LOp!vwWFmI+lReL=MPaR^x9AEYyNs4fTPZ9i8sm-|BAZnU6sD;pCVW6X{POGJOt$k5Lu*1)n;b}o^LL;^j|5HN1mjbpe3)Fixe^YIH z2THB^ae{fU7u>O^t)+|QnO)P^8PFOQHn+4Pe%|z%9XSQaC9trqrjfQl!sd>O+NrhK zD9AE0muoGph9~#X86(a2HArD=3yM_(+rZ#3XsCv~`8{jsyoL_E>##%VNM3(OlfS8@ zS@Q>*mEY3*Re@ljEzk_>pdOp+up5jDtK+F&!=o2td)CxgGzIx0!5$Sg&NEI~J&3x_ z^};s6Kub`YRyxN&rF^b`YWeg@)sr>WKu$g);i&P>#byj-U3e#9pv@m>UdV|hU+B27 z9hHgE*GIJUN>r7_ckSwUdjm@%p?Gvz5d7 z4{7v;)^Oj-mhV?h)!$s(8MJyqi|U*+JG{9kF=fT#sf*D`r!LO-`f$!ID&RQ>CvRSU zfv+$(KPL|tIi&c!MZTi^0&fv1*jSji%v6Iz|suSC~LFXgD>Vx{7kj%Z)06pI)eoZ)edsSGMnHARHf0Zj@MHO^4|HTCr>`y#)8 zVRNUyZu#<@+#XYfiu&>bFu@D7mscs?@7+zUDy$E{B4u-{%l$Je=9O#hfeuqW|I9A7 zK1@*B(QKPlOEUGG*W9&OTh`THSJND%qU_@#7dgSpHZgDd$(3JRo|7GJ+U1pt7n|+H&!mwMAL@dg!671-_l9vUf0pmRI4?2Ha232fKeM;nit~b zsjx0TxXf2=pZ&B+4Ox84D$Ly;RQ^y6ejIh!MlqxY+X6MJ zJ^i=zU0-`3P+tzyHPv>sbk+Hdu`Y-~5>C|W9U8COS%!|5dLsxL!4e~AWWmtw(Frlk zXp8s~Ui=qBjX5joYtT>C;P@@3teII}HDzYDKjc8tRUMqX_GK@f0<$W8%|6bNK@B#X zj-c0tgcgG@JQB_1*sqGtiNO>+<=)zf`2p{Wl+OPh9=4#q0nVVUzI=sdIJr8^YgRPX z8g8_Qd+-I(dCC`8O_@H^uV!xLC@*Yb^j4Iq2lol{t?|mY!0qvFb_vGQj`~0wEMZWz z)`mb`07G`bnB25=*5RJltlQovKJeq##K&LX-h$UNH`n8aP}Ni&r*M2#^S9P=p*4n} zm(eRV`|B`6ZG$rPfp!SP%%)4VGNOj|dPC&*^+Taix2XyFsK(yesC72eI|u4LMw@^| zFsTZU!<;P}-Ftbktx3%m+t`uX&7K6rS&TIrj8)T%U`tyUYLkl(#$A0!&BDwRU)0=V zew9fVduo>SQ%9#@denqgqy-yWYG88Z{Mir0pb#3k)uii`3ZZLuwLyOlXq=eP`K!KE z$GZbfx%BTlfuuI-Mj>bpeK20IqX8bdy{iV3(+OxRHJq-(<*Ly+s5RBL(Y)WyRhu&k zHj)(qba0x$n8mfBRb$fIRM{3l3o~m4_ChznD5R$SaFEQ(tk&kh!kP}Q52>NM$J}9T zsKuZ-FgiP*VPlR1YJ6qm!cvNcI|;{4K#CR5Z+@rkyp7G{2t}%$qw-09Z*Z z$kNUh%<_42W;g(EE?!E=B_hlU+5)vOr+-nP5jQ&(GixxNf~)2&o4N%;*?w@}G-kx~ z9PJ%TvXubbnd$XIjn+;~2aKiyL-o8nmN!;xNZ&WRob0gl@=D~VEem-M_5|E)qTtP>TGiyQ zZ&=7RSATOuOD%%%y^H2YQ)+I3AHW0Y$_z~$R)T6uU<9BCo4G=wjcGh$xsTi{`y=E zJtn4V)~OcCreTK07OgbwaX*;f(9B&dZg4uDa!Q)i5y;;$+nKdWkH#q4r_wT2~mt`yWQuMtZt%3@ZRPfb&64*X-7bswbp zXH_(JD2IXESwJ)EWmZjEb7*#0EdPfLqB=)&{qi1-f^%5*!5(Y%=4?cLGiV$a1Te&y zt8m6#A%OK(taR3`2rVak+g;LkT14_@_ht?F$mQ7bZK`Qsq6L~-JFtvG=VQztpu2HP zPbY&RTTCF>@|CaR5Y$!QZVc7+%B>k`WOp%Qu@}PeywOK3h(B>zcyW25Iot-y7gtVMreRuxB}43X7`Gs$ya5U|jf@Oq?Vj_) z|DMseu8|WNV-9DmX)NR})(P&?@B>=Un@72&6e?v_Rv6+2qYRU4+!NxbwndDIFc%)o zRaLGHaxQ5-FM<6u?B5yg+FYYD?zpqnMj~g;Fy8mQEeOpSv6j=ItqS=N3rts;qHogs z^}fLgBf$Y+T_eD|f{+_hqoq-w-?lW2JA{y@h0SSf)h#j51TY$6ImTG^4;yOI^jV(q z85th+u#qRLiHqx~g2r}F*20DLwVtdQ3q4u5%`e8bMMg$WjwdVF+>#ZVA%Kn7Z5K(0WG!pK#xADkS$H}q*br!h&!}z3>Hs`Fh7hC3Fov-% z8d@<|l`Kad)ylukDn+5y8`^}Mq-Yt|Mx?*Cafw=)vIYWAJw__-zILj6d37@v8gklI z%PpHaqfF!A&CvpW6eC+RUiJK)l<{$8sl1AdC}^>&u{N0tFy@A^U){EZdk4o2ZkbSi zkD)UUYkBQ(3ye6q2dO_{Z>Apn{&uwRGzW@Z=6vE@e~*vh`2oUb~s89>Xp{B6sMft$|Y`N zD@N;WmAGf)`qn#8tO6OMq}rwX-wu^N^RWYSxrn-a@9C|NwS|taYMdLmScGV5t!YCu zHHOJkb)6Fi-_XbnPhHd0ge5^t`G9_qVxj({Hf%$C$ylZ}HuQf;Ve{0ijl(TxVVE*E zbJaHp-)1b+o^Ze0W40bzvSZUmcM7(I##Fi>c;f&cxe<@(Km{qjJwIE>3ph!8+lz=%i%rj4=It=1iD(VeW4sR?s@Pe4K(W6J^bdd-hjQDMQsb! zy$84Okw5379930vIZx+31;=~USk(zK#UiF`znE#Lhef=|7u~w1vEd?&V3-PX&Ay?v zu>m*N$V*Ld%BNRX&GnC;F>89Yv5-K^{D8I_Y9fK9=B*j@6RxbSrfUNCz4(sCfG~6_!i%3js3;ks>KLktX81v4B%m_@VEI2X^ihXVutFlwG|V?o<2Gl zY{W`+c=gA$_x~mf^w4QyBxtE!jJcS(BEw>+eKOUtd#)(`fRb6a?mZ_1#yyRC>HuRV z)M3|$>6#`sw4rrbruL|PNoaJ6`{5qXJ!zB1k00Ynt!rz+a}9XRCu{m7PxzvFVOGv4 zuXj{-R$gw_LSKF`CqFxwRo~Fou_Dcw+^Rolc#MBLXmivv{{9L&xmh#I{iS6yXH1=i zM`os0RF_wkPMukt-KVsy0%ty(%fGZ32mj!~!)*lW|7L`Y$8*{0AdiK~XJI@z8p33B zr1EV1XN}M9GM)!R{_qbuEg3)l*@Opa#CSAW(fOw&9;6d9j{MdiLP)m`D=+deuM=hB zu~3yZ#Z1s!TFPZwD0X zJfn7u*p=4~ z6YLuQm>WLqsu#&?{yi^z*tK}oFG-<4(UrH7@s=kvX!dW!vsZ@?yLyR~ytcf6L9_Sx zTOiBJ|1pLSyZR%oydECD0J4WXomH72X{pFkxf3|r|zuBK71@}RCmyTz>u9xILc5IH451_%qf9`i?o_ zP;(u#*>cR%N2qAkQ}rYR^Q@Z#n&RibV{s^clTMN)ll88flMgAMW2YOZOoZ&&#GG&N zPu9d9g!Bl+?8%HHrm7U@HoG@*jH&-9lZR?3nUR|6l~mmg%p}y!&41nE07+r$MI2+6 zopU=kx?3JXdI1X;5+g0;6UUhLDKY7kO&nv|YBK4NGZo<+6Q7Sz=>T^b1kNNKn0;=7 ziO)ee-Ne-h7nqp*{C~Nd#=y~vA2IcBH!*c%@hEd7LjH(3uVQ(KStqJ2!1cf-CY|~+ zZ}M>dG>;hasV}i*=S8H0hjX%J#NeS!;+PbiaHujS8kqA%H{5?2!h93+kI=Na8$8sX z*s?$UIr%xqqTUwH61dpJtRKoHk2MdA#{`=)sS~lPPhg!BZyZ!hM_b~-^zkNUwOKfo z82qds{;agw#8egs^@}$#^R{paG15*z$e)##_SH={K9xKs=DgLybBK|a?Swxo?E+%h zoJT!=@g{B%xRn@bI}q|`rCm-8`|wzaU%ZLe3d~~YoUG$u-RU$M4$h%1%>H9x)~Rj| z$+Vjuj}wj*{45@}X$uz$TrM!%o5gdUz^d$~4lJX^(=6~Bfv*sFhrl-qe6zs!2>hVH zhXj5>;MW8`F7RIj{z7289@e?9zyk&5D;BMCjTU%}z~us03OrxnpukH7UMcVC^m^Vw7%ou?a1Wpn-Q{V!D%LJY#@Em~y0xuSL z9Hv>84(A9wOW*|p2L--X;C%w`7x*E89}~EbBb;x4fd>hkCGd*^zaj7+1pY)|ys9o# zt~h~52%Ii(vB2X6o+ogtz*_~rMc_jMKP&Ki0)HrQ6da9Z|73wv1uhkMlE8j}0|IXn znBSnY3Hn9|itQV7*UR z|Gokb7C2SlJb}jx>=!sF@J4}uB=BB=Zxi^Cz()jrN8mpS{H4HqF#cF|ahJeP3;d42 z{}CAfw+^KpAaJU{X9;|+z>NZL5%?N`_X>Q!z>f<2w7@S5{GP!75cq3>ofx03vh#Db z7ETg4Ti~+=o-XhLfrA2f2)t3?-2&er@ZADGEAX2Fzbo)x1pZ9me+ult#N8@aKY<4c zJW^o3PTt}#7r0X3^95cc@TCH86Zm?8Zxi@_fu9%nHGzLGa2)1DmTp4@P7^p!;8KC7 z2|QQefWS)yzC_^51pbl0Hwk=~z>f<2roitD{67MJC2${1l&vz35qP4&RRRYDZWDO5 zz?TcWTi{y+zE9vM1U@S8n*x6(u#SnTrE_0_2Mf#(&RaZr0+$IqL*VlT=7*`Rw95ou zFYq>juNU|pfqyG7KkaMDv|;XS;l2V75;#R*ufXF3K1bk-1l}m{4FcaG@Ph&$7WhSh zcVJ#`>3M^|KNa{Pfu9!mcLIMT@IM8P#2nv}A1`o@z~cm-BJdo60|KuQc%#5O1@0Dj zzrYU*{H(yg7WiF(|0?jm1a{(P$tqV+;57nYBk)}UzbNn<0{=naj|Kjhz>x{zeB%U8 z6F5)cQh}!lJXhd=z)J<*B=A0g4+{LG!0!nBzQA^@A6T}E7C1xT9D!#DJWJpffiD(# zlfXL#zER+x3VcA|qXK^*usu=eEO3gznF3b`JVW560(S{~jle$^_#uHG7x*cG`I%hH zp1&9P-val+4ZOt@FL0*71p?Ozyj2^f`vQL=@V^C)A0qS-xLDvSf%&Nw zOaGMu?-BSBfnO2$p8_Z1?S__|0)fvLc&We}1>P?3Edn19_yvLA7x;65Ps4hxr9+Ou zV+B4};3Wbt6L_n@-2y)@@EZbuD)4F8zOi&j6?nYBeD$lvQz!6df$tRf1%dw|aI7aR zXQaU80xuBwB7t`c{E)zJ3H&dC2PB2_8ZGd2ffot9PT)NPKPd1o1-2)LhtPhXg(<@EZdELEujW{*S=XBf~lm5I9NTEP;yzE*JP*fiDoaLEuh-*9v@v zz`F(hiNN;=d{E%$1b#)}cLn~dz|NF#dG8eX&jNob@R?_Z`Evz6Ti~ezpC@pgz%2sv zGo)5K*(C5zfe#4$3xQt~SjVPOMuK2zXafzK9rw!pOlw+Osm;2Q+KS>VG09})Onf&VD*-1M-{0fE~D zUM=tefu9ukmjb^n@P`6_C2&keINv0J#|m5~uwUSS!0QCwEO58Lw+Q^0z)uPMuE2j3 z*pV65vyZ^Z0;dXGBJf0kFBG_5;FSWe6ZkrTy9Itg;O7K>N#G9z{;R-IS>dvrCh$ms zGXx$laD~7%0xuMJwZNAOyj$QK1-?( zI|P1O;I{>SU*M>munw^TX9(;Qc$UBy3VfNsR}x2P>evBn?JwUZ=y#fQJGdSoJ=WlV zSnxb%@;DLoOF{p&p#Pq9Gwojl&nG623uz;~VV*w3rfz+KsT+At7d#$;&lLQ50v7=@ zExMvMh4j7vIA#f+xq@ej;JK6->n1#Q3A~3m(x7((TYKvd3;JUwopyUg(BB~LZ=`*X z*tE$f#8C$Q@4(icyCWBLQwJBZ$=_elhX{JIpl1qt4zVde518_)+gXCYT<}j3^z(_$ zvprvBRn&ozSQX41`a{Y>!OYw}=PtQ{0Q&j|dg;D6KP zp9ubs1<#j)=PQ$^7Cfi@IOe*#*gC>!T-46KSsKl*XzWrARNbu-3I#&KEoj1W&!-X%alk1inP@Zx#3|VCq&6 z`PT{lp9r4YO`afl9wFWA`%ep==LFAh1kWD?&!@z6ZaDr!Y}Q5J{4hO-IL6?~1Gb)H znLxT}|Ea{Lt*Qilfxu0~rktg~l*9JWC3rRnp3No?t9uXWX1(7c`0pk*^L3<5NBRkj<(3c~xAh^MMr^hd6gNa?AF$+92s};T^95cYa0{_HUbG8*k-)12zKYoN zKRX4!PT(5^zD?je1-?(<0|GxM@KJ$(E%56Ce<<)@1^&Ch{}fm~Uu5bZrH9L+o;5P* zeE!xdqk7iJq^AnHdhW=i=L&k6z!L@L$6hU&a|K=?aJ|6I0=EggLf}gT=67K&`8x%^ zPT(5^=I3H9{`&=fMBv8-=2vAc{#OKkOW=0|=C@@n{(lKMpO!{zCj9~%wxWwtLL3edV`=Z7kH(>>jmB<@OFW(5tv_~we-17 z-~$3bBJg2>pAq<|z%L8@j==8;{AYpxCh$K5{!(DPiaw<0X#%^6O`pS$*ji;7DX>rA zLV@{ZTZ?~+!2Fu6MZZws0I``DzaMM){AB`PBJf&)w+eif!0OpEbL_ZI(E06HOa9#g z9}xHvf%#ooi~mJ|UlaH@0{>ayzX{B*&{}e01Xj^2fHtD8)e59KgFeG1%S>_nQsfIOPaH?TprH?6} z`dE2+1g1U~Jyl@pW6=u*9xHH(z!L5TK6nMG7D+OL7 z@CJdm5u5jhR|~w0*tFpufxC&#I=Wfl+lWnj-YM|i#AaFU7x=fx)5^CR`B-_~LTt*P ziqMkT#|do8`2cDAn>v4NVl-Lpa}$GA`;UoTz;?(aKbtE)f}t?mX+IMW03KlC(}4$@ z7~7dzl8HITNjI?vIN!u6z-1=R1fFc-QNUA8jN5W;0Wp3&7MYkjx0;xyTW(^`t=5>B zQ_#&Ork*=ZjBPgUIuj=W-(cbqz;_dyHvGAXnb%Y2YjE2OMriF;xgdJO*|R+X%o|i z&zqPweA&cRz;BwEHau=(+U+9~(|>$n;vn!>CSC+=L#LswXu|=-W?vg@V%jaq#B4uj znwV`S%fz%#u8D^L7n_*vXOf9&w`nG(t!A1S%b?m^6K4b0o7e~3Wa6`cSD3g2c(sXX zt4mE>4!p(0lYn{X>^L|;)^sY2gY~Mjv*Tb}*LgAzi=XYl;#WK-Kl_-)PhBlPHdf%t z0<%6Wo&^Fo3cOt44FYcySo-1HNJoF;aX)?*enQ|E1b&?u_08iw{4D&j!2cH5Ddxa# zfjt6e5}W<2P~ZsytN$`seNfOB3EUy@8i6ktc$dI83#{%7O!kA8@_#Ee)8c_V-+kA2^gw+vY7$9C?<&pIr5 zOF@wGx*?DKgYqyGhvZ!kEajb#YxYy?u;lFmLCSkel$Xt#aV+n1_(^&7xRwXwc)Wxk zG0Vo|WPGn6j{1BX-|xV4V!rhM)M+TSm6u~KmuC-U*2KOipQ1&;TS?|TTDZ#;gCqg}S2Adh{l0(9%J zRZ?m|z`2OdFd`m7hY{PsL zO?fPb`hc29Kf#W5`GPP3V$?xjMA;?ArM7${`sE0t9D_h(9OVrFpOuEJItI(rMMtvY zl;0wQc_fa<2e2*WL9_U{jv@2ibBCs7qY_yT&ONPs3s1Ls4olwd6XflJJn~T<=Wmw0 zIAAp4(DB~InD6!?k8%ZByL^?VtpS1eOIEvz1?G@0<+;{k-fk&{I1BRC0j)I)1EX3- zdwAsd3JUUbvh#iU9#39&4k+GiMb8G!hxj~SVWFZd=(DO|xF$q=YyUKo&a|n zP=aGHt+%yDk2n77-J#+%?R7Jh!56qVS-i_E0M}4^JC=h^A9k|zG7aZOZ2R=B-zL{e z*Bf7Nd3^?%-{-KQA=vTjP1ecekl%$L)1K;(GJDhiRB69!+}FJM?&aYBP-29B7Pi7( zk|K}}ruq!zw+P*b;=*PRfDbW$n17J)&92>Lw{lwRpU|mv5 zYQL1ih+yIw6Ybh&ThN&}C7D5-5%kHj5B)f+50VjJt)*03`Q?;*4|gZ7)wFk<8l%4b zrR%5oWVH3#_0f2F;OLMC;VVb*UNwA1&Qo0MG2V7Is~w*@!^`#H9q}FnT(z~24mQ*U zI$B0g2(&NhXlWf?KC?2{Yo5Pro_v8NzZ4j#$9F6{oA3sHd~swHzYT5VKd#u5?MX?& zYwM`ZSkH969i^Q*SQPn!!vBAIg=|4p@Ig-$9J$N9@R=LW*y0`}e)!Wf&SSinj&Er6 zj5Oo<`9j(<8}mTEOL8J!!LO|8Nhn(EHG)B(d$-z zvE}$f$JTYPI`EKw(0R`KV~5>`yDy16P180#8VmN!C6as1&82I$`99tq_scuF@qgmz zlJ0HWw{3F=)9hQ05B+%X<^zRC*tNC%8f{(oB?S+u4EL2t5jzgMRg@C`FBy})p)@<& z_i=8V7GI)G*!#}rxXX6m7VSEVmuKx=`LFD=va`p;W>4@`L|^7DoLQt7CXcyo-!D7| z^~2qcwaSNFzSw0i^3s#IY^IOdd~8SeC7XV(H0gdz=6CnzxLwKDK|;wvdnRWha6*?~ z=5lUP02aHlrmw8RfHHb4LF=j%^)upwE-77!m|1`9!?n@>;@J+LnRF{^l@qN5G?ntSY zSfV|;cfqXgBN47*UR<$v&8F-%m&dNz>e&);tJ@hd&_Rj9O>o#t7 zZqYXzAHjvTA3{A|DNpljX>uB^4HO5W<@?SICYU~SbI zg~#U2oEx$@+E|f(Tk=6YRH%zWb+=jH;$@*wrf@qvq4sm*Qj^nfV(mK)cYBPyUP$jz zpH+w5WoX9tt4it75!hBsd>>DUtK8hZ4l{5^$(oYwB_-~4Pkr@Zsxr#nA<`)O4o^L3 zH}XgsVcVFcdG>j-@AJeSGBciiS@eG0h@TucX;3^&V0W2qa&{l5%l*s9!v&+|)O!mA`AGAjoM{LwJSNufG z9__Pto-ya$!U$Cfwr7@uQnYr?%X7CcI#gSlTKI{#G|ihFcloCU*Yq#zKf)X5E^zmC z*|A~mvQvhgGU6|v=}nHE^KMZ@;qgW9PL7;(Ulco9o?h&jbF8d;)p_^p7dY14r7t>k z*|n|&mt((U+bugE`sA{$YbNfzb%Sl=EN$}33GM-9ho>@A?cP$|6az`STgMB|%Zrku zY-5twb$@+tl55l8h;>ogfn7zLU%vdve&^N$R=GY}e1QY`m34o;=#xnaw)3tnrO}Jl z?mJv^?;(%tP9rzAhGH9PM}y-_u8BSGKHJ2nzD~kz;>YTw?(=(MsF$znZ8dJR9G7!l zP3(SK_T3#v9hI+mjvp%dpKurIvkqDhaM`c7ueoOD712AMdVE{n&Q12AB_+P(B=@BL zwu#Bw{>Xa|6}CQWb~|e0jT=&yqjFDTVpIYCj+?Y*HauV4;?#j-#2~c-5W~pR<69YM}OLHI~r-q z2^q~8@`EFyQ05qx*(xo|?(M$BRSqp(k&};2%C${=c#}^q-Iy`&+w%YC2NfK zH!@9)X_f~F&rkM8p?#TUs?u#^@?vt)((m8LF3cawm48Spxhd}UWE83D40JNroE?W! zSAI58*D9i8Hc#0-d(qdZlW+FO!nHyBlp?RoelBL+k!6Qs@dB9JlJB?)8CnfdH0b^M zL5IurwmC(>)Ndu)`ZHW#^FHY*c;M;CD6R05a1)7-MEqLVzHn`kw{Uw=8M@|Elj0K! zd{OipgD_^Yt45~SPdDZOhN)R33bu-e`P61_%x$iLD}QtABf2Yk-H}*h%-H#(K2fP< zX?8Lu(V46J`_0~Dm+%RQ=zIOwA@ zpZ~;=GrNz&Tk0$;joy=oiAljV@nvxiZ~qYm?tU&i?b>5rQfD=2+-Ter)b(28od;cq zpL+a>UF)}P>)25f`=gkI%*0J@!^iKHMdxjZZR5GxWmoLzUbX4xw#Z7Y`zIaVQmw31 z--j95r(Vp+#)oHQxtNjFeeD`9W@H9wPXy*;5!SrLYs|;&s5tbOu+pONVM(26E;SwxtGJ5dxcYfG-mLG^L)oquH?RJ)qNo~K8gD5rw@6LB)?wv!SOGS zVX*f0A65ZpvRBiLv@ZK4oKwKlVtkl55?*0{1a8NS$X+KZSC?k1oA3p@yLUxv&XR3w zwy#;^4i=skk{QVj%@>Y@ues(NOf4`5@K{6kThAi?UOo1(9(PRdfBcZS_SvTQkLiLB z)%=Ap>XONT>hZl%LnwH?ohL@9Y!H*<%}1P}J}%|AJ}&q+JM=WcNs8X9 zEkoaq3E+d1C$Tp_WXV;+)R5p5@+v!qNMpuywqoHhpuVaRTKEhZ&M23%zhSoTQ33dh zjVUM1qdu4RUt)jbb7x#tE^V%#i8V+|%aho#s||In49SnF;oB;iM$;jQE3lbn>G;W> zbnAjv#)Yt7ul1;8tJXIGYrCn2napfNa#HvyGTCNfUX`#EOSD+Tw+dk>gL>wi_-h<^ z_xnn2$hmQC9YFvG_g4CPdeF(!8@=fybk2(n{_Gxd7Ki9Pwai0!7n2_!<0_J^1&+W(K_{|63vc1wHuH z-gGZ^R?mL)Lg!j}Z}!X!(R-Fx?N#?8hf5^A$ypSl_beBmg)#Vh+KvA^G3Y(*cJL(p zFNWxq+I}<|2d;6}|A~rptQd}mWT2VHpsFa_G(5T!6_-ad_G-YCtt9wutv~LCGQ|fvwnXi)v)5Az0Lm8n_%3ha-X?D6*xHGUzh$IHJ}w zRev<^sG)mEaYn2~p0+bdIpb%F616@P6u#LoDv2YkZ6uzyj!Nd!Ft&>+Yh(rC(}Mt0 z<`Z5W2bjjbVJpSc6H)1_33uTXm9?Gl<}(3D-9$JI-7zYM`q_@d4pCkzW{XS2b6swg z8(%Bv9H4Uhw-a#C17x@<1#s{age54Z)1!2F57pvKQaW6k1DNtW8SY93Jo8n;*CPNk zm1fO&uEm+9G&_g6dEX_&yRfS>_anlM%%V`~+l6PfoJC4sK85TY_c`XRPsVaU5^@f`W1Bn3h!LRIPWzSiaL|3-+mf1zMb%nM8dzq4$(W6+^1s!U!`2T)A1r$BJP2%wkD|7 zC-Gu1N8;;Hcx2*k@I}RB4+kYGCTE5Uyo`^E$-PwtdB0LY{-0D(@U;pG`8ZQl%$Oo| zbyh$HW4EiI_@D~T&QL5Rr79@n^KDTvZU2zg5BH&s0#+My0POPNeld?CPILLITQzc>hR;+gfB|48qMhz|CHE`flgOO{iLP-=QBQ}#^d5d6 z;umwcce%RO_os-CI<0Cp8bs7-vszU!|56p4eLoH!R$isH`f`B?x*+j zmm#CrGjW1izeQp6es!}*8f}o4q2cQN7V@E}ShC_-{!gIP>Df`S%Mynmuh_21D!6#H z3f5k&f_1m6VEtn%*zhYAZ2Y$hwj{ufM#XN;P{EbuD!9t8f^Az>u;UID?D~ZYu6soV zKjs_9qGI<%(oe)*uiQoK4HMK=_goe1U5}vuR;&!h@3; zihi#RAU$rzSt!Xw{9>+0vIG@#`nBkjapyib5)Y;$#&5-Hr&mMyxT>`yG_4K9<)Mf^ zm%zGl)sMo7P{LJ+xQ3B8L8g|dGMcCV1eBkKk{HzU^+!N?#-b+N9!}ubUj_NyP}E`Q zZ_29EY5#wRqV8g zxVW9W!TAWa`&lSP>&vfxU_ctf&~`2QRsY92(DR0j9fiJf6pa0@L$}o9$49vr*x+%Z z+%#lQ3ds*RS=kgETj{TaxYr1f`(lxSp1L*mb|8dmQPgBI>1BDHlGUG zXR4rMxeAtDp@Ob`Dp1uG7#VAZcwu=)cPtg$6g%DQ+JtWQ(H#%U_pG)D!Sn-~lz z*`$K41JF{U23)a2U0r#r3a)xo1>1h3g6)4-!H#~(nPy_y85w96Pemsl(vP8E4jVTb#NR8d zdn&VW@t$$fY8!Tej>|t7m&1Gzk@&uGk@PB5NPI_Uw)(LDpx-3^QU6mkF8aQN^RP%v zkrF>J6CQ;oiGMPphy9foADS@_@Z!&A%$L0Q$c#C}i@%sLZ}8%;X3Skw@o#3#B+S1O zKQ=CsAC17p5?dbh)Q10v7mc>L(B_Hg5r47a>N8!x3O?vM{9-18DS@hLBeT)}6C-R1 zxX|xH+`~QNQ}{K|#D2Dd{&+&4JSj~z%eBM=+eet_D8k5}7BsHYs?8j`%hOhh^Y9ObY$(-F-(^fZnODVnDA~Xfx9qOtd z=ye8t&91Ljf!?UD`e*w6L4^Waq8hcnG;REIu!=tL{9Fv*Sp(7h@F%2OP>z91^)FEj z-gd@ZoCaV}+x1vb23ypGwTv2d2U_sJ75bSL*>LJw-`5}^eh-A|gEH$7Il3FIYETg; zIeOYg7?TWY8gq=dIPq7ZWk8q5!J6eq!wBoL5v0p0{vN5z9#C$zs0jz8F85hvOBd!J zUymAxE`J05hAw1Ky0E^qenHMm2A`R|Arj#bkHgt79iZRK6F|4MVkXn?SDTPwPB-el z->)M)NQ@Z1eLsP8Ev-MwO5_b-=;pA68BiPiGGuHH%b0=Wri?$qrB))QgEB}rWDrRi z{m^mses|qZ8T`{{zk4{Lvi%lj?ss2(w8&Y@{S^5}4$!IDukZ`$WT=?C9dnMz4{i6r z_DyQXS7|mAM<2TS+*|sDa((>dx%Qg$5)8;N1r7XL=E~}!X$?!~4q^0%wx?l=ftZOa zQ!u(`d6Z<8N+Cn3%1osc$<>_1(-hw=sjm@L-tW1qp;H?({d9z3|AcdkQQExEp`yMh zjz+kd(SJhs;6>V$bo}4oe5+QJk$9=)jbn-rZES6?ezz2_p)&M;s}xS8`u05X|BjBS zzsO9-F~J>ZDyLE^fvr<3NX0C+?~Ex(ftv~bH>B_(xW@Q$epbK_YTwt;lnXp?MuXFq z8eHt9ML)#=HYC-t!61DO(wG7$aMpdOuc7bT>3PQbbF`r!+4qCYORet~b*2&Qx~&$& zNU?*rSj7(B5MlLTBLm%;3FG%=J%aRzhe5>QDD7L}Zu*-c98lFLqE%z_iJUO3G2n@9g zVHu_KZAD5KWb{ci{w3tetPZ6=x{VHtZ8AI%HPp|=> zMI7snK$UyO61&~}qKT)NIMF@75AZnRA#Q%%#B(;WN1M0|nK^aOu3LUw}y!WSHjMfi`uyXJ!;685XN1)Z7~= zViq%XxEI6lp4q2??u1Q&&l>@}8MdLMvZ1)(&lFkg7>1n4AaPOj_ zItWqgEL5kG4>_#riU*vU_OYi;|1mO2eg<5gWjYzOCSSocm#H+F$*a(3JXffT?Br))P|uYrA7ApeTwH9^ zvyi4R`2}jdUC+hE*yIgp{GJ_(tt9yn1ze*~K+J?>)_`ZXPP0!={wo@==Q^Esotj)g z4X)R(gl?}Ve-7(-ZcsLOFZn^*;6}X?0zOEtW<&2*qCbKyXF-tDg(_R*x$k+DzTA&O z-LI@(j)|4$f#oo%qa1TE&x3?ccLdcrPz~&IU(Y-rBJNx6uMKLRpQl4!th)-{!1FNq z6W#oKyyqaRX^49*Ge5*u<#EsV;r!&^kmm?@JjNBz(`P{SRQH?kkDeoCz?trm$-vK@ z51d`@@2u54FHpV@7+M~smScgT=8Md$#C-~`TjY#_n(@u5| zAkXXMuXOv+-aK!74bxY~)zG!%bXI!3&Kh+j@5R{U38)KK^6l`=o}jvLC*R5Tuu!ER zk{ld?i$yB$5y=}^vfC^ozJ0K7($M8FCD#-a zRO8}F^V!j$l00meTxK)`_?|!wB&CzcMMtC68teneo>>cb_*jpa1d_D=2VtP(a^7Y* zuSeI{hZn@4&ZD1#b%u{QgjNzA3wsVfOTn&Oz_WRq68$5zrr{-|rrnJ0v>dXus1cdG zb&491#p!l@3LLFIV$3{L<+Oe<@Q7l@>eCKDj}d22O(W*pm`0RTDSQT+@rcq36plcR zjwq`mPRxY-5i|6q(5nl-mHGotAwltmwn__ISiOr{vM!CdYfvGf<{2~4QZBoDQL1L19Fd^aoy zD|VxXda)vBn3ff@~2i* z4=Wa76zW2Z9s}JH@Qe8=5++;)l4ZqZ!0X8}3eiO&mLDq?!-}Ozrj&CLT|*XXmaqgY zJ*@bW%6n+Og=lFh)2SV| z2TWokiIr4=n*}Cu!$=UTIFNJeAe^c48OCWQBD8bs86J{;Sxr z0aWaczKvS;eMFNlq7-gqoXA_1lZxog+}tq6c1jSXnfWPo-ooTna}ois;?9S<&4xdQ zgH73{mSf=a3E>=&fHK@ z(VDLga#NbA> zHZ+E`x2ZX|EQ}g6M$}j)e2$ecz=IeXM|2ETRv%Z4(|$_qBadpZ>SRPehT%2smsEHr zqe(P+14){10{ThXuZf#N(L_+a9YJ5EzmHabl`ZZHi%IjXM7^XPX3Bjb;>?e;L41-# z-xR{9Sm?uyC(x>vpaf~Z`4tI935U^i?=Zm!VdBr=Q_|igk=rieB574>Vd%AZQdRM) z_)W^RJGmcY6isF08xNP6wx0sHMH7xO+=gn@GlxQTD2fm2SzaQDY> z7!+LR7NtlsZMZ=2B+^=iQt(?9o{AnPe}fI1bvl^cE(Sk4A*c=hC(toX7BqOd~y0- zYRCOAX|{`5Gy53BEio0N`S``M^p}`1H^>a-luSB17>74S>8dqy=ghFR8P$}7sGBH{ zyJ-mohJ}1ru!3HuQ0^^-Et>EQglfJnMjvN1H{QMx{RgV_D@Joi>I9Wc5ghT--y;uq z>%wZ8(RVTW6-IM2%ZN7e=89hW`;6hno{Zu5Wzwg!?A+@!T#{;ZsxEymW2jG`%ht+0 zK(n=~;xr~AWK4j>Aa36&36apQ0WVqgxirynCANu6P)x0=FQE?aNg#a-v#dU zB~+T5mSF|V==&oO-N@A3%=|{`epJ7jIX=K>dXNN#NV2*G8<6i11+|m>3OUu_%9G|h z3jdwHoWuR!LNP=r9`p76n(-I$`*hqhHBzd0-)|VRj7;1{70MaW#~FPYy*9U3!wF3v zF_hN2g7XA!yM7~jJEPZ7VQ$9?;UsB3Cp}CF?Z$0d)g3h7Ha4maBy!U>Tu9TH9#+Mr z)R&vN-w=5f(xq==G&gy_5zWoM^v#Us=C2X0TCAZ^Vj`knW!~HrR(YdCuZ4-z|41tL zh%KrY6NB`56vZuLLr*n{@pVy$rHtV&a<~MT(qcGEZ(|HMmSvh~+PQ-<+-sI;K1YvE zU(cAALNQ^L?Y7uLFDL)8{OFi-HL@7tkkTBo`P`-Jes36yh}Zg-m-Uak_gAx_L$_afbWHaEcje#F_4gFS zX9H&tk8<15M=~;rN4xn|?TjqqY_}5wV#X-q9QQ3~?-`?sz3$I)fwPHo-D5B!W#kb1 z+%8mQhL<=`^Ia5)i+rUt?4???F`<|l&mt6z2DRA1?fbIJU{~%`&*6H0iw)$h(Trq| z!#{u#)0ePX5vmoT*uneZY6sU7ip?|kNvj>)qb+t&WU=E_$g5VkTH#^`@BgYDynik> z&)m_hc5pW}5)X)L5rZ%GVd8xmOr=K*#Xs(}d9w;NeO^VO7B_DezK>v=SAlc?d9!l8 znqyuC&hB}$@_m|fUIosH^YHG8r1@u~dmPf{l}?|l;jy~-Aci7OM8RDdSY-4>jM0Aw zu@`tE&Uz7Hi8G>%pU1ku88LnlLU$6}YQ%(ju&d@?jdMgfvCVx)1n|U-zz(hSG|ayu zCY=TT(yi#y5tFI4=H@$eBF6HGJk7lmg^VaZ0_*ASNoe2^<4Cu;kD%2=oK0+Zr!%h- zC9@naq|hQtw?dBd!dwVW)chHgzY{GeV#<#xe?c+`nqKn?98ARYpMs?KOJw09Ds?*w zHx$2^yFpH%_yp!{AT^UTI4{t%z?ExpY6I&~Nf9+8(7~vOJ_Rx7GWJ2{IPk?}#MUMv zLlxVAn3hm%tx8)r3ydoEO2i~Q%KVkbshbdk#DNFVjP)CsNU6pqX~b)NS-EGOC2BEql(LR9Q47REz0A?-5}hqb*31!KLM}hc6Z0(9U8sm@ zF%}_#+-7F=?MSdD(`#Fb*w~|FUvwclNoF1mxn@xf?3|fTJk-513b>GkaJsLA6*G$l z=RwJZ6p@*`nBx0^fQ~^$r)@=F$SlqP#n$i}arq%?{#=mPZE%rhQ@Y4m>}UWe6`U?X~P zg&Wbs(p_-e&|V+VBU;IU#n+YV6O_LZp2abSt;Jz$cpBO`&SFb) z+8X$Vb;nq?sAyXv(>s#&Wk|o087x!wpI_x@uOi+ zk-3Q_Y^R(-{SfIGeH*%!{yL(5ACje%9DM$1h|ZmZp2lnab1O9}gH0&@b|jzUDCtB+ zE-7_@*HNv{LKB?72)>7ZPUttk26100^xWxKR#E7$n1p_z(3=<@K33>3Yej2}1iQy^ zhwWKNX}BDY*l}+^KuvELLgU>>Jsf%iKSt!Z|5=p5sWwSr>w znxkYM|Bpgoy~dk_iwWw&R`Uf-Rjw`^HEYpu923=rvt|{_?U-z)nT=lPs4&trO=d+; zQ5RZl4WFlTOjDl5Q^OwOFx<|nW_o_d48^y)hL8F>&OMA`>RR(;+M!BatZum0hKu7Y zAR3Xf-S25Tm(8%s@C!TLl{Ke;9{PCWLx&x8u(cx#|OM9 zv^8AAi$BpfkF_<_z&ef(c`?q`&k|>F?JN@F^-nQ zu=fgRr*A{dkFB)I326hrMm0K?o&^Dlh1WaUYcX#?+Jo4U9flMuyxH5h5g-c&Q0FS!t=RLqCK_|8d~6MQgE!WdVlK8~6H1h7bj*%@S0$S)I}yFxV$lY5LQBWZufsU{ zeo*fV$M~r9E%oSj`m>-OWsFgr(NM;5=s6UbncDt9~r4JXI5amZceQ30L{d-4fpM_({M#~1A>=4D`9 z8)8;2ao}j==y*QWY@fE>h`yaHERhRJ)!;aKD+DT0hrshfNEC-VZQx3>ywn|K zvhYthocS6>2+uMGdXm8R@-U0f1;21Qe&M2OgZ8j#{^~cFHrO%{bykmPW8|#839*h> zron$tjA;e~1=81J|xB&p6n+VHFs%{>PMF ziZ+(@sUf|gFa{T&QCFvJ$QUTG_|NbL`ceq$Vt!1n4Z0Mktgg2`h~ekeuC-zkl*mER z@rb_Ei?eQ!EXJy|gZ9ADX5HEhAE%dsIw_QH&}{<{bLShV z3VlAPHQ^Xe(X#G24ffJILA}(9Nw^R?nZ>0i$a>O^v%VYgH}~Mt2L2V*n)M1lU%)i_ zqli9iv1l!LrJ$De=8GtnihUC??}TCpu7n5A`rUgl6{|%50x@4P)-XmS{9@L7KSKqn z$yEX@Gz34hxYsc4hxedp`v0TuTj1*|s=fD|orI=o1GEKND3F!{1^P(R^hsO#N@;8< zA&t*nz}qrljr5F z0#z~5^YS=`)>&2M;EJni_^p%Qk*{I823@5swYn;1)#)l9oUVQZ@Wo$V>xvHhj^^c=9y%?1xWpcS+O?~xd zsG2{w6!8*sbsf5dzwlicwdMJOmoTQ0M|mHb_&uyo`In(agm!qvG)p2g)=Xr^OAo|i zg%2^#%cIP2{|nK@is1CPPDtwVm_?mfqB?1WnfF&cMgCB81N7;(kiy6fScVt*S+2fsPo zcji#JSrI(U5tKoi_)o@8}+40V@Kkec{OD@TdQgS8_O3wY5oRafKLJ#ja``3eZkdlX4 z4PJ64_ln6b%~hfQUOc}5FX}@L>E-rF-Z>oMdii=p-Z@-PUc-$KTunsR^U_>6`Y$5U zzqy12dS7G03x5L8E9OeEm@CCJSBCz71DQY9=0ajG%>|`D61a&DFS%3Y@?`(O>){N* zpO0uQ$hTP#?^eF#J?n=fvX2Q>9p#on5AS*V{{U=oW80~t z#`7|_|38eU4icApW!vc>V+YbfCO?LjdTybf;8DE}EO#ox<%KERCt#Wq7CD)bBQ^u-5>8y_tIkFyHEj3SG;@-X6p4fY|AT zp%=*X%gFQ(@HZIRTmK> z5l|yLfkt-QyUp{XF{A;@|66{O`5=}2d`8`5_@C>OyG`1l1EmEM5APsN1 z;@sSD<`b)tbk72Dn}O|>FZm`GFuKi)t&+&^0DZfml+e$`#a5gBrWl3!10MGq3gQ$L zlW$GqLYkR~XS423Q-N>+aCex~0co~-%`(uuUq!ny-+v8H6tc#Opog4CLFfBva)aAz z*kECjHF(NQ;t#Dhnuhdn#hm|$R9Rt>YK2#PFW@xi5&jE+Ml7^V$H7mVZZc(fO>aXx zW)>X%Z7Y(p@4}!JOCzmVM))q%i*bX)KXTTlT{u!q_DU_nVi2d;?kRH(v&1P=fvD1wi8g?KY15PV+0^ z-VNNH=Dz@aSfGN1I6(q*hj{}y*R+_nM%w8$JY}|1YzT&fNYfrNsH~(&FA`cP#M?Qk z{Gkg_FD642)q%D8yz875h+2;-lVaFgrnchT@(C$#{5d5c5)GilL<1Ik#cY8zSDOCk z0sS9%>AVDbFCK^C>bqIUlApwwe*9R@*cI^7lzQt!0IlqjvWgd{D`Y;jIghtvhU?cd0orXG%^l`drT~s&f*pvo2GtER%IIjXt5}C23ht1>o{0$d zXUK`Pu^}Z0*2hw0SB1#a(Cmybut) zo6WD3kb*X~_o@|IAzC~#FX#X(qyum}S!?$USZW8T21~8sePUE&)sl7-NDrERv=ds_ zqXZD~IEt{}JObohh=zqjN#%bGy;cdkObd5KO#c0C-2pQiQTLf4EL^Q{{3Md}OV62u zs9Er_npg@6wdZ^V(b{uxF~={2Ta`^?E`pgRrw4B!0E>@#aX9on|n z@I(P?4Mq4_eMT!uqk`@am5SXdMPeoQfH~xK2YyT7tx;HKjlzOkMcLMiQFsufd(C5@ z%I-)DfP*SH86d&s(FC?nu|=g%ReQx$m_3F& zQ?X7K3qlz#_Tn6XaoO!0qh?&MlMCRYZH9rqqZYSo%)NUbux z-f*oKOU(jiC6Z|u?AZ#^Yw&2h;C4Q{F1Qk~bitnLOWEk`g13QIyWlf`b{j{N*#%pW zGHl#q>4GSmq__b&soW3dh%q*#8&S?4YPV%B&je|n93air8EH^^$>$eAnwJJhlgvo7 z9cid8g-DEu4Y4!>YaR|FvT%tOI%*!oY*PHv#20(TY{+7s9PBgP`HUsRW=ueGb9fEn zJ_H{&H2&a)-iy-0RY zCX4769;Uut>;P8drI$=?y#N#h!wG~R@`%t@m&M=GCztYqe-@d3kj z|I>0>K^c0-8SebX4p=KVUM3MgL_W8fyFhsb{030Vw0E-Mpm54iH|?crZ-$RevD4o9 zh|*eY0Cd1GGIQG71$<@=o(4^53XWa_*kDfj*&BADVA9_XEU^6zfsDR~q#C?jaJSN| zLk*E~A5wCx{*+B=N^=ta&XT-77|C9fhlUTjbT$X?0kaD%Wri9IuQ4nVX#=Sdj#=&AP$;$UyN&MsKy9*@EV3uZNGUM$R)!FJp!m% zp!)#bAP{$*J^%=*x%spX(0Hc4AvQx&zY63Jg_7G$XQ4Wv{3XC0fMlMwH?~SBxwEvN z@edgGxSw6lA{tiWPATF;h(jhT@ZK(>FM~(Kmq4}Oyba_(B6`31C7>S*^dmq#K-+I# z1vEh*w)7G}?>DoM*{fjjBz%7DbZ~jl^soS?4ZpjEdLy6*0NrlBjzPmw7mV;9G(&~- z&p<2bZvp)Qqz4Qc-f2!l{Ajecd!B%2p61YL=064W5`2E$LqX;rkj%}h4;W@`)@a6# zGRXKr!;JSEX1Z1~A)^mUrUwk+I}I~zw;Ap=GQ;oC&S5S=r&#YFSW+Op=fJ_8>^>8q zlf2u)?&BZWzmqh!gP}LEB0s^en8(A?8apN9AxNg(|NSx)eiqpK46j+m9+tgYUfb32 zpaP^*!6SBG?2&2~pX0%=5v`VV^hq2K98uv6ZZfSRm(GL;34n)B6t8O2x z!e+i=v(o$+v1g+dsx@|lwnVIN2pOA`yRu) z2(ed)eG}dsJ_Ob~YNM9tXQwguLaXyVJU*mW=M@^Aq3HQLWnTRX zuO*mOJI1jsU*T$P3F3Cke_{R}^7@c&UA)E^3_2fD!}J}Fvi^blcj~nIyR?dY{r!D9 zkNO46_9;AHZ%S!-f63H8!t-Iny<==KsY!Taa}67%9Jv2PEG)uAl>N6rzRzIQ_A4gi z@#b#Rjo30N&Kpy}@YkCEuASGL-f?)AlhkTZ9>NDwwOPLbE|4d*e3xpuG_Q;jd(B}G zIq}<3#L}&c^&k#>I8)_lF%?w-pEzra@Ja{)!A6jgyG@**@`n87bRg_-%`uGp>ol>` zE&sqX(#Ek~=I|*H@zUQGC0a-9Uh`#OsauX25181Z`wXv$#6|$rb)PxhkAw^AqFT^B zl4FOc!3e`t+$j__7-6UfrtW^#f)Vls0Jn__c0zTEOsJ@wd(Bvo zQ6wlD#3AYmaa7~+h~i+`dHo{Bchb?w7!Azf^(gnI_0h5)K-q7T`R?hYLcCg>+hxLW z%P0zG0b;Ue!%4*4X3*N+M)>M_YrYOiMfwqWz;Ji+VUzM=?~|GBBQkL%HKb3Z8mZ5M zR*e+j-`Z^)fi+UAbkh1`#AO<(tHI=Wj1={J4N5d~9i=YQ))%dm@5gw4AtuYQZ%FBf zoWjb;2JTCO*aE}@rW=XRTV?C{utZ#k2(8w0u3C@SYCVJ~t=1O-?KX}evs&LlTxPXi zI^JqMU~WReo>&c2aQ+a~;c3k4Si@}?4q_jd2X-=T)lW#P7Q+_lqKcDH>K9VIh^pzL zY7(M#QMDY5e8$%qL$gP0=>BD*lmKVY6g)Dvs1hP*5qG67}5tN{_Wrmss)*8+W?9wz*U z&|NQx`=Ac7-x}U`cov9$=`q}>{t0~S+h!LmoXX<6h*tF~9xd|+5M&PPFj^s`BlKls5XERrv=H^`M+r>^3gamdT!1@YE)=OuNA3 zc*+C=&O&hpF$V>s%Gn{pO$WFjIb==&5oZurC=n(A_wVHJ0yNEhr=l~{@I--^nD4TT zb%uu4l_AJ2g+66jAnRyyc9icRYC1Z~-R2Eycub~p7`g5?UoXM4A9Lg9ZRUSKiYb6M z4A#hMMuE)neg_flHC+2=3`cv-?~o!K24r+~qoRM{VIAO5b(Ui?Qnv%LX71!5-!Mw% znj@ruCyb#2@lw1k$Z1lLQlPDho-K5XfzaML7yPB=N5)RYV4@ni3el>OX+XP;Bg)iD z`KUt1iB&b29ghZJ3W*d{fQym0DuA79=#rHRu-DuQA~q%of`$}2nN3nq_&84~nq?f} z*Wu0K?ci8(WpsFa4t3cv96zyfG^-0SNa`-rt4Q!6HL~aPJ`b8%XJr$&BBl{^?>9^4 z;yN&%_|Jo5=davA0r4pQX2gEj?3kmm%h<3_JZPT9^P}bo{O0dB4A?*+XE74C zFALcQMClCW2V#6~!t)cR7-SnTpMTOU1SFL_Pz`9G;Z^6@FC;e_TywYrIc>o-9K6T~xaa$qSYtEYe1Jy9_CiAwG6s zgB>|euoL9x?DTPn;gXY|5!Br*7y%FSW-m6(e0LLT#oeq|5UsmeKNX0(Swqhvj=NbG z0YYl-W?^OIkpoiap)%M?0&<~HayP4$l!r_SemU;V2MJ`4CD3zrMYsWvSxX?dsgh*M zRY=JOt<#it5xNQ3jG+|*=0)__1=5h$BHA3@gCuoLQ2}3v(x~O{1BLF=H-kcV>FsoT za?B0|s>|h~%b!Hbei;i`q1TX0Y;tUUBP-0o;48rDV8H0#AbP;T;KZ}tU_i1V{$PW_ zT+kgbC5R6OgIRdc!GQ0IiaRJrT%euJBJD=XQGbaD~qomF!N>9`5vP!n5x5?BU0C%&MKT)3b+L zE8JLSzxxB&*o~dNIx&0_8#}TbdN;e-`@rLR^HUth#qQ*F;2+EL%di%)gX9w%&-jHW z0XoFzYCNl6mZIdUm)GkWqf{jElFdwgg^$$tFqT)ru~GB_CJ0Xfs)CO_ z`p*e!DffSWfN0(S9exfW?*CpS5chvu1>*iMKbD|du%7`3&h4=O3og<9-+vKmZo<9= zNVj1fb)a7RMZJ`i8dinD;(#GT-T&oh4BRufV{gGToo498x&P}Z zgN&p5zmG~LWaRdL39B}L*=D%c{D%2rn4>b`UDTv zUq^DgPxk`l|6lU_Had6gOMD)EF6$DT$E-2c0*BaFk}VYECBS{aOvA51UCw7%ce~+z zO-Ctpc^QZY&6n`I-#mxkZ#;XgWU*Hk(9D97QTE6k>m?Zr=V)5H6*w8#tHH6_VS8A+L%?#aaf4!E zcj_Q&Fpb!q*pLU9vGyON;U+xG_F+xq42<2zcQW7?jJVwRvQh_-3KvmZ}Q|#+v%hupuQ32j(_@Y;g?TF8@!JEU?K%ciI zYRv9Md*5t$4;h4va@VGwL4vytFKflR!ZTg5N!_w>aq)SrendL~r_=1@N`)@*);BJDRklj6I-=prv5Vsu-u1Z|Vd>dxo%Xd(zW*`Z7@ zzLWYjPKRB2T^J z%8MDMMrSo&M*Mx|mElN`@6!P7hd>`Nzd_>vyo&7tNf$`OrzK)Y9{$q_BJ}RU5TAD! zbawy-Np}Z^_!S_~-2whP0^J?>1)$xs7QG0Bc6VT{?%e$aahdx=SAgbtb_Z@Vw;%@nnRr?JI8$5%9sS^z3YFJdWbry$|h!67+hyb(SAZl%F43-2hS4JJ{Nd(G$Zdl>PG ztP}C>l^QV>u))3%j1C$)ZR!72`GL^{WpqOZqluPL39yzCNI74;(ZsIKlc{a&YEKRf zy^k7x3jCv{S$=!*`xK_e{6*@g%qIcfGz_i#G4pL0$g?Klo&((0r_CF9{3VulcqM%2 z$IU~9_zn`3q#OT;nWxa>uqS1nGA{w-F0iTiceKb9xqZu4&@T|k+lsRGuHos@)C)e( zC{BCA4|C|(IVw&(0lOa;b2h_OuO{a!N%|IX#XTr@=~6~>{M2Z^^<$%d1_L!tK2^el zJ^kE{WJCS*Dt2%|q?UMhf0;K`v2}3-BqX7;X zY5d}%A{SFQJYaaqn7L!Hw3=cr8KZf07FUg&JEnOgITYo4RU<19KWwV!4`J@ZO9dEP zgiVz55Q+8YNbpkDSO|;-jxR{!MI~hi(}Xff>B(_qETbT!!h$f>DPb|@j%l)mIF*IK zMtT_6S?mfpIz*NiIpmlS$;yNgr$-|~^chjKqlbx$p$ZfZUipUL@+rr&r1<%KWNps2 z#m}!AdC3?u#DqT^H8vmWU>gv0<*4TPkcPEBC-Mm52|;o4$KaaUe;ksz^OeTu46Kr_Q40*aXxR`-}> zEPCTChhVm<@UtySxR7QJOUeek*s7~E@LZ4uvelIHPDKBswC0D6if^cnG};F`i&^dk zr`bn7EDYu1d5esxlD@Tg9Mqcsc4i3~;&LOXr0Z%2S}Hx3nkIeu(vZh2h;kW>FOs{y zBxQYMCtCpW)Gg@(qVJR*PjR@OsWsn#Tm(K|-MKz~VSBThcX;kbrVM{2YRus>g zB?_+YBrBNuMHW~E%jT_yV23b%jZ_$gUz>+=cZ>xN2k!&~8(N0d)jy*Y(C(0mLB59_(;xy_9kDNXz;LB-Z+oY_HjOy#b3d6!%8+ zp6hXPIQqaMaDKP&qZr0w;Jqoros(wEJ3ou}dqUn|akD(pbZcR630Sh|xAMt~iY2+t zR)zAt-JFRM)tLIz))esz-Ix`7Wm2sJpsEM;9Y_rf_+VCS4#jtdSzk3`E2S${Yq zCmy4bKRfti!k_l*BTxXpxB?wtyUgSAOl4tb;jsiH=c!gbX{E@Scm))mQ*VZy#pL-h z2ZQU=4u(2^+`%Z(C%~Q4H}Y5G{7H*pFD4Flm=3%>lMEdL8E}{7&I#uzv8e!@MgjrZ%s(JM&tAsO8}OP!6^7V z?=4f)uTh>?0stFKAXvW)L5G6)6^B)scPTuWhp_>3?2<)eH!C52#W8jfyzw?NV0zSe zR6hYFWqHMM5xD{0cxxFj_5{q^FFCzzLQqiPyj}3934`n5wI+nPP(uWR8-oY{fx|`y z2x=KPg4zt$ON5|~fg`932)LtvRDvUBK@JoMYRF(Zyauiv%cc7JhAOF>oY!DKMxBw&%TCc*ueQNroVc+6+;%s#gk89Rm^#15ur& z%WRX`LRiCq8w=Vdgqk&iK}!%pNE^R~!ImHbfVeXJUILH)qX?|O0E`vXnlllUD98Xy zL@(wgDN%8x{9i5)`928`?PBm0yzlk4_Y?Sx;u$>e@CXB^4PM7!A-wOUO+Nt=Q%<3R z0fBa4F7*sZ5cA|H6_BQ0jS$+y&i7sgS%gmrSkHioK!9IyE?48#xjd;ab!B7w9m(wg zECYukDN)(EKMfo>F<`V*1)(^X#(1k7ssTVRJnRMoCOg4PYln6`fG`owv`w88v5eyv5+I~W+U+jM^hI16{av?Q%h%3PFJ1Y`Xo-d5+8Bjzr zusK<|fz9QLp5O!|bWTK$PRoNs6aeM$s0RZU?gYFIC|1TvEgbF~_khI7FC=k{IW0;G z<8`zy2Ne7rg0~gSLslxmpc@`U%*P~l4K3GO3X1^F}3&%Plt#4GdS0x8BSC*gGunJoP?%o z1cS05f>4D4}17@rdE~!4b#8m3PDlxSz&r81G^*enl;Lv`~f_|rS8tc@~#j-fmAdPjpr2T$D zztbj1?TQJ+0Lr;wPdTU88rJpfsC=xOp!mM3A@x`d}+T+9`i~A?qU1^X&;+D zXrD;Dw2zHn5aoZCND1$s^%FV=-gp}rsQ4J+vPS#h$t8XjfEKeq!!oLJOat}UB!SUQdJ$*AC_*FOX#9px$2Q*lccU= zz#N02iuGi^0m3l}5RMDq`ePT5;l>6-E1hWcpgo(knTCML*d<`N7;v?&Ljj>(@Q7e= zJ-kK`dJ!HG3|*kKqx);LRWcK;WhT zLaQ@yg{bW(^s+`Ua4Eyt6Ogia!|1aRAXi~|-nP$q{e&EO=0a`~VlYfFa2eG{GOCYe zR3CIEP}`O9>diJK2T5{Zy^Xh;0dtIwofGg(6N9mxEzqstwFvG|kP`$=zm8I3`p7&W zfk#cViUBi2$z4W~v5th#N^H<==Hrnf8Bj7T4BMuzpS5*u8_H=5u$o&?Ez}T5anzap z@IL-$a6f?u;gJu119ui6v^RqicvS=df#ZM(0tWAbR{}!Q(IXJSU^cw(^|kjC&@NrW zfd7d>@C1g$gq{K4PnG#Pfys(zz}u06C&2g0!Jk1fyx<9(q<97+9G(FGk1*&N?1sp z*$#@mLRH6r336=BBCT2q?g9lVtB)wi;Bx}5{vv`G70ZAE zifG1@;H0QkD1f-<@cVms^zA<*$dfE<`7Uz5fI zU_4s@6jwLgdr>n}li&118A#uEGCw3T)R#pf(Fd9RpIF z0E!H$JOd(l0Q z%mReVn>XHQ)gpFgDjv5Bs+Q*K4h8Q*K%*6DR=yy%M^J%=?#Cl3BV!Igc>!1K}!%pXwVtWE1H7AYe5P^ z-_-~PuLltT0yh*8WW>M`gwqhtTI@Jak#U9q!E-O-HU;r3?j-!42k(0a7W5OC43BQl zfTV&aaHrtcF<^FrM<|X=PJstOz!EPDI)4ta=C~HL;uz0_F>iW5LycY| zarn6eo;70!WOyY!#6Tf$Q*ajo)-<9(jNK!sU`{|3#e(_j{X6>!rG#J|1JY^)fWVy% z2+hvmTzGAELK8KD!G%EtfWQp{gp>?eJxxhyq((5H+%y6};7$dElnh40D*>U!8o{74 zhyWliAHPH3^S$lf+;jU04u>zm$zlPX0g5Ze@5S(uK1uu}LDeuQh1Wa@P16Vl(}M^A zfg7~6XMhCNU~ndUW<7miPKJm2RQD5L{h)&km_qOf0~hIL%|I$QLTprI6Si&i=#t5& z2!TxMHv?qKu+xyBLI~sx#u0?G&=N#e3&A?(MuLdw&cP$m5tBqzgrh5L$dLq*GC6{< zOpa;hvg!gPqY!kPgAh}?Z4Q9qNTnRPg=3Kttimtk#9$4)3XsrtjbLzX5CK5kO8hp# zN9xS!^c;9G2LvwBcm_)yp1@^-U(bMyg&v_eG8qpKAcD}#8o}U|AcD|q8o}W8AcBz2m1`LMFo+=ZV|X+!gP#NugzRP_1DRDo z`D^+K>7GLkgWtkyaS8nn9;_JrK8PUnwni}EhJmIa^e2sA@aG_c5E_K680h{%cGvtg zXkfA#ID)VnP_ko$bsdB8@Hnm;*H6GvhrNo_X9{&a11He>enPAlx+nveGF(+VlLHm! z$w-~huG@v+Rs|0s_>6)tAz(v*)-j9p3=Uhf;DKVJQ2vovnop{%tXK&&C@F)4!xMOq z;twHsLP2uUI;;ai9JyTy&(ju$%50-!Ml^Zd36I+qe~;k56%5&OeJAcQ{4!IH zB9S9RT8$0xV8wvB_}=zS{RqV|$$-*#QlhqmA}9Hq@Q_YeoS(p^lLprGPTaRwh;7TJ2`w~I8kp4LKR>m?`rZ~^|0@Yuy> zK*9o;*B)fc6&aFKzY|W>c}2YNLU*Z)`o;Zjmh~Tco-`N55uc@ zBlM_7F!)FiL5RwO6b!gsqA3V{Od}Y4JcuClNsVCesUU*Tvl_vGjiamph@(lF50Bo$ zscfr)y$E(Fcn5-e6lC_~5V1S#S3QD~ixwPRBicgS!CJyRvLKo^XdT>u6T#@D!^y@? zI-C$R*2%%eI!S1(6NZa*;?P(p5f|%ZqOndaE*6CnHxa)V!K1P)3Nwt+>JFDDzx-*j&?p;r*ziUhZn5F>Hhj{C6Kpugh8)@Gc&JuG>=GNf_L`W6B1^xj1DYl*fy@T-V7Wcz{4cS3FL4NJWo$~{&F$AbByQl$tZXpKV`>LQP{ri@Q=Gh z2v@^XpEkmO7~Z+(0MKC5I&<5_xhOs_QeVP{;c0>&is0u1J_yfattkE(JbxPgIrvv1 z_2Bd8;r|Jq`&`aFAHj2;=^VGD-Vgr}JU5}7D@U36oda&$aG%GylK_l>r!Jo3kO=?Q z_@&6B3Z8v%7rb*(eA*!qo&{e5KOUa??cCoQ&pyWf|2g5$O=TGu{qg0)R51O^WtIF4brYXk7mh zKI$lQx=|X)rDK9O+UNf-?cV7W@Awli3Yh;c9*$o_sluD7^{GTMHMOO!DUt4)x+Iah zD&5sRwX(K)TDkq*noe}48YU-F-P6h^C)!)4<{;WSo7#Jt6H}Wmx@c;}lvz`zPi<^V zr@W)H2G7ZD%`KC=dm7u@nx-~&b#!-iCOXrpsrdir@s{?6)aI%D=)qsbDbd&7);QIb zv7@1Bb6aQPf05-eu*#7bOVrxblq*UVpDpY$a2{NO(q69G$G|D4j5!D=!l0S|He7Rs za*W!PQ{Ws#P7S6uCmMTNkD(re%egaCzf#+dMe%b=mV?MGYGP~puPSJULQG9|b^KM_ zQr&H~gF0pPQt9@1Lwjr2l+Cm(?7`g)t%)g3-QBe9?A*yjDwSxCCpvpN;^~IQ_QaIU z8W|8rp3~d96DddFcsDkrkcj-_&54$Vp7wOy(qUTwC1`HzOd~!|U{C3VG9+Sq?$p%_0JR&C9*4avs`E@t6F$wbGQ(HQbY)E${<19juDI&=a{h6r} zTbmNy>9(%Ucz4<+MQ3U1>TGFi1*aj9N}|u^)ZEr3P+!yLhNM94T}=(`34)@PNKlB2 zoeiDMT^(AChIW#m43S4$e8u#n5-Bu6235MJTbZ`>bT+YU4eiVVG*=#Jy$1z^Y$O(;|unV}IA$+o5thb0@TmythE5gCIS5GpQZ47edl(V&s$Huki&rzf{{ z&gV$WMxrJmcae~SDk6ocGia2K_+|_f@%FY93a;7&9Z2@1+IkZfE9#eQLb74lL4pb< zt&UJH0!2pjaORv3WyL1b*NyS>3VqM`G5iY~{wka=a16hBg@ld#`h|G`Y=pj>^d3IE zR)8H4kQewPg@a!>LO6tcV!|OtB0pc?X5ltA#3K%aHcn=3;Z8TcFWd~?=r^Fwh9x~Y;V2jzJ< zPpaxF!^Sj)h4Oo{{8E-_smzHi221E)O~^mlW(hdEiocSiVCE_mD%`PP&>}zO|A}H* zv_%f?9Hd3Gub9G-AoitLrjV_ms(h^!JfHaNBL2H;1(32iod&4Zuu&sDBRlbL@(jxO z^J}egY8l__+cL5XXjyhh{sL#SIOO^yTI1#&18X_j?YE}z#88Z(rXYhNWaBymXtZrn zYE@d+sZZDrx9x=HKwf{8-V4s}cKsO`t!{3Az9Gik!IOFs6TP^W;&qJ(xfb{Zw(v@G zl29`Dc43<@A~;EY^W<0M-M~iiC&;fenc5EQdMduOa2RG&4bX^xltzT2qCohbkS99s zu{=QJ;TaqY)N14LL)VCG3TXErfYbf1(Tg<%hOZH1zO{&#s|kn?P3Qq>5R+qW&RJx1|VD~CVZ!LD|&43sCB zI}FN54EmqLfLSQ>x3;tOP?FoVzB)jxBa-x5F@a99&1U>gQK$=~%%9vTMN}(wn!po8 zIz=SP?o_W}j8^mI?82$2ftt-ce=Dscic%>2^Q@WE-bzsy2xf<5qJy9tK2$N;;-VW; zUPH-R2=NwD)iZvtDE2Vh8QCd}bXe7%jgp6UjUfV$mfs`Tt2>;%fXG-_Q+NvMpEc0$ z^C?kwL>UQCCg~L{xW^0%{GC!FXYRFJs>x*PI;d)b@*%vFJfUf~%47h{b4|s6WDfmS zLxR$T65N_&K#DE*zg%m@mCOAvncP`oHw%HjitM$FdH&Notg=HsXzcHpK}QbuW-&de z+0U-EmMAyxJAFH;87lOlv|K|dAJ_6RS3kdl{Zq;&b2EVon2kWeq{r&YnM{ZBD1Y)) z9n{V(=}^vZ%9w+CJuW(5xKJ&RV4NRHwbE*6R$H*mAhCVNIPT5{?y8!fQniYUj2)Sq6M2+s0)%T^}C< zSS_&|`?VHM(qpB=w8?K?;Tb|rtsW|J>9N{(mv+8^bo-}TD;*u2q_mwVDXov%a5cY4 z=9N)@o$E^}A%lz=@Hm!UORW74zZf9ClrIH~`Oml^<12#EAp;ultQ#h1v7O$qJWemk z&B>QMjsMy4YyhPF+(w(D=BpYI)CiQ%j;EkO`Oh0g`<+!G|2~=$S358$@Q2w}A)i=e z@Y0d=gu=6cA0q9#&1wMiQfng%gy^W6EuSythXOhs$#h=kDvA8F6MQR35Y@Enq>R#r z*$KWEByeKX8E_zw43WCVq9`1_QmP^X&d%T$K?Z&yCJ1OkT3+eF*`&XVka8xpL&QHI z>Hp+&_VR)4R!_d4&u)ncTZVSsAmaw><0OWm8p-a}IcI@w<~K~?IiS({hzawrk(|Zw zWEb)gnRh|-P79zAZoyLEe@S1Ll)S+%a=IHAq#=3<}$ zpQly!Y8V~2uRCr*qh%L&k1X9aT8%Yf?M-=NbkuMZSQD)6sOA`z^kvSAL6EIn$X{1& zne4?lt#BA5%F8eCAKzJsSt&}4i66S>@lO1hk=hwI@%xsH-$2rcyTMS`?`qc72vB_E zq-!_Jgu)ps)H^#-M^4Bu(SG2}| zW~Zddm!7BN$w^`zibd!{CH4gQRd_&U`+=MJKx@B!9h(TM^@KA>%-Of?7PhThlTbF& zcTjs>$xzK)y_r^eg=;+^3V^}P0rbjE6_Tm4cQOim9az^3=b<8Rt&C3WbloBbI9nmF zFJK0mJ?(+2mNO>AYph!r(t7)T|8|)|4m3jjYrdVMXxgYfSDUQ(=nR0B)FqwHm}OD# z1OZ*({uD%@MUP_(GqJTT9mnn*wsF%*FTQT&^0L{BgH7B@Z2#493%6?JH0;DxRAZ~R zth5q4Z`*3q4e3PXiY?{vW#uy}E2p(4(v@4tLP)EyX;)T(z0Rhdc2F)(Hccz9tX{r( z3wHWa-HpksymoAv_Ilkt*w<@pXu8Vl>qvBTboC~@cpQ6s@%BVRDm|kjp7t8ru`4T? z)--gsCM0JPrM;?^s}`=PTB7By$lMXsBF|ceeZv*lHY}Uwphesjt*o5hlI-eCSN4Lv zY^5f=4pM+|Z$mtpX!Tn9+L{wyWzE9c$|ae5o*v7GO~piaym1@$78{ya=pJBap}3Gk zUz3;G+}4tgr`onByvA+mL@j}q?yeLF+MC;Y5n!J@k?c)0mwWM!#uUZr#qom%@jAQG zo0DCAAd0VQXzxjQZLOVMNyM*PS(`4KiHs7h$%ghgB#4Ba>8i#RjisnkFNrHjR(71y znAP2d%Agq_5NbithUGId+i-PTdUID#T8c&5c)BCr(beh2TRLTn8JI*TRVLonG8a3v ziAg0rohg(*(OiOZUpSxb-`UjB?V**M_|q)nY(Z;JD@Tnx7GdjsVRJK&5xkZ}R}0G% zYF~wD0~Jvi0n#5=oS@ zl}Cg;-)K#teR1#-&8WO|AhoO9vV|FD^Z~E7a&f%2YF(w5?CR-kPBcqf$KyEI6qYJW z7IC(0`7i0|=%(bFdeiNRPLC==$>Hn-jT!ImV(X$S#xu9x*(VaMiR4^_^SzEbrht02 z#<}A!E&fjXZHoQ2wmdHFekAp3>TN{1n-f8Y3B>Mob?doF33l}7%#or-^>c1xS6BO_ z5~{=eIdeoy<)}fLCmu9?D+Jihvza)%s2A^S>}he`vrDW~ZMuBgAT3$7WyKblm=#-Q zlvm()+U%M9EyGXw^cgcNW=)$>HXRRT#8i~eu9!VzX8CMlNLM~%+Kk!dvu0G3l7!fb z((>||(@JMf7Xvqo=vigu71O4bPoGvFNV2J`z1?fZgIG}QJl)$o5N+i{svBLesVAAlkq)KC zvn7aMdJ;mGB<tz$84MH(%b?&@gt`nrZ$c8tZe{Si5rRY;+v08|YfO53|STWM8s zPD*t_g5$OO(;E{ogV5mKhU5yE#PnvU4;xwP%Qp9*S%Ji<$0FI~M-pwQI*<_tRa*3S zQn=Y1l-w{44R7cG8#%osx8<-^(=pmak7LWGWjxN1UdlnfLq>g01kh@!78!D6hQSe= z{Rp$4mLznUoc~^|Ohqb@Xr`WZG^V@yn&LW1XhAQ4#dkf|<8z92NOv`B(4qmRR7AG3 zVlYrJ6d0`8_i7VYuk7h)lu@Rsy(`s&sYN*2$+!yImbRowtG%J4vALnt>sZm%&@2il zQ$h+VFau>}9SzB=mZEK7z9DXz7Hn&7fT2=DFH${Pb2Zdf)-1>HD#yt*ejFcL+S=RW zopUoL5t(y}%%}OH8-uH7)Uqu{bBi3UUF0AuvjxsYA*jHv&jVdJl@MbpO~T3Ea{SBq z3|Y(ua$!5HSqHk#(yk=O>dKY1@mcIn@_<<{=7_u!@OPwbGn?CBIFrql+dLgmnlQKB z*3qZ~7n?emOjoqPNK|gAS&mv&uvV3j4`gTU7KRPp*}w>n=>Y#T2s$k>UUyrfDS`P{ zLT9eYo+jMvP#Fv|tHr1o%xarcUAP9&*^D7hTCIsQbzTWLYKzZuBQjKzcDOU%gauC$ zg=tQtzzlQPKC7%9@wQYmSW4IF(J?zz^XX_>=>m2HLgx$=Q`-|Y#`M_30AfeW;HCzb zS*Wev^@uk#HDPcKFPx+sTAAn8mSl&l2a@dZDcj`%u`8gEC~XIt$!lrvYLI#dWvc*& z#v*l98|KzB3Q=PtqZ2xmOuVaW7sZ#>R9054yi~h=IFGYKA5@=HFAgfA>rGs}QOfUh zaX8DZfzSXfm8|Pp>_Cm$wWQl%+f#iFDEeibo+J}3UPq%CfQ-IX8V-Z76`}f}T~=cd z4JIhZFgV!R78`$C0$q_JQ)88cj$&ETQJqX+)5(-O$d!a zwT{Q-R!bXh1oglaqrfufFRNILdx(kVrC?Uo+0r#TPzp%FuJmBqSxMW@or%_lG_SPC zTqt8kmSF&4VQ5v~zWpxpwrV@n|nZ*j}c1yroquD!nF*%4iFB z@eGy&WAcum6M6BjmKIbPEnl^AN#z>bYO-R$5C$zmTVRF)1H<`MRCi{P6*I5goMDWs zmp4`Sq93CI6y?=DU1^M%*c)JKP6gt6+X-{BWTFvm8Q+{}$9ku#wgJ;*3@6+%kac%t z3`7ZFoKoqlJgF|olU%{zLGPA@%}KLy;iQt5hW1nMpfCP>pdWbPVh$6VN6Y&}qn z7+xC@=tVHQNJd|a%%jBYqryqugVH8P4Kue^qDxmQ#PLqB%SvU3OJ}jwwOD5N26m5K z20IfdaVN1(zVYU^R$f+&*UB|Stb^OS8u1veI6djxcA^H=>g@7p)T>rj)uGPZk>P08 zBC`x2Fw!-9&f*Ie+*&%h?dO%1y4@!fMXZY0=8otbF|gP)Fq@N{^h5_iOwnL1uPV-x`hLn6skGV z)XuGviFS>2ftTLgmI^k~ycSMoF^r_q%ow^^tT0nX zWeiStbYtd;vboJL4wBPl297S1fh{YCKmvJH)^K5nHb^C!bQXc#J+H$J0x)2aU00#( zMm3`SPFuZ`bAK*6J-0RYPSkI@*i$WWI43Tz7;Jl~s;v@hDomFuWunBb8JQ3t-4t%A z+!8T`DYpn8*mlm9eWI}629qdsiTMM~=ilkXqk?l7t^VJS(Sme)y-IZ0)iqUhb(Je+ zjF25YX)Vr}d%98Z#8NK7@a~2#y8?ywFkgu7Juj_au>$i@Xrb-|9_QX~uoDj9%W^m{ zMD;7M!7$LQJ>0kx?Vur()wGORDNb>{?uKaUp%S#6mCU$Z$JK^+9 zZ4!DbOpjX@bK&jn$k zy0W}RWqX6dyU~!t0uLvmHU|^1$TlNaQWMFR>U_bRIo!*aJrGPRF#Y7l04#j64Jt0P z%%i`#r0+gW#v25w$y_TmPt{*!sxMez+(Cbr6&KYB{8Jo4c`(FvAm+C-DjH-|B?_e4 zj(@FLgdu?zVuVh0a;!q%1bc5s#>zulEa*+MgKmKJf4Kf)|CYVz%P>i%DUgwqse(;| z8Eu`slpkHTp@ADxcwZrywd-b2ydk@BqHQ&)M7BMnC_CZH(Cpd4Vq<{${&GzCF-5c$ zwyQ50_oy(sf1FInX{4MA%EqB6czng>iWi&tu*&w!fy{;F!1sr>5DXd7>F8gV?gpW^DFH`WFWW5Dqv&cI%gjZJFgJV7U#zDI{h`cB5XWw+S5V;7FxO zcGHew{a#)=kkECk57f16dRr$}XKfr!Wx0uXndfcAOFkV9sjIw1M|T=oa?H{xEKW;s z7KZIl?mI?R(XP~@ikCfAfpl~ajN=-ntC9JyvnSq4dD9IOu(m-KgV1J7z_`~VLt(QF zw#qhY{xtR~4chUp56%K~81NQfUQ<(FU6!)he+$VV1gGTBP-OoVwHX(XFv z=eLQE!0Q^ix{JG0zzpTVy#Pov=(f{U_LwDe2BF7@S>wEpCSJ!% zyN#8()fBy^K+c#uWa#+jTpbSzsP7797mt$yate?0%ec{>ZQ?1iMOeRM`-nD`3n*E; z%C;@WMrh7o^-5+iW8gc}@&U62^~IZ)jOC&;`V2eX)|8&y+l8x8*i@K|5ul|l(GCmWn8J2v(`K)uR_1?@m7WU) zC!eB4(P^40^HGF0JJ>~MrK9pFkDmWw;MZFx*lyRgf){UWze)}d;ys*zR$f+Jx0VMI z;U+bvrqZPst+;%V$H_2fF&K(5>+9^n{=Iazqm-|LTm7mgP*B}*(sfweUXtSYo6u#Z ztSmYA;Gw#!O)#yrrULW1BU$6-tn>cnEu4Y`n>HwaO17WD)*lbH#Q?_Jb-NN|gOPAJG*2!=Z4AtShzD^9OJ!FkczeG&vhS*HTDQmpZ3*n{+ z+#G@1Jvq9;;yi*(Mc{M#I zg)G|GVbm~Tlc29j)*)yUJ=U=Ln|+*8MpdR+62*Zk9Q-o^?WC9DivWWeS+xrgm=Mo@hbqccoxY-4PX9pjQqba8%aZ#*tn2wd|!y ztY4%h?E+@H-h1rrYHKbTXeuG&*Q64eA0wcEQ@AdMJnTiENhLyZLCN|)+(Oicl6ldU zdpHHTIAgO#nS!>wCp$v2K@4Xr7nkTEAReQW%Z;9vJT4n6RvqOsEDo0SbPx@gsdlPy zZoHc_$3ZgkVa(-SA1Un;s(#ir7O$$V^0L}^b!APQr;c8{2CI{Euaqi(CtW;$oqjv7;PLnlf)b2M27N zUc!dAba~4v7cPOG+953!UM-5uI*zatP!run>d;G$ED$HovKbwm>SMf4;KI0*DCIZ< zI9$J}tZv#O`zg40je)$m4Tsa%1a3wb>wsP5)m~nb>Vt*k&h$Id39DDZ4PKcwqq%U| z53I9S0lZd>E3CR-l06uCn_;Ih4b8ei&Mh=v_7od;JO&c^XWoSTe{UaA1nySA{;No$ zTS?qzv!{lcyAQgGm)?&S509HOh98Veazncu_SH`0F^9(P3U6Mtb+@u# zJOlmA+K%F=p+_e&4@x%l$#{@?L5W9?&}O-vCECk%a`tp6akafX*U-7`9nZ`3RxZ{A zy_ie{OMDB`Z-v9*kqPDCQ+{ z2+V`)U@w%h*&X&MV>x!g7p`0z-W8l@8@_Jgq7{|SFxsyZQ9zuhQf4?}ifRw`AS-5h z9X0l~5U&H4ts2)-gLS98qSMmSjyGn)^EZlIr%F6h3u(I=w?M7!xfAN-$wgnOd*;cU zUf^c49q%~lHuN)BKC*SD*LD`-SZ);rPpgZn!5r(ym2`7l4mWu)o^i(6k!2&?j(Lfk z7^5Ob*nQ4;wV)BB0OscUF{I3?jd$td#dAs~HYK}o?-y6}C$GG;Bz)*>om@7hynIUO zp^@Yyu-HurX$`tSAMn;%fXOtAR3m9Gz`bUGp}jzE-%W7>4{$k&rg^Vj^<0) z)ujV4-9UNq6T!@jp_2(eBh31f=k@S(OiS3+@kS!y2I6@p@Z`zRmF;4SBmF%1)8NU! z4xXQnC7fM;m)91=(H$)>rvvo<9wk9T z4PksPPV&lb7q$n>&<#&Vdcuyrhe$Z$2|N6DBH@T9j1LeBAL^m2b&Wq#^9u zq6@GqGj+h#{d&N3q$kX2)p&T?K=LF0Huy#G#J>bjM?7KbE%7hI(-BXYWhS1VVy7dX zu*3g=NI2pNJ3c=m5{`Jn4*w>RaKt<3>Rtjw44xs~Ks4t8Pa1}Fq#^9ea}i)CpGkn7 z9j1=ck)AN+Nj@9l>4+!n?9$bM`PuXF@OQzxzS9rb@xLE1?JsGbgQp`O!j2DR>vZ_n zfL+?(0Cr{m&j|kafQ#W-Huu?h@+9oWLH?T-SFf3XNlTj9fZZ6u&x}(REZa`Nbfh8d z`u={vu3q;5CK+k?dHM?wk}vxj9r1)+y}kpu3^?-VKT4z{4dHVU60iS(Uh(|jiKQ05 z39!@8Er9VSY5C6(9sgZ`S%&fOkB|V4{0X0gkoZplCXVpu0MqfAu#+wSB_$p4gdP5? zfLS%-zXo^_!twC#6aK^#cJ`eA+mw!Y!cIOH19p7)34K@oYQV0(yCO8Z0Xv=HKVPIH zPyIi#DvJjqcp<=#>m#(KD6ZI4#xX5%P9J6w2}e9(mWT8!;OU4b>}+E*V8#>QV)1<5 z0q^j;0CT?0=Y8;Wq$fp~lI^qdCoBs@vaKsaK`t}9DPHz7Qco_V6_?O`6NKcp{ z@vp(t@tLr*C$AF;N4#@RR@4)gjiKv1)J;0l6L$J=A(3zc@p1jpg`^=*mzKQg21+{` zc$R@79cc(phG)Gh;pqlSTLL`OGGyMQp8`)D=}X~V8KwiK8;H+fWpHUZr=uGvt+OW# z=?0>?1bCK-p=;9xfF1v69SJ*pwoP_AunIJ;zSK`T=1bVM`(`5H1}aaqkGT08=iPLq zC+uw38Y1C{C+zZNU!WtN@Tu^W|F!UR1LYf))l$%qzJbJWq$fNJp0YXw?{wgcfayp> z*p2nsV=mi?JUK?tk)ANeE#mp#gPr_o|Ca&BylBtae@XK}62LJnVP}V*0L&=j`EQ=i zL&&uJKTmYT6L#|dE?~wJ|2kmTraz3(6Lxsc%^W@d1DeD0zv9u64`GM@Z3Iu4`7%A{ zb#$aB?C|_2S9HV^cID*%ouVV2u*185l|#I9&Td=-1oL9Z(>oa+GVe`eMZal@aEtkm*{g+1ot5a{{G0|^v8POdIS#cGD+^`ZN4pg zgoH=9^*wm1fsXA4r*`kUNA*0EZtnYdQMyp3*;nBP&(B`*>ODfWv%i2bIJ4-Tk-@13 zy0|_#^%1WY44y3OcI4oMM}3)M@T6I{LURbicFXuY))d@UO?y-1V%U^Md z7PxFmMP~8B^hYzGwmxBky!sf}ef=M+p z@pTasckJD^vJ7T2_bu5e5w7p_-s&`5myyo~9z!0XCLF`trpLuEqrr|RWoBa>Ps%|p z`Y|y1D?hG!3^|0N9_Wj8$HU-gL;msb8gQ661_oiTD9iow(xB-(285xQQQD1`PPl)iur&y1s6v7@h@+R{>!&1nyr{w z%wMoNvmEizo$Tu7x-rAqwY=c+y#M%1G|~@_(-iB=@;9XL<)}USTp-qAmXO=p2zE>MQ0P?;1tmoBP&ug=u*JnL*TP$>b z#(zB~{|4{9wtn2qF!CRNqx4PQKihcbWW1}xNI*XRvviT&sORRf3I1EElKJv4!^0$g zPWxoH_f;V=AU~%(9a-_6S!kT2WOA-k1+o^7&Gh#3KU+7xNRlYnct&(!P@ zu%~xq#ouqAZDj4|Ij|OCyju;EZ|Nl-1G1wa2zquK0hhX3%$5~o*>VQy<6<_ z9C@zvp0v++lmnjU?K3YfjDS7-VOIQqWj&wHonSZ~@Q=WMv0iDPiDP|NWj$}pdfuJ& ze3N~C6KO}lzJ4q#{@eDsMB*>={>MJ^0C9wOxp!s(BCKQni|jKG%|>`vc&qF)?bis{ z-yZwS4c-y3zjxT@N_k%GeaJrJQR?&Atml8R&m0d&cx%01+h=O}2yeZ2!U;^Nhtwl* zY;nGQ-VEFb*yn2d%+2-@u+LZ7XKvPy@S41X_L)3bpMLxN8KF;jpSI83m>vQ9`*Ifj z_p+Wd|55ATV*ey-g)+z|cLtfWG4bDKZk$o9W7%6dLJ9v?OC_m&IB`GbnQlhi{^~_x z2DjsxuxBPbj%7z?!ed#=Wu$nA3zQ5V$FvMQwnLQQMcXL(po>Mk1(5M+!pQReShO_q z4vXwYWWEA3*fwBh$-)mm)dc@mW5EA!5KT6qVr1riwExfmcHz2ikdu(`6&-G{W%3_L z!yLtcZ-r}acm?RFA21kvUoPV{H7xNu<;6g4wII_0K8q}*{P3B5l`zuINBJJ9llp+= zmVcz;D0l>QgndjW8~yJs1HB%VRSoxEN96mu@^*b-qTCK+MoZ>yD@MzgvzHi+3^owM zX3uyt%hCpNUQ))Fx+0>?K75JBMYk2B_<;^sqVY%EK#US*9il{|j%K3x?H+#oGnyvT zBrz(|TY}dQAprXxzI-$f(*VzGGi8b+%Heqd#lf6k7%sfwIDd8c(S+l~ z>P0RG^V!h||0%@i;kd)+@Sm(S$HKn^q^3dX`RjN}UNaP*Qx{uKsf$f3d2Ld9{$}vu z4F|X!K2~nR$HKzLmS1FI@nezR$)qF#Pl&)12@h5mP9EXN&Xp}kZqYJWSju4KAZ4)l z67sQf$SH%xv)YcPl&~#Z1>q+ASm*G3bY(kc`L{YQS!u0~9kIUCH0?3#iQNj4`nG7= zi7d0-a*+CNQoPjH%0cRD@v}&8>pqvT#V;UyC4S&?%53YBqbKc3FKxud9$b!|*m6pl zZ8@dPo0VS5Y_~k5%yzqD7^02cI+1)WUSwr?O1>5^`P!|V5~j8MnTz8iFe?Wq?RzY3 zWOXm6jcmK;)ORqQwDeM6OC$B&B*l?kN~f#RMz)U9MpkYMK12~aSWUI;8Z6o2cU1Sx#vO}PFHw=mGC%(=UA9!;gp4V)|-1)gfBxl&%#R)F0e2~y3E4le|ZF6 z6@iBmz63vTgo{`JIErc10z$T&3$zcNjA!B*PnnEDK5TTgi9IZR!NKdmci7;qNEbQd7gm}=bL0Cf= zG!rcBXm(qgTM;sE(m#dpA;O@aXkjPY$09V(Sa=~qDKj&Kll~4k4=~tyqX0AhYzrfh zU3}t6!#oI6ZZj;5KxJrYq<;aX4B1YkrwrFwm@?dGVaiJM8AlmG9|U~~ZOxoKBL&48A zo_CLhe}wQs!j}KT7AF5kElmEuBaF0sd8`1QFkgZdIRFm&5%^F~fC}1WmQ70=z-*Wo zWk}eyo%9_bN`NC=)P^6pHSo-f%Y^k7=1aD%gh4+6A>pDH{J?d zgp2GtYmTK^hHwhvMvc*V-?RuUG6eow;6#QN?z1$+f8WAyBK(bo|A_EJ@(2BC2&Y<@ zFT_f|%T!kv5D%ETy4b?hRlZ!pw0yDlBzVH7BP<~ddOE&D>tMb(>tMbt>tMbhOPD%* zK0Nu9A-urC>{FCA@#MG2!pwr*o_O*WTL-usIGGy&?g6~n(ol~m3)1gJc(aA?Mo8Tv zp0M;a!1n|Gq{V**;ioN3`8*$iDO09>1K}Sn{1!sd6W~WcPSOWaVD@XmMeP9K&a(0x zZQ&v|Cfo&9wrrD07N*Sj(kJucx#Uv9;5iobgq?0TS(-M4Ef!`QbrS}C3FryCKGf}+6(~hIZN{b!p~axpAdf4!hB)-n-*qyUa|0- z2!B8r`LbUVF6tDP|Cg~lfwQq};|G3@u?#b|nZXb`c4Zs;U@#c6?;%+RV_##kl(Hm7 zO(n@vvP6<7l}eF45lN+@R7jFnZ{A2M)&KXq&viS$cRs!U|Nr@T+~2v*^<2;WEay4T z*`5xlkBrzaA>U2`J8E755MCzUGZ+)9DWQ55rK5G}kS6 zBRU%GavF6upnc1H6|KA9*|hr@w`t!qbJ~kErseVJXEX1MLGCja&qrfgZbv?5(A*Y9 z%v|U0SZDL%@z>9*gPHSMN~7jFw0q1)v9BGl9Haz3FmoA?nmO%o0+P&ff;^e4s{$jMvX{(=RX8qgDtdC9W>Q_eV_H)duI_w^IU~cZl z%t0OQW3)g2NoCw}+;JG@t~Hu*$<2B4L)yLa*sfal3r*)6fs96Iu>FT$<}XYmCj~jQe=I0w zIs9UOS<6X94(*Q>6)lHfymyc9sFQ{qIwljq(ARR((e^j<3;AQrGtu5dW7@XJr~R@l zu^e6$V5OPU@xHht(EfhpjxDIe{m>m-;Q27uBlDxpKEE&H$Qg!qoaMxt zWAXqPxO*{YCR#27%|&y^8K8(chAR-mB8<#gftJS|n#;1uycO-MW-iy;X6C$OK8|)j zjrs}Zm`MPJN*EJ5IfkFB;^4|YaJ?kJyq$k1bjE)exEKjHhhtp+1imPOfsUEx7=Aq= z6h02S^9|&1-O@4lgmaS6By17A?Sq!{qq+Z2 zq)~_4iuTJmfN{)dDB5}S?cx4EVrJhKnAwNDH1ZFl{mlFg+RNrY&~6NdbKXSDFa5J7 zhtp=RtMd~7QS8T@5A!^mm5jC9Nl{D;BqZ^+?u0_^&(KUhrnWpnn8^F-sOWiA~v z3;$uLg^@Y+(bh4uUmeYZ&~i4+S%!9w_z4>Q!67j~`|b6#<*Y`#!p!AcXWoeR1v8hG z>yGt#4B)z>PoO~3T6dWh38g8>YDKFONA;6fkENk*LZ&k;sjocC$k*SyE#sfg3Q z=1j&>lh4=Yn|V(D1dTqYA)k)P05B}G9G;KxVqlzhGg|I*^mAx;(wLU_585y9`xfUm zr+pueGLC8gLd)4C;NXxO?I?3J+Og(Xv{PvuY!;(kZ*er?`#9n;FsES-Z+FKExFj6U zIO_90Mf>|B_bujELyN(M?X%_ z#yYck=d<7JLkO)qro&t(bPNk%Xo!(HTqm@TH)S02$VoB#K5u6Z;;Cq9U!Uup(;h~9(9HdjLwv*VHsX4xxz0HTVGdl^!90#` z{l=TiA>_?<$7#8KIQnV1E`s^+9|kUSyt$D$mBzGbXgT_6xjzK+<39`?F~*y@J-qwS zn6@8Uj(*y7Iu`$7$iNtH9x0wcW7B9IA!*q=C=2_w_8q;Q@<>;qfK=VWc z!y=6FW^Oz0RWznui2;R?oh^KarnFgz`v=W_JZM$;uZ zCC;&!W9EAs-ib8kTN*7#KW&KSoftz!=9u|ft9KHOY3rfo=%?jlXpko`7*d#HZXs?< zV_H6za`e-7rAvpW9XNz z=P<|2$71gVG^SmImZP6`Da{ix49l5gUM*fvW7>^qIr?cg(;-ZVVGDCYj)AwtyJ$?i z4=qPO?E$)6IR7vlZ|3X9-p6T7dlD^2KkX^He0bWk%rXBUzC>f%D`+|TX|K^0!qZ-7 zjyaes;%FMv#-iour{#Me!HVH&`QAXhxuiHmV_Lp0!qHD#m97+?wmNgne68P`ubFV# z6to=uw5c>7FfpVt$J|cbmBzF^(Q@?D_MvYHPs{Im#+wI;N6?s-ud8tM(@voAxWFNk zIp%5Nytpmc$fdaFLcwNX^U&ta!;LrZ#=(?uPC1$nq!=n=^f`6K$>P>xJ`eQyy~X{+ zJf8a;KIVGQ6!W=~kMn%Sd!^VNhi$ody!AP6hr5BV6E76=d&@qb#|Q7%#C&ha#}A5+iN6tF5dR_$ za6h#E$B2uI%ZYja^7#$LEybP0?mlAmhe+J*{}#Vn;(UG5*Y6n>ak_Z4n6KCQ{ORJ2 z;;rJn;v?c?;!y5L&8p%gaVv2z@knt2oUi%56%&^e*AU+(?j%kZ4-@nIkG}p4@nZ2t z@q6MkVt((@*NMVG$2%mhEN&$pAkGlqCw@Tuw0O06ulR`gxVUfrNZ*Ev9~5VcpAtVW zenY%hd{q3E_$TpoasC34{uCEi5c3B*{Q7JvZZGaF&Jf=vo*{l({H%D7_!IG0;6K@wE5FZogii`BWkhqk%vbc`8nYg{Umw2#vocLaGmUxkPm3Wi*koa@) zx8k3~e~7E$H3`4H8j4$qdx?jLCy4J8KO|lvUMqe@yhD6Q{GIq`@!#Uugh>BOiYtrj zic`g%#C^rX#hKz+;zz~Lia!*8DZVWJTO5NYT7LbP5LXb_5;qZ#7EcjBCVpD{y!bWo zPVobHt;qN1G4XQo3*tA#N5x->FNl8?=PnVMS9x(Qaf-N|xR-d8c#3$A_;K+H@r&ZE z;&;U#i@yRfC+dFNl@eDL*AX`pw-@&k z4;D`qKOufeyhZ$x_;c|U@$cf&c+JoEzq~kA+(w)(9wVMAo+Dl$UM^lQ-XT6Az9Rlz zTmr8(`aYKtHx{Rg2a89D=Zdq%>%^~$cZm0kKNX)8pBDcr<{JRM|0Ts$#7W|I;-2D} z;wQx$#5={u#3k^$sqaH|aT{^Ec%C?0{G#}f_%reM;(TQz^Q|myE$%CxBYsc(vG{B8 z1@TpJ6kf0O%UeiXQk*1iE$%BGFPP`Rcqr1J`r@AAY2ru4Ys4>!_ll2+ ze-KBNi_DjwfAQ<&R&i(X9pZ7~Eb$ZK_2PHLC&gFAMaoMb#I42Y;=9E&#m|WkihmIE zHEh4UHN-8&gT?oWmx$jGe=7b>oLDh3uR7w6;?d#<#Vf^ci9ZqlC=OMM%&We*r+AWh zp?JIaGx1e%k;;+!wZxspW5wCx)#6>^Z^VCz%iuM8zm4jO+lhyW?-MT(zasuvd_w%S z_=5PVI9Jt3e+r39i7Siih?|Mqi+hO&i^qxY5ziGb6t56(5WgYbBR(SjLVQmAv-mG@ z%q@}iP)U4H9DQpfr-V37+*RC9JW`w~o+-{2FBPv9Zx$aDe=oiwE?X_q=X&DC;_l); z;tAr(;>W~KieDG+79SCRCB7&QR*&?vj5tZ0B5o`0DNYwp5kDYaAYLopDSlV{t@sCV zt{Ra(M~kb7>xxswoy2{`!^QWBpB1kczbif@J}bT;&RsLo=OW@V;ws|W;wIwO;x6J| z;vwP*;`_u8iI<2siC+^R5PvHEQhZwcz4#Y#u3C}xP*_}Ae2ch&xRtn@cz}4cc&hk8 z@j~%R@ka4m;&;U#i@y;?v^q#ea+Q)QR+=jJSfhiMWOM4)H+obn$HQQ{q+P zE#kMuN5sd(7sWq|3)GD)OA&D$ak6-zc&K=`I7_@iyjlE#_!IFj;y=WR^&xkBPq!|17>HF47>< z|Kj4B;(Fq?;?Cm1;t}Gx;%xDA;upmS#izyJi~knqX&C8$8F2;iJ>t3IC&a77UyCn@ zuZp9RBl9gRE-fxEZY)j}4-n51uM|HgeoMSld{F$M_=Nb3_@cOXqsX#kiXRtm5bqOz zCB7`aE-u?RQooA0k+_?9fOxccp?Ix$yZE^HwD__(rb(nfiQ-D)j^Y90$>PQ0mEsNJ z55>pD*To4bk^Yns*A@2=j}gxnKP-M${G#|B@u%W5;-AFDn@0LpRh%jwE`Ct_sCbEZ zjre8pe({Im4eURM+)Z-&iie2D(%82+OqBQx z@sqUGUk0;&6!KR}&I`2Fd6UlPN(Qzu-+V~&Kau1mSlpm>pZ4QJ$(cp)IGp#B0(x*Wpkv6}I`dq@xkU&@nZV)1S8ZaN6?kmiP?Xmg{ke z@1||Lye~c@z97CNzAg^6K%Llt8!E#7v*`60xB4lxtQ;#-)0UqCbJ{4B>cF_=50RYVmcv8P6v>$-o+tSaOa2nZalXaj8OeE(w)OeC zvP%1Oa3&v zdbkfWB>oU>^Ib$+oux4A;M70xg5+$LoGq4v)5O3b#_gE%5pBzLlD7KiXsdrg^8b*W zJgp=7g~i2at6xRpwZ%4I+je(K&KQYLll=Q&F8f?8*Q1PE|DTkcWtOuL zIV%~r<$X)?cS`;j;)}HP=PGU6CAv){UYNH2myviC+VUGoygwa}&R`e>`|rQp#klot z8g0vRzr?d7{)oh%rmf~mm^GtN|2fHdna1-g4zEjmCvEdOB0fi3%?mJVcE+^7OHS_F zBGVS2Ex!=#^Gh*q_tTK%)TC|QCQD8`iFcR$42h4UZCPeWe6Hj#mH4xg|C+?#mi)sK z|4j0~m-xRWKc;PDdE3y%+^P+nCQAHX$$yD15zc=V_TRVK!?-Q)`?U4#sKmdN_-Weed@%OZ^;=#+xgx|$)7^odYdIV3nl(E zZO7Z^XzTM%+WP!1ZGAonv(Jmr=aZ6iPI4~LR`XZM33iCo%tu>JNr_jYZCR?(Hs40H zElVrO=_&C6l0RF#RJ=|6wfHaE`V-d?wq;MGtq;lK_O$h&8Q#Z=!u~seuIb1zWAc#{~`Iou95y1rEOj%Xxm2RC0?Dj`bjXiQN19pQz|(f#N8zScF7+uIg@BR zj!l#Nd9)oj9+#YFCH}JHzXr2Eyhg-6#%)=Sh(DG5-^E3`MV70kxVv~BT?#uShKFJQ zz2K)Aw{^9Kw)w7?_^T3sQ{uZN{*m}I$@y0NqvTwstv|oQ>`#95?N7;%?H=h{CEEH{ zU))4;T1&hOZS{M=tk1<9A~~aI+yAFad^T;<&V@Pc1WcRFxUH+@;&pUmBw*M`+q55v zuZU~+h~)GVj}bpY-xRL-IPAZdy_#|B!wa;{_hpIi5TB&2&MBC6cy4n}a;}Q=^^D}V zqf3YT&a^W|8%WM=67No1-}=$EPR5F-(zbr)iyxzH z+Gi!ck+wc;hPlqSqkHd2&U@kyB>yAH|5kE-qHP&}k^HD$h}$w2r2Tr3cvaf^S(~gwq+bbTmOf{?0;??)22$!Y;l(4XG{K4#v6pU%L>WaNL!!Zkev475yyIJCajM9HK41BJA^PN=~vkjkfjKp0;WG(ANLKk~2x-(U{7Z?Srfu0TO8jSu|0(f&eUNYcjG=8_rD>a2WpQ=MX(sXZv@LsA z+G-AJK1|F19QH-9^*@rvsJu9 z^7lyoG08ba+x9vq`B!M$UVlkW;X5PoMB4h(R6K$%6JD+{u)p@mbjEGD=FpA9IrAm{ zgv6K8R_7U*b@~a4ot`lJ-xU2Hz__i4agsC9a`2W_U?$_Xe&*6C;dS*GZPP9n?-qY2{!Lu4e`MMk zH2TA#Hk}f7E86DUN!*(*6VADlw)}CDGgUmBE)&k5OI!Xj$ypqDC4 z52ee8b4J4cx;N7pw`ph5HtjsgUr$#EPrDKJ*S*=!xJ`Rla*kRKm-jT|R`a~%6iG+C zVz_1k?5~GYk#Vb8owjM~NW7`UTS>gL#D~yUe>lwgd`>i$ajSoycqwi3dX~0n*TI~Y zi~pwN>=qvqe=0sjTb;8o>)aB+CBBQUgd!O3hW+(_9%S5>>k-

    %%uN`@s9ocarlrZGFg-5$RiD+Tz6|ezU|YNxYWC>r1>jT`#;IT1&i(fDi1eWu%?A+-En$C6w(gAEI`2!{`bn4gc-p3&1asOb z)R`tZi)fqnDTzNP@i)ZVC1*d)7pX8DrEOlvV9qNB@$VS7`WI>2w}T@i@qDyRTZ*=v z8j@32a(avJ63-K_74H#$BmNH^?YbZMgSKTUI4TlPpl=E1w4IE{j{x=9}s^bIj1H5 zlf-|Oc%CtldDWw>Z_UN+#dnB@izkWi7tax|5$_eB5eLUc`VbPQiu;Qvisy+}h@Ta6 zFZG{0%`J`*7Zw*6ml9VHR}t3~bGPvGY9ekfZX<3l#>?k7rp3!?H#|U$)2kbC+)Zy7 zi+jV<#WTh8#1D&~qVwTD3@b2tKPP@cyp7I}|1j*t=)GV3zW9XrEAd(JdGW8}Kg7KD zyPsEHaWS#G-lO#`Byo4`M~m~fX?&g9V!m$c<7wg!;x6J0Iu;$oFhV?DJV|_?c$PRz zoGo4E9Ujyef)^{l=!UpU*ey{!Ca9#dBm||cdb`jC*>txSzJTR z>$v*9H5NA$w-)o-tvKA?2r?B%UXJSiDfYSiC{}lK6G;TjCGJ{5>7t zhcComi?7i3bdkLME?6&Dki7Kg~yrntVik+_4ni+F%|uy~|+tT%r;vd96ivJSl$`e`tMaAygt+uU8OFSfY*KxI++7fRgZZGa8zFq9D?`m~MN&Erv zJn^IAh2k~h=f!W(@!|dUZSijLyW$VUpNPK@e=R;Qz9_yd{#BemZ=^p3#R=j>ae1-3 zCaot!adB}eaYb=eaV>FOaci0<*BIJ~yNY{? zhlxjt?-JiFo+o}-yimMYyk5Lf{F?Yp@j<#oxc?uBkBN_qPm8}3Uld;w|0e!ZoEy&z z{d}XvMa9L$rNtrft>T*E`r=07mf|+zPU3FjA>!fUapH;M>EfBB0R_^SAKF`rxb?U+YgSj_MF`J7VXvf?ChJ#iCpb8%a7 zM{yrvVtPl%U@SBRe#ze1M` zAKzXVZx`Y4J+&I`Iba+u|MK55ymd-SysWd!3Z{x8m=` zSH-`J`MlO|mptM^;y7_haT#%C@vY+8;`-t=aa(a$aZhoEc!YR@I8!`FoF!f$UL;;C zUN3%C{D$})@ow=U@rUBm;_t*ii7$(P7yl)WE*RNfv0`^^eA^$&OT4-`Nt_~16}K06 z7WWko5RVX#5lPNIY6RUOY?eej~v8^N7SB7q1pSCw^J{ zn)q$;4)Fo;Veu#8&&8+3--&+}{~^wU*NXh{D!({UTv}X7e2ciTxS6<(xV`ueaewg` z@dWVx&zSQ^jfG z&f@N3_nQ>f|NasmE*>qOD0aVLVbji(_#E-W;>X0R#qPH)tj

    Zx+8T-XVThd{F$Q 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

    IOR(#>te{+G$|~~dKn(t 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�{9L;MXq=jX)F3h`ZB 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

    Hm2RqVLoL{o1Ep#jQ?fa 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

    JJ7!F2RgKdcd0Jre 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�< zMj`*YKxZ~}f>iG$3||P`MmUT4ZG`g}_Y+2e26zg!L8=!B!vy|a0%^>D0+I@NV0uPb zdN(};g~&)6(19*U)#ES^{jo$}KoE0jp_)S#<~FJ**8Hfgq>3T^RMnyf39B_6A`A`2 z{)JnN{eY?(JD$X_gD)dIi(2woC0gNy3Jkz%Q@d?EFb2~AalbTQ|G3g@3_KD$c~O2P zURBsA$E<2>UDMcn`;x|m%a+}?XkqK(mUu_->oWGDNAtxdjnq2LUAL6WfO${ob|+3w zqvEmb-=wMEh8Drtg8HWgW*!W$H1H}K7F~*)@ zTuK->3Vco={4ryVTHGj#chS8;SQnVUb0mZTPm^PeU!nE{V`S%7jB#f}2R*V?PFU?6 z#()P0tak1#<}Xo;PZYI77bw0p0OSR#>NwOu#K-4D!f*->*u#7sG<@hZPANEG`527T zM+K)DX$J?a_HqIB)m`{5Yrp}kyRZow-kLwN1{|>3nign^k$)<9zaSV$U{A3{ixgTl zcrUd}iIU8_mR*u$TZ~PQeOpVVhuQ8 zmFjiO(?_n@z!>kwO&FVJ-2+0vh*g3FR+H#rzMt9-TQIB+dT_uhSSK`mi*~aH9I(1| zx7qykYqSS&1QJ1%qn!|Osvl!V;DFWSc02O;8F zzsDkQz-rciWgZ8#*QOWAN2$dDD?P1A$W*#;k^HXtA@wty$=ClwgmrXKeoGY?13kDS z7|*w1JUGDjlV%m`+o)Y_!#H5j9HJKS)d63}JUC!J;JWqBSE5ZU@=^<|?gAfSrNMq8 z061W!$*^g#RnUL~R+?;Rcw6tYG?agk=%{@~>eVWtmE-9`tTGc80_mePgFaqK?~Adge^umO#l=_%HL16C8A01Z##4c34IR+B4-h7aI7 ztN{m%$sxWqD@+0(i`CRuvr7;L4-QyOt_B)Tqm#x!0}fbCt_~WWTo!A<0jtS{5ns)& zfJHMKnfYrp|3&3v1toi*TqJq;XSflai9Mc{yyqb6wb=t5;1Ynp(~8_U-g ze+je@5vm!k^ z+y3S4C|hy#fYk}8Bdku<8P-n$rv9m3jfW9@%8*}mU=p|;4q zVl4f%qS!^|N5t==bk0qBE1yE4XpaXdK#@6PN`WR^<}Fi7+!^$8ZlUxQnLnOVKvP`! zsNXy}#pf)iETkmI_S~1EW9{VEDliT6PJ!UP77x<=KCLTNMw{;O&(PtsN) zzj~5eQa&PfsnC&?`6{uzN!FM-)TxP8bjkEg>%b{T)ZRm;a?7N@MWf(4%;q(L)fup=zM6J`K`L( zsE$!|tI(=LWX_2hK}W80nUB0$lQsM6(ry2dj-Ri~ZR37iK9TB{4e^nOzwa2;ko@aFGmj4C`}>V|@Sif0mO0L9d(I~wIiGm; zp~vHYAKK-U&E}3XbL8y!g)@`2(JjU>E9r;fqWGk9FZ6Nj1F}Qjl**kLb+QlKxlLBO zZBspPqFd@MV{62u=2fdEExLW>%EilD8*g56bIY30)mPV49%#|DyDs~C{}%@@W>R$!}n@)od<4u-mzb@A~~OmA;(qU`zMoub9n#& delta 6089 zcmc&&4RBP|6~6DiY}n1Nu#inQA%Sc*n`DE?gcy>b`7h87B2YkO9HjgYv`8aALOYa~ zhsvK&!am3XA|@yls^Q1QhNc5Vq?Ga_*y&6ub|`eLL#d^qI!t8-w�$E-tMzZO5VB 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 Rdq+u-WON*UU+eYUKLLl!G1>qC diff --git a/tools/sdk/lib/librtc.a b/tools/sdk/lib/librtc.a old mode 100755 new mode 100644 index 39a9bb981423a2b45f5b2b70bef32907e7aaf73f..e3e2473ac76c0d5b465f6f5cf15b0b79ab2c06c0 GIT binary patch literal 322822 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

    2L)|HP6XPw7w>IX5fwUiJyq7WGsY;vC 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 diff --git a/tools/sdk/lib/libspi_flash.a b/tools/sdk/lib/libspi_flash.a index 4c6ae885006ebf927ce24996b42d84ad2afd04b3..9f54120b6d0a008063b4685066390aca11a066f0 100644 GIT binary patch literal 89448 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 Iy^H(%Z!t{yM*si- literal 26768 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 delta 19553 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 hI>acp^8+6hR;A1dG}UW9z|rk94{j~nvjzY9%i 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

    8Ej_We(fLO!_O!oZ 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

    O<-WnS(wHUA;a&YCS|mfF|s*^-5-G+V*g*&IAC z+$5}SMHQW8n%{?fu{=-QmI}>##iJ@KJ^!xM#ejnwNKPQLITa7fhi9pfgt&Up^#L(= z!~Fy|Q#J{9I~;5ka)*J6)_aLi+4A^yc`VB5yO)}B-D+@Ct=p4n6bU}4QOaGnwh$$B zYkL!F2EILyi%`OSLla%up90;UM7iH|9R1IRiT_D-`!nixiOu;{*-K#HTGRm>a;o>^ zK)vFj|1A6}QJAw56*YT3vOVT=|8id1adrS5lzWOxFyH7B)WP!BfVXqJiCSn%R<5%; zFGC46*C-{YYVIPG??D^)Nx7LWr`(QAHT;iS{=t|oLJ4mWKQR17^Jy#bdy*@??&ZaH z0M>$x_SyxC3TCBgMwQKO+ytsL%-yqu%I+BB!$|MOLyAkJ{8HXJ>G*Pk$Vbf!Ou+!# z{RdIN{qnV15WgYJeG(zI31rAler&bO=qlBze7$P!1GeepDy!>8|;y&W_m47fJ;QMJa8-SWxYb* ze_znt2;lstUTgr(-6zeR27}>@*POitJRo%@p)6mXd);r1RA=@NQ_I0BnAtBFNjPvY zFpo3)t+;f#G2l2aK62=2jZ`WhvC?%>X^tJ|4MTZ?>ZVe4j|aDTyHM^oJ;lE8#N=_g z&szh5d#Yn?P{wzJm(=6{sb3Dn_j&Fi`i0ON}h z9|P-NL)pr+rtsc%dECufsi@)ZTx0m8#Ou0-^1Vw?4!`^+YF1=>R~ow#jrHupr_BC) zg4h$Z{?Dd?1M9le39j6^E3m&HNDBEwMDmixZxXU=zXF@O- z4cAxH=dfWSgtu*7=jC1wYR>As*T?o8FIwhW!yEbBYYc9y!Eqhh1RS6K{G)Op zTQkjaZ!<+lY>_l9tJl3K;w|obQUuXhbZKZ6I*9h0A=%@GA{}~*3vVg#TfFjnv~(mr zg#!JOmbLafsGSCfIL6jySz_1!3=;aW%aufQ1Pba%pT>8@uyBRlDg^qx$p~unL^%r$ z)%O#q$mLQ;o0XvA7U-Bz@mtYs1#4vPd{go}EwTDriM`6TDB_eo&HsX7^s@G1r2GNF zvD{_oo8OdCpyoe7j^(<>VDK$1Jgjp3T1&-?mWJEb;;pCLP zS8%W}Y#C{U9M%4&;Ou>!E>*Ori72P0K9O?!5EQ=h)JJx+>5IAt zogRsre$)G=)7_=hw}1;ftvT(qf#oT*fhX&{Jwtdsk2+MynN}fz0vf^FDgX{z_6K_f zXZHv3S<4$j_We<(&LH6ElU_G<_z=qN;rXVHX~WCvM6dQvup;$Ex!<&)P>1y$S&=>h zKlV^_c18M))G0$dxjCrBHY%F`4%`Hdn^t~J{<#-$N`4jLqMG85>>DD#(rvB~E`BtC1@+MAfeO_$+a0@|T*+R4n9v#o1VmVoj`B~diz1+Phq>c49g{$1c@0-H&wNTkTXV_H*NVu@Kf#kGVF33wG_~miEqoaQdp$FV@ zZP7w?fYXHryAc%9pbtnP-T2k8Xv=`6mOB6>T)m#v`nva4VP>F+r?~I9MXXe^5G6jw zjawak@FOdOFuVt4+?apGl+$SG+0pX!j1}wR>M8jiC@*e<3zhvG%BbuaQf^km*Ma0v zT`5TGzqwA%fW1@H?OGD7H7M)76lIZZkFHC8ND83^9%ctxAg!0nyB{+6SsM)QLm9gE z(dSe@1`>9<0LCh-p{!@FHK6y>Qt!8v+ek~=tV4YN1A3+X(Qn1c& zRr8xZLJ580Bw1&gOW=j!3pIyz2AoUR!-23`X%ynAog?bZ6foO8Yak>afR+~bg60rl{j!Aj^rjf-IM|tK~3|=W1<@XL95@w)Pp@@!8>PZ9BNf zLpxnDxHz#1UCR#dmv&6XuafsRxbIEuK))#Y+?2?t*6_KBd|ohoZu$<}P(FMp(2CDD zP#S8oe6-&W8$L1;9~eH8L9gd}q1(kUw9nk!wbkc-|Aw|g-%VuP`77Gd?^3`_w9;V? zXqZvP2OP%S&$r3=OpI{oiA2VW4dW-sYk*-a8D;z%;_>G-mwF0rKwOkx_r@5r&3F=Q<4#NUFyZ!F8juXjNt@1B*7|OQTweJU3`<%aVZNW!m)7f*A0^c$BI!zmQcDIl zVSc4eVTm9V`$fP1QtV}9oSzX+#fp&Yg*)o6wBY68PQYWrF&Tr=P3i21J7#3C*heFj}7i1}#$>!SMlc9L0IX^U$ zXAAJCB;ImDyWKMIOElTZteNjLf;PLOvZudNb2_AP+B+k|pL`l?oT%{&*prk zi%-=O*H?cmr?fMeo{L%6&;31|R&w@t%M$cc=JWs(3~&kcr+3O-)R@kS9M~F(&M=_M zc+shfNjhTKtM_*iC_?0K@l@>sAOTZZNJ3s&K;g$fqKYL!memlx6UyZkPe8!|YFkej#06~!ZIj@q*xrqAfL4kV!p7J~rsRY^jzmIYr@Qo;S~@*mIvq#}VF0X{Ne@J-Aa1xoc(VWSDw&*WNE{2c0TFSPz|Jaas=-L2Dyd{rjF_nE zC@{2q{Jayc64G$x4ib9miiEN`Dnm|&5~FIzQ90V7L;**1Fk)g;R5tD`S~I&qP?b!E zBWfK&7is~MQ9%KKAgJ6`Oh^D-+9IlJ03wH-DcQB^gJa823gxy6Btc*;Fl5q#h+o7S z$&{o{JIL{d2q@m1Sjy@az)D#SCXryV31e_o(isNheHDN*s$}wah+%Iw<@xW0NVqe$!{#4fN~9N2pF$3BGk= z#s&q1RIimxc$RW1OS(LaAQKWeQ?oC!zqs!7KyD`1wkf zasah$LbOsy%cMFeAXK9TOlY8q(&hp~qeA1PB>_NOC2-OgAkv_iwvxP?DaH!I(yt)O zB13@P0RB8A>Pk6zBv_`H*sRqXQPxQUT5B4UVHQt-9dsN4a`HKA^p`S_qjrnX8Hgxg z5<^VvZxonJM0Aq0F$HlAf|gb?$wt)bg!&+YFB5JYw15y7QWP+`D<~kOmS4$aUr+!b z2%J_h4kor{)hJyhFDBuh$=6kixE-4WGtc< z5OOT#WKclpQ$*BYg4EPt#)ka>ATJYJvuYP1k~Ya;fRw;aXp_Ov zbG#KbQ)zIt8lZw{#-cn#@M1#K(2*uILkpN(78C%GK=N*gn7&MO!!w!5R~3t^gbuj& zL`2s(W0kOyiS~Uun<9S@;2MM+KoE-w+fuROt+txewwj%hU`E>Rh^_dlyR2jq?-ilh zLR-mX4x%+{>gK^c4Ol2|&k*35{J2e%Mgs!+6dB~Nl9MS0WhYIRaCfpRl zO|IQVK>1&4`NPMNJr^+Xi3GH*z~HE9ZYTT2`i*{1FrFk2gLmfIZ-(@2BxR&&W?$43hp7e|H_ln z=>w1`Cvg%=$l5_T9}vW6LY1lbguZZ9Rdc9fVr#a!s+NO*gXY`-mm*sxsJ2$s(@?Td zN++*Ja-D)~W1oV!N?_9$A<{yaYAYN&2}5ut8aB&>nhJYsBD)AQDIQk|!*Csq2*EJJiORE#W*5P~w{0E-;!AndJleA{(L&yp^0ehCfw#?I`ZQu1X8JXFQ=}}lJF}mdVx}ie@l{&PEStq+ zgBiAYa&-f(7W!jiWu5HE8YuR8Lx5RltDg=ahKPw^xdXJNX8|}{N~bd6V1^(!Q*Jo; zD1+%?f!9cCWToLqAPa87IhUELUZ*g5)u5Rsi&lfNTLIK+Q_NHyTs0sGmT9{852+SM z=6{DM4^HqPWC!3wPX1xQkJ>z*l@O-BEj>U9bmeRk`wAu`%f=1EwyDY4tMI~BX^HRU zc8+gJsL47ZuV%t|9`+j6?IOUsom$o01)KzSkp#XMY=JIAc8#DeW%3UK&S1hFk+WFR zqpcIvbS6qTlgZtR#Z`h;GYs}sApQwamLmfHj0ilF4=kPlN3cx;ucU#$hlp{ftp!0J z^i(l1#Uq0<09_EVEn#Ac1M48!a4DY5|{YrkC#pdLc$nawX~9n z;X{*

    X8|qAx4Hpll7=rLE#T1Lg3oMPxD4hY%en#2Rj~jzHDDK(`2G6|NFkau;H< zH#y;X=wjen5S>w7j;u1OWO5Ku)-?hxh>mZgc||nVR>|&?az3KALZ|`}L&{_Xq80#rXG>AizzFFy|hnv*_te{RUNZuJ=!jdnQH4*OqL=-OeV_( ztYSibz%ro}j(#jFa3`lyDV3We8b7d$k*rj32NJCwj5jdGmgO;Du@FvYG66BMx1ADc zdn+yNiL|X0+EY-KOh~Al2z^Bhm<$UF2n`Z{UCHE|h+2ct4O+ltQ&2!?vlcM9DJTG^ zAe<)zRZJ|)s$GOg?kLep33XYy08RxT5@YJeTdT3Hfxx!29>CLx@ViW25^yS$KB&&! z1=Ie*Y6=tW>Qp9+1skxs5ZS4M3Op~^;Qc{zuVi9pOQp<~&z)zS0a;RWI&0Frz=X*} zL>eDcG6b5*WdafkLU%wYWm18tqe4h0ksRHR3<>~9aOR$^2__XNBW?SpLKD^|2=Uep z)tK}R3IIsR!8H#N%t%XuR(uZ$s*=gWh{~5xvFe-&zpteQgnA*OK_>DY$x{y2P8XI{ zOwL2ZVda5!1XLMSOtQiTPoNf&?5lPW`kE~wuq7xWwBHsH_<2x7h%XCEL-K;Rk+*6W z<)x5Pgm#0V>s&Px(xCj%I!g>663_wIhzL*5gcRJe#3>UT{V<`dVPZP|sC4`S#WP{& z(b%Kw2#i!b6FLaN6X3lq<`WY-4Z#!ms^Xb&E(o3g#RWYRZfFHhfDfsGXYzr?6ZjC3 z3a{Bkr~^h=st{n$w8-{Ria;iT?`1;+GA)?K1l~59X>UaAnwShRXr|`~dKwcBl)If= z1ZJBNVUpiMa=U^|Xn@c;lP4AX0+QnbRx_dCsAlEIkWqRbxdM9zl5+&CW>T$KzT{r3 z;6fzdQjjmP-=`qoQa_^L3rN^M@Z}5Va|E2u_sbg;6y!_e-&c??hrg`gTSz`o zkS}=`B0@60(>+W6C;-ib+QYoF)()(-bx3JP3s^`l z;a$@QvSMEv5iyt#t|PETM5|&#*#%GFkm8vfw|I8LOxOq4*$Im_De?+LsZ3yvNLWp| zIYR|cKs!<0o?zRg&B}Q5m28o}`;6`~=>Q(En~_Y}KCH}&L9~?vXiBlgP&2(*s4KT4 z`IdtFkx(91v;xJgdVpvu6>Xw?JkvZ8V=9xFK{M?u@c3O!DJ{vF{wpHnU}CI&{Hd+z zc<{|(EUz357NwM=vNC$dr1>NH2I6XRN)My;COa4nR;Rb?(B3~ntFb&~Qn>Pv#H;y>D5 zEkac>`L%$R9BU3VI(`Vr;|kh#fn{535dpHRdla;z1}p_Ru2?3V127Z*-vQ@uvVI2+|x2}&>7}yB4>~U=a{^$x5ebGJD6(nQN!;&lOJqS zx(J4ongmZ~Mwq;HW!&X3@YaLD$~986fj+sXW8idQ=%a}|NhU};XR!LFaWc>b8Ek6t zty7u-gG~ujH(Xq2AX>Qq%47J^Na^UgVR6I%*@0@~f0G?Nj>#MH&I-Zv`Ty3j1Fk-; z718fMxxQ{iegFB3=GHYV>p!xt{%iQSO#e|;69<-?YhC^F(na&;mo8s9XYr!B{pT)Q zvV7Unx}^>E{Z}ooomIbb`EsCZmp1gTUxCsUS1oT?=KXuPF0EU&c+s5xi__aDgeOR!qqP`9+cwiI0-SYBGUcz%CMv|#Ss{-+cS>Nlj{SytFD!TC#T z)ArwJ)Pn>K%a$yuZCKcEAxCb`q6JG=F6oD_P~amk^Xlf;u3X$OtKq8Ub@eF6NY^*a z!5Yga5#_}n=w7cFimU9|Lk+B`;f$+D#=NfIhFsI~F`3*d)+-4nha zPD%@Vet2D42-lEYeZlx?Nx=ANsd6Qa&r&ZG@xxaOT?**{!TK!2BS~aJ;v}iA*HBtY zz@)+8BSOP#B#l>TI+59(DOS3OFi=Uu`0S}44ofAKQA@98vy?6w5B4B*ayU%{StJc= zBT=cPaD;tGZ1B5*^u8l;ijj}K3Z-?#b(LH*PG#_RD!W5MKi(;$Rnaiy3!zLU4XM@* z&gxc2B21|hrMolDGFL^|0ZK!2X_N&@;WZkt7Ybp&j^doski{jZWtdV|NFxx{30Y7X zDplc%z(o7O;t}eF{@ZY%QlX$(FDg57BGb^ofJ2 z){ZNcW^|@A!AeAn7ZXWr^$#IC#6E{4oXl>JJ=LQ+11JsXcz7J~WYEQJ&b7Q1qJ~Z+ zLUc6s4*s`J`yNh1#~=%vOA`B01~LMmK~?R6^wKq5(?5zPLMXp_X|f|xh)$C~&hf*Y zq#128B9kap8dxJL>maZSu~>R!XFSJS6pX3I!IY^d0*SLRqM=EF*3mKqO2U5$DkSqs za95^*n?N#M1d?t7^21k&3^Ikn3kVY%bTMCiiS>zS1&X7!&yY^{AU&ef=?&<#%oY%$ z5E`bo)y=94>nc^}Nq4PN<5;Xq%fdBc6h;gtxm;lf;9#r)knK)V8ukIEV?6^%r*0@* zAJC=SZiTNDnX=3*VH?_=b%xdte?6eROeE}WXmyIm6>y34Vj!sz9R<9R>4&>Y)ntwe z#Dzs8Iwb2cv2~zBqTW>eYp=D)WRXz)nrcvW=lUr#McSAa5#d)aGPhxoe+s;{b*P-U zQKNDWSKLCryeqZC;fe@e){fe8rBHj|5R5I!%nzS=szP6Z(CTQzBIws;8i}BZn*Sl3 zp>=QS9XM#Z_UUx@X)p#O#sfKufN>@NBIW8Lv@WeX>e*$U?W~j@MNgG~6XchT0~%AY z;@&wVBc;7dlHTc<`)OEAjBTnP^`+Npt?HvxkVslrq3njM;=^KgGW~&JThcvn(?JPA zY{+5ejm7z#eS%vPl*$^*VT2Q+GoZPIq%Fma5d{o6RRQl~SEJ*Sfz`_oujN!W zqWNjrfR%x5*i1tBJeZCtQ;KC|9?m|siG7$+?$9Sozh&wf2PbY96`g7LQHHH#X9MSJ znp9QatEx=qAc<SKH(snm zJEZ%|l2eEA>A+HC!-THTULrC{tP#@?ZFgzhSBW)=_#(y{v5}6B?JSa})8*QRQ~Wt@ z3GDpjdShoGd!YW*&NrHe)hJ8Tgr)jwy(*=Osyo!x!EAD8oi!+#`J&O)6j&g!RDq-` z(y6Z-;jQ_ExqT2CStAW(OHbt`3wq#)MW%2EnbUR!W`A6xw7gs#Xha(ApEYzkzY!we z1*eYaea`-lO{ki5bR)(%iBFMHOH_Rz5=153(1t2gf}KxXm2$%+DiLoikSzQnyr@!e z*};|~zE_HKIaP_FaC|_LO(XKYF0N2* zgIZDFGmm}|HRBuFm^c$(B(U>Z>(l4iS@rb*l8%!@urmz7SmRRIy3!llQZUnWrr4E< zV{?%V@j0gs@zdFUIF*`}#@rjm_$D|k`VY&9*on(EM@L82MW~Epw?HPhj;3w`R3TbR zZ&@-)iPqS0+acQx-qgX}N$KBuPoWM*O<}faD?Sj##zV7r?lz)Q6x9Dz1s#XM>W1q~ zvFsGHV+r$SMF$R`r~)h;OTQt@uJf)Y^u{DfY&>GNTYS{v%ldD3jdX5xB2o8KCHfN> z>$4x7kGd@B3ac(INo+q$_V+q$qD%}Dcl=2SbC#=1Sl00ra}!4w!F^zgV0Ewfs60Rj z|5$E8A(GS2XM=vqq5$@13QO8UD6KcHtE4A#JCs=UzM!h!e?=$(7^p(1gm&+8AIC0A z@5VjZ3|=FZ)bR7Ev+(88s%}U!Wa4Qzby2gMVzVT2Fkuoh3G8E-B;a&Cis-F3O2cs| z8B^0#3GQ31Z2GU~4RgI*B$mBtICiQHyo>Iu8@)!lZ#^?Lm)Jow#r`HCq=Og_ zXd!Xn-gX`U(G&3bP<#O(tiD0DtR|$kos?EAlzKCwPYq;tqEa&W=nV*W=gDb#La9zz zXn^K}D;O~cid_mATxF)E*;L6uUM1eBqj9~o2`i^AV32`BNnZ!D7xT+tDm)bo9 zr_jY>TiN1E+SpLu55KM6SEs&vyI~zDZ-K32T)sNtWyWP$ziDv5aPFLR@d=q zvr5>sG2`CBj8nS_i!b=PaqUn};t2n_BQ>d`s=kss(+3CQw*hnH^{Q^?O3_Cm4QGO4 z^y#r({K!q0W&0rVbmR9!d~}0x;aXtUC5{jzOg5tHGP;IiVC_Ik_0G+DRkp01)SZLE z86tIxJRXXsod%jUa+{JYtJ`XN;RK$U#xK)))|#yi`yG~AYfqt1cRYorA z>KWMkYs5MS$+b!*v93oE;o!^gL_}KEt}Oqsew}Z$LhH7<(a~pp`mj}YiKcWd2iW!q zHkTYumlne^yHaHM<>8aD`(z`(`fys5?!N3yrsQGK!wRXZ(x#YuRX&fPVRw=K=$huI zT>y-qR*tKVgp8kzusn|usJ*fNk$SVoMSqDV`eHC8)a@P-#~uFuIvHHu+dc0rSdoxD zJ?TYx*b{v+W9JVS9G!-W(bE^PQf)cTVQ8EKEkkOd&sY}YG)JXCo52)G zb6vI6X6)?I+0E9j5$_{AuGVs$2$+Us@`}@H-SV}#^|bwm>uFtl)8`l89u$9069>Kw z(T~0i(JKK_SQdvidvv^gqVXff&*CqA)X!S7eAbeci)Srdv|!<^d5ad*E2?hw@`feL z=6QN5=z(b7qAO>W&-3OkuB%--3nzZ{9)4b+mX|ra%=K0-t;Z2!-Mkoo;2W3*)>=_l zJ8zaPnKcK$)P<7Oyj*2?&#Ij_PumQD`YTr0LWo8&5bL~)FPR*>FeV42vC<`rmn~f| zw|4R3`dI0L1@q>_O24`wR*J*O^KgtgbZD$}{`{3o=Qb=_wzRaqPErugpI6&Z>*nhl zRxFy^PiJuaHJT4`1;Z9u;p>OBe^lZ(}dXbKEg)GtIA*;0cyXDM`c zC63VRyjioZtVL!4i)!c8Gg(nLZ{^&&S><1wwb)x(UpEgl=&OqlG+7Uv-KqkHIqsf?LA46e@l}IIQ)>Tcjk5!WZweN)?f?y?a#WS5Ub|Zho?0(H zgK(m*c2rycH5OVE;FJhP2ra4Ik%BhVfd0)B+m{IkEcEBiUAcl2Q0-%>+8GB;HBrBC z*@_0SEU};ZhOepRvD08+JC>-Uzye^Yb7_UD9SS5|Xk4=zU_5Fp)btmd$d`UKA^xIA ze{C3VAwUp*R~HgfiRzeO+~s$6Q!Mzo5fG{f(gFR-%lnm;o;9#^!JxtO2MjKoUpjBmiiWFttB>`f zct<0Kh!;YjhZ!lMAcWvPp%#{Yy6n%QI*5TSDjauK77O&TtSS0 zRb4`=Np0Sy?cr^C>omvkv1#jao40)J+idpjx7PJq)7iJ>*k=ZtTD(myUz^%?V^YiW zDokqY+jebxmVUgUvwT|9EjHzr-tueBr*+=a|1BxUnSnelOg?SFUxuc=x-Opmw)|b# zrD+d#WuP7{pFs}X9?$mba-1z6>bx!3rEy_b1{Zeak2yRm9N2BkmD!ck$cTi z-Ng>Q%g1fEy|&uJyL|qmV2J5ON_e&3t<{uy%0c(SH&P1`?VF{<+hFVF1A*sp9#f7X zY54XkJZ*%5cpI#2eEXNO*|&g6Lzs~=GBOZPm~YNA zEkk4=p0I6;bB>{{wm3&Zh)fwsLzu7ilc#+Xysf%?vz>LBGLVKa?SS|gA_MU;M85S+ zo@XI45KlM_k$8DA5h?M6Y5(Li)}*BQJiYO)bkf_m)5*sMt6R238m0`SA#7zk1F+Q_ z+aoR0Vnl|vcz&67$(OvCGLR2p>WchJ5N*4kXSbAtd_GT}_WDSDvMu(Nfie*07!z;b z-fydq{1*eZtN&`Cb?Mu>A-1kdKDICR&FZ#z4gei_GG!nQVcH*g4o74lp0MRPib#aE zcvb*Uo=h1?Q-K&mB+uE148+eywBx=KFh5E_n)Qekh=f}Z8A#uPXk~a3Fhg51@ZXO^ zh)jJ$!!f0ukmn>smJwcy$Ur`Xt^fHpU@K2EU^^f81GYMU3NYJY-KP;RMkG)En;`@7 zgssf>zc1R7nR*~ErVMS-3O!aX$af4TFXG2rwr#IGLW8dXGHRuh{!-ZVJky5kqE>Sw)m+;A`owb^&woV$df4p zX$af8F~AIM)usHb%anmMgzcEpPFPNSKg6>T3lZlcTAj}WJi_4bLdrmT!d8ZTL?W~$ z1ON4lZRmf3DNPLd-iT~#45Dp|9WVoV61KX!j7WsG+H%J$88noW z`d}bEVavz02bMEfn;8n2{bb6(x`eH6=@S@;Cv4}tD;r_9MLu&78Awmq$}pcu1mbP5 zGUNckx=c$D3lYyXdBU6*Ll6l!B3d181kC*q@lPT$kUwGD?olEUh$n3E&k>10JYkDJ zMkE69Hdr~SlMo_Ps|R;YCv4}%ml;#5H_AT;k)f@2+wy_Lai7Y%Wr*D05WWbJfqV!T zAQHa-(dum>U^~9+0W*+(Jz^Fj>9-*=5Koxx5q}pV1M!5d-ac<$)BZw;OgYBnLzx-K zhj0v$_=$)N#1pptnh)5@&%RLq5!M7>Flqb#DK= zk$4-de#(JhU8W4AA2p0M>HGl)bWo^TQ(>1z=! zP3!qW9kQ)PLknIxspU_fV8?L+V1~B% z_XeK)nKF=uF#m&`vXMW_i64fz8IkxSh}LGF20X~%|AO>V1M{0ftV{aofNg*Ic_E8m z3YhyJ((t=R3~Wn3jimUEz_W<>O#p1&%?@n;gPAloSRH-^2-dMFX-X0E5ZUf1M9ZJ! zPTi9JZ?V-9QyDFbN;+q!*;L?GSJ*#zBEjeqTSly;HY zQWU#vsZ=UO6zxju1lV5T`>3IYI~_M+l+A|Gvk# z$6j}<p}@;WB0 z$NWu}PpAI#QX{D@@4Q-F`8DCx&aQAe4)cm7ENqwNL$=@4;&>QJ+BX~GQ6&r6m z>h8-RN@x?~6z6`!!gwmF&Bh3@O^#WZlVa>o6AXNwZiaznd+qRj5%bcR`8-auY%f2( z-f_&by&S$rWt$wQWypOfEyGqY3+vL%<#gMa+rli{YoG0~4##O(@wm&fy?nl3Wj@C& z|F=2++v)zl&QI%%YJWkKawB&h) znU=%ON&70JE$!64*wqll3i9rIEPLd(sFpyAgp+@^ZZ00iQ$jdtZtH~Mc34ko;g}v? zB~oN~?omBG@mGiR^t>O>Q_MCq5BZTi#48Q~xrg!Wv)RLSYH8bu9lcYM9lBE}_qd(n zTOG7haH}JB3U2>!ou17et5d`d)G4&pQ91?x>JS~C&pAG4W7$J)YA3t(r$|oDUmlaQ zt+Io5Ku!&1cas#^_E5a_GdWwXAB49~*Y7%)M4k29CF&Yp=X?`Zp6rFo`l#k zdg!oWI9+?F;_&>$ z?2}MFPF?7uNUT38=lP2(F7X)W|KgnI%PTJF7~3z;dH%BShX@Aahuh0?o}V1zi0 zjDH}kgvVa;aWk6FQXusI*7PWh^D{Ft-zvf{0W0CLmwevbPCE?0fT$F1c9+e_$NkEx z==sya^E0zgLixCr$S!(*WqAJXoabj{>goAm;rUrP&(F@Z)bnxvX6HOVCv&i#zb@3D zlk@xonG!wUJ3RkD&hv9K-SvE2{&RDlpO@*S=lMsrN?|EyQ}VHO4At}NL;GoKi8=Y1 zM>1#W`M7;PlC2EoXBKA8)AQVOD&eu0eB4weec8VyJpXrp8ub^2FJ~Ey>u*uc^G{@E zsQn}GOr^{dInOW7Jgn#W$CXOqW<}YQe0**EjGpJ0*p({2QjR(K*t%cS^Zdg?rHZXR zJ^x(hO+6p`_guDdC_l3_vs%x0#p6nN>?J?*V&+plACDg|`qQYtEc1h&=NE{TD)y$B zmXANb{F$Cds8aZIOty*qaLR%|el7a|%CFe_VmLqi*)N-tUvVMY^!!`dC!zdsJBe&4 zKl5((L3n<3&f|aQJYJLY_@kW1YjYldn)7&F&g0K>9)Fqh_^X`9-{d?_M~fK74+e9d zuaxr`E5%BF_|tASkRQIj_QyMAA3*sPudXqiAHH7BrsRh|yZYmr*#}U5_!CJslpntG z^v89w4?=$3oX30QJg%Sfc(0ttMLCZf8s}$&ab%8aC+P_C%;wB zW4>x;OMbGJ!adraD3$T>sk2zv=)w!=jbu_q*^#WUaQCa<3X*=TbWz8db}!g-&XnW zW_a5QmRNsv=Bce7|2wlxkNHJ?E!+tEt*sv8_!vL7w8XE~vcKA__&!JAmpGCBTdnky z&-9bV_>~Ou_&p5MvtPd8(YD{XFeUu15(u9yHI84XZ0B2)5aJglNYp6(UM&5NHT!i4 za`YVtq%S_8+;2M&((h8!kMHk-kX4v-a%)9{E=Wc*ySwFyaSOj`X|ZoZkh84y8}2 zNJ|Vqq}7jq(@#?MnKrB){iIJJed^bv?S9n%i|5jB8MpaRuY7)z&k`Ts^?-|6rtAmuy^2Xxn3&y3Y*NQ@@m9{5SK$d{Z*1V3t~=)FWlClF3-wCsfrziL=#S!|KXM`Jq&|my z#Y4X8hJ3Xj@>_&Sh2u_|FTUF6scsRi`7Ne-<_}5}3~5@;X)T{twDQ4B-v0bw^Kw9R z=$mpv-*$*`U$%^-K7{3<<+IIvDIV&!i|zPw2<<2*w4>z^+BrDphdyXsZ!@j`As*WA z5ZeiLcZv?}^Gp(y(7w#adH;+2FkkAw&sUgM7q+HtRoku4OQ@^$66*ST;THocdA_}A ze+m89`U-7!kIA7;^*^+!`Q__Yp5`%ZKbltPr?!F6rnaAL+H4rx4{a(Zw5jbgw5dK9 zaax^YelcAox(Tf>o|@Cz9$L|zVoqCH{cKP3EDn^87}9nd`s~|@mOu0Ua#AF=KIE+u*@}&VVSGV5OC)A;;tCOcbQ%$swn;)jh4={7M z9TuL4|4`@x)MW|nBhF<>r#KHQh4_!(2!y&Yw{fnvLd--njQMGr=BM5catX%y^3fP` z{W6E`>`b4J|4`@xP6Xuu49qFQ_z1Zj#-W`F0LqRS3Tww7Vjwk`>w%jir51)lbfg}}p)R}| z9Qua;*ta4Kg_H0fN)d*F1r%Z&uuvOf9NNE#QT20SbeI?9aCtM2`CKP0X>3G?V$5%5 z3NOZgD0G49a#=8^GseuLTPI%vpd5yw5Dnjj@nHE@jJeJVk;COi7oaW+w{_+(#dxgD zP5MH)9AnmJPASIs$R!xhq0uI{3%UU7i{%jvjPsaE7jWgEJb{66ZhLeA7b?oW7z)d& zxSk5JqP~Vt#E{}#{fxhW@iO^Kj91a+_zxwlyYe`XbehMo&7&@VILhNB+v$Vx4e~7* z-zm?+c&_{~#+)AWxw_wwIZaNR@mDe4Apd~zcXD%#H__#B`OsRS8oMR5@ zxWWC4b-DkA{R=sqK3$+`wP6n8oIg6n+cS>34`6(jJObmHH1Z4OwBAQDekJ}xDaVk! zKxUtxp%2J}zkP-N!$pXNWsbV+JDvK#d1F4eBOb!oCi_pPc?|P~IQt*wOUt+-llr+$Wg8Fhytc9L?6}}C%Z*O+wJYPuS%xt;Q@SI@nAMQaWk{!fvQNxej`86# z`_i38-?*IU0`!^XSPaZxf${0`VvOg?T#OG{{An8Pu+Mbb4!PeIV&X?(yrazJ!Ognx zTKtDXr+)4RGoRbl9yD^eeCV`a@2@zQ30;7GvS3pSb-C`2k@v+oEOWHOWkRREal0wR z&b>RvCG=GMhr;ciakeu;#_p53NWL87a$5PE7YEL^6Ah*y^j6c5wI0gCe& zrh5Y*r|A~qaUtTIE}f>^m~qr)Q*CJEaJqDAzn9{iE}i1}j8DtX3(dN0i)MZgx=SYf z1-_@nPnDU^Wy+kpF}_!EjN*Gmwf_#|$oUN8FXSIE{!ZS6@h`OUcUHUzW9}P_*Ob$C z+kkPj$sa9a*9t~j=m+By;1?8U-#Kl@S7XfS(O+Tw2aSq_a@rn_W1Jf~N?#0xIJhpw znC;Sk$2jy8=JF2xk()3Fb-BLi0!)h~9P<(9a--Ax2+-%#&5!ZD0Bg)%fe$_VfVOy zjiPZ--2>wt>6`H%3cc0)N#t;u)xy9WE)zO^?kiTD%Y;s^-OU+C-7<{Z(x}V%q6^Rm zmayEE(-n`I!+E6BzSEO&wP)`DD5y5 z;=qr8aa{l(!QnWDoXT=~55vAPe>28mJ4X(e1D)P?6~WADk8v{^Ib05OS`KX(N6rR} zOK9YtDoFAn9~Yl zx&X&#mX|T4oK-Y(+G0$nb-l)NK2r{tKV49O|4_cdz;<58_&+q-;r2+UZG-En@D}`s z64sF%_7|AjL)c$xgp~L_3F1}pa32imSl1LT#Ea)i7>ByI0`gY-8V*{ABObOZ=9@)>rKACWqUl;jIjKe;K z_;C0N#c#lv>#~q59EDE(Zwa%V2^jaFk;DGeXUy_^UX?-Ei zbMAIw{C50@LZ{=;ZZPW}ig8_;>wGU7`IY7L-g|%L@JINeZ^)^N7@gjuhQ1-r^+*?B z-dP4<;IvM`_+*(s>>oiRzb3|X+SkeyFT|Km+tT@pv%hqTPgcA>#&p4f_zz_&22S@( zObfe8m{t+Sbjq2@xN;t#(Vt?B>GU4^5zASuoF*94DQ79;YUd3a?KH=jPW$gW%K0zG zAJfR;@}tx7>PyDe&JW6Ii!q&!C%;(^-;1!F_K4BxwT$0?rFQBorz3Lcl(V1Z93a1n zoGvmi;?R>u`z46e>2UFLARDx#6YKGUiFaJ)jC z?a>98M;5Mo=Chx4%HNrBZr~_%I`(q9g(t^ph5a2l><^umVH@V)g^_&-%V%)hcX`Yz zl(~+R!?IHRIE(i)Unwuac!oR=|FpL|>M_{~<+ymqA`i>mF93P-Kx8-&+ zHpO_XMouX_obkKjHb$pydo<(7;YARxR}Qx?I^|4P&eIsrrqK@jNT+R;+X36bQ{n7! z=5U`_XgSX*=W2{!rjb)5r)j;;INISw99GGjF#d=}ez9DD?Vsff49w^9-$EmY`ygGw z4H>1fwm0U~p^?)ZaXRgTds)u@%Hgq{POqT{TF!~eX^R}XU|#@bkaFI^w8AkHeOn82 zyJtUnag+OK^nv?2osJ<7Du)-mcwFX1F1VktE-!lWGL5<&QJ1b*Zpz_2zN?%PW4TpQz>GB0k@LFWG0OXkH>PNXs2u4t34m|x{whv}Xv^TH)lt`l}24| zw{)sIQ#rh#3D39WJn|wY+~;XtoaHqdb$g;NotD)~<;+I@r!p^SQVj#^4#l_*jk>*2 zmrm2IuN+?Jq@}zF$h4%yo7d#ft*QCOs@x5v|ULgm~$KzFlm=lgy$l-ohpZUmPdvyAHD`qiM zI4u5smLJ;+XW>5-I`w}Sm~pmGr@DMCF1#22q0j~O0^{eJ*;%JJUn>ho#Oa4V%SDVM zpY78Hd=r7felwr@do#HW#$mbL2gn77M2BT^D(c{2n3p**9_B@#^+No9i!*={+I%4E z^j;;jIV!dpa{gvHoufkz4%nP-$eC+7-7V+zn8U6VJ{aS40bdkQcEwOQCa#N+GcSbW zclFq2SVB%&%;DqOXT;^kKG5s~hdh{t+dv*SIux$=+HylPmow|~*vlc+ZAEMOv}KOW z#hqM2qi$D>Ii$Kh=$-H%3Xc)BuJ>8fH8+u zcO%UM56UJCwdG&UnY>t+uhkqb9qKeCx;@xwE+kjk^3?#Ua)0P46B1$l>8g)lt%puj~dxpG* zv2Gb$TRz)7fkxd)7;{K<%jtb$-O0?6uQpGkQFl7V98%pG^uDp~OybL6MYOKH?yhB1d!cRAfO)?L9InZMUdUQMI!8jLxlx@+nEW8HPkk-su; zq)~Sh#vD@J&2)=ccMEgmJiM1k=KCeqt&TB=RG06U@(ze~3z;L=GZ)dQTZ}P>RJRG; zI@aa;u-Yr$ zGK@K-x?|~sV_m)%tSw()E~imOy?CZVa{Q(ofpi@Y1CbTF^5!lCEY3JuVRk;zIiQ;y6Z6J zkm|0dJIA^km?M90-b|zJ7K}Nhx*5Dl%IgyA;s&~z+A?muSYcjtkaY_&=8)>vrMtzt ze1BV8ZfI^oqi%DIIi$L+=6a}sM{4|4ykSr`lwj9Cv)UJ<^eS7^7A@} zRJW8qCe|In9C@^PERDM3G3Jo!PN0vCbtf@LzSKO0M%}3xb4Yck(Z|KQ)0rdRZk|P> z?i`Fcq`Lf!k=G~IozEQkQS)LNb(dhwA=O<aM0wh;`R6 zNB+dTo<`jb7;{Kf0cv2Jzd$o!0vT$e`O`WSOa zb&KeeW8Grr$o!3Taw{5j+hWWi)oo7?j&(aSNA7IyL8ER@j5(ybz3CybZa?P81I?v0 z>W;veL#jK99vbVGF-JbzJb^~tNf>iTb<62tvF>E%$XA=E(WpBeV-BhA40?F1JCix` zz2>dwcQL#n%w9ueyk}KH0o}`m_w?&nI0MIZefnh&k)H~Y1FNbF^5#QCOsrkyP9`1*Q3Y9oQCu{(M@R8<=dKMzI-Mh zVdkMT#ZNSIcTMpTW-jg&=VX#EF;6w$Zk}cSn|YD>Df2QjKi8yb@$*YEKeHs)%*%RD zb7OOBb60b3^C0s?Gyk5Krgbfi^~Z7poIWovV0>(hKWpaqcqty<18W_9$#|8R{|%fz zFY|g6DSvmq$54JFdZ(D*7*3y;4`p1_?PnfHtL_MkkGA-Di%+!p6?8$I*41$Oe0`VY z^LxLP!}nv!AJdxd7j%u-&ew4Itj+KGQlIxQ7tyM_AH7SgyFZ*hYxBFiRCkc&@I480 z>YxhWhopAKTmEG8HMH8l)ADE2-1$%*fYWF5_blflx^~R@lsWQmmXpWhBzIht9eA9S z`F(xre>2PJKx^KQq<4>XkA~Cd?o$}oy5?(K@gNv@ zuZaVFs=K$jrTH*(PxDFUQRXvfO>2V1FS7U)i(hB)85X~bPV;Mi#r&E1CtB0x7pZys z#AQ_(PTyVBWn9auvAK)6uX(6>lKC3*4Ya0vhsE!)_&kd*pw+im%^#XKn|G?3ZNHG- zH_lgGxVGG!an08;mNSf2-_D@-i*?V2)AuS@Fs{1SSpF>*zt8-bc`>av|4D0F@6t`< zwEhjJ?_U1HxTaMNuN%pA%?)VPZ3we&T{P8Y&^!_nE z22S7eT*A28ywg0(@)w!^NvHXxTWEga^qtRt7+0HH%yp_|ca^7z}SaTaQeP(665N_4D(%)AypC86O+_*2_Ga zR^4+fewq13^L@11{~OHq4??qxE$3NUZN6gh6&8Qj;vZQ2bBq6A-b`z{e7~GrOlw*P z(EKopav+?(*X_>u*cd;-d>XB~XIuPI^Nr>?wA!Bwv;878`?TdePpi$>EdGYY|84P) zE&jE|H=F;UHQl=SqjhpqTGMJvcZ&1a9!}p&_hel2e!cl-%YV%LFY~wNYWVz-rnMX0 zIZmq{oW93y!MLW?&ph0Gj(GyDc4nCWZhp)B9j*EOjqVcr@CTf}53g02?L(2drTIX5 ze5`x8#k*L%m&H#ppJAS4zSca~{4hN(PHU;f-!Ok<{)`?U^Z#Sa%)lPj{>!p$9A7(DK{4sR5*oU*=^!I|x8CN?un(r~sp*7tF7XO!djrkk% zZ|0rwAv;ZLck{mHX0)c&&ftHUSm46DYc1F`j#dgks)89=lWnAqnGA}c)q*Zr~`4jU`=AH0nJmnu? zKF)lW`D*in=BH`({~z=*vH!2a>2Eh5GOqq_Ht&Y-08+fz+>}F-lD_e5OFXD@SWTKV0~ zgJ`uml0GiBIR;LDx4MLJwRxxc3Cn-R{D%26^DpMz>u0CcgjOF8r2E7^91N$wfAwTs zeHd&WV;)PZoeM2qZt-cf+Mf=y{nnV=U6%8(dl#?}5&=7-ErnU|aYMXUW)wAz2){G+)BPWVna z4b8`yN1HD)-)Nq1e#QKinZG+s)7sB`w0VsAM)Q;AH_aQ&yBB5Wy%F6%F5AX%`Wxk; zjBDARWgbr}e~S5G^9$xr%)gtffN}LbEq=4b z@3#1T7N19J87{E+6Bd8Q;xAhK74rw?jpiD~+4h^6JDK~L&o*Cge$>3e{Drv^zJpBj z(%js`JlK4``DXKC^D6T%=0=UP)9Pj(YQD-m&%DyS!OZV3Q~&Fj_cxEHwe4L(4~g6V z<#0M5;5Np!{l8{@!}5Qj)y@|4j!h6B8r!S}r}G3FFs?QmScp5ZAdG>C9Rwz z%%@w2`X<^;I5d@bYZ&pgX{i&pz<=+k1|wQxGG;77()H@{gnXAfF+i|LWEZWB12 zOVELF)jh^?hS929Mvsbh$HM8ng3B3K-McO48CrG!L644gUxm|o1#1{r-Crz+*Gx)v z_o7dabsNFyyn=R&t8Q=0IfK@8&!@-4x);Lfyn^c)SKURH^B%3bpU`Eo?&okiuV6Fd zs=HV7Y))rdb^Dq}nlCl8<@7i1%H{$yzV52X!N-LP<1JW)TbkRL4>ccd=G*8rUA~n} z=F53959P^abQS!E!r4wf-+ZC@3iH+GY3AwXyUnxB51Jn~KTq$3|4?4Sko=nYb@OWT z8uMr7FU{YZe==_|XY#Vst!1ub=5MA_-x`^DeszksFn2VUn0fD$lz)u*B=afeQ_Z8z z6KHN+D3i>Wo3Aq8Xuicf(>%*O&-{p)ztu|9q(wH!DAFInSB@MdLFe%bVtK?yKTF_ci5wVgB0uz4<3Ie?yn* z7MN?9`FpyQ6V9>Gba~EdinlhmGk2vM#{Ty(A7?(^Jls6ee5QGvIh>!P_Aj>hb>jo;-i~sfwD>dT7tJr5UpK#H{>1#bd4qYQ`A>8H4%vQ&b3WC#nil7| zooQaext+>6(BcQ1JDIzf`%hzcOz$Z!-UG{?okkj#$q7#O=A3xt_U!c|Y_1<~HVo%stHEJS9!*c#HQpk2H@l zk29ZVzQTO9`9||C=9%VM=DFti<|XE(<~Pi5n?E*(^Pn`p-&y=e^PlE?ygyCrVt4bN z=0@glu9VtuVe!`H5_4Dc@#g;KQ_RE6W6Won&ofUnUv9q2d@H?g+}^@@S@OLWzu){M zy9L_ycf0kJMCG#uh+;h^> zynJdoUzmR~|7y1PJWx7S|&uiv4&F`2$Hh*UR+8oZi zQ=6MD9?rp2Jil6Yx>d}(ns+nTHy4@Pm=7`^X6|f0#(bRl6!S3i+2(W2lg#Dj-17j_ zId69`=YY7J?>5gh&o@72e$xDc`5)#L=9T7un?EvtZVu-ks&Btr{7-W@7g0IY@VPwA zOQE^0c|Y_1<~HVo%zkd+42#b)&oMt_USNL4{Ji;f^IPUG%wL;-HUHOKxq5cqtD1K) z*Ea8A-pjnNxv9C8xvjZ_xs&-w^U>yk=E3GN^H}pG=F81D(fp$=%B|+R%=elfGA}Sc zVSd`Y!o1S_p7{gwr{*urKbe0uXYl<>>VIW3ualSJyO`^k_b@l54~)y9g*lu%s(5>g zA7MVye5|>TdANC``AqXT^QCmV*qJ-`v*R-rULD#eB56m$|?BWb^6fGtK9kFEC$b zzS4XPeQ;dAx0`2~=a|Dex61#!#l!ixia%@dH_UIF|84%ryxzRQ{JZ&2^N#rbFZJKg z(GBO^sy{sEHsxGkzQ{b;JjHy2`DSxCM_27XVDZPzPnnmSSD4>6zh~ZH-e}%z-eS(L znVrWf=Gx}n&5g~?%!iwgFduCW=Lu`x2Qz+1+7oI*H>TjK=WYpNb?x;IP-btDdwr>o6WbG?=|0VUSwWue#QJx^IPV3 z&7YgUGH*0*GXHM=)4Vg!dDe2PW!}TQm$`+xwVCH&r*=A;yP1zN4=@ih4>ylAk2Q}s zUueF>9M1jLeBEU6+s${GA281|KWcv5{G9nk^Q-1?Zn^rf%HpfdpO`;4Z!&K-^X3g{ zIafCG_p<3c`Q6QXnH!m#n_HO=Hg_-|YwlwnU>;;X&3wA~0`o=Yspe_s+st>G=b0Zd zKW=`?ywtqR{I>Z$^T+1T%s-faHviY0SD0NF)yzAacQe;BH!?Riw=*ANE-`mCA8YPo z9$+419%DYse4crt`Ev7B=IhNjneQ~;V}8Iq&-|GAN%PC**UWF3-!*?|{=~eI?i61y zHkp4n|7qR{e+y0dHOz(Py5{h^1GV4S;w{Xr&0Wmh&ArTh%>&JY&1H1wIA3GU=bJAy zUtzx5Jk31ae7AYF`9br;=I6~Xncp(MYyQyuiFu=Wllgb^pXMF;+XO9#YUX-$m$-Zy zn2XI#%x%mEnGZ8}HXm>9Z$8C5%v@$3Yre!Bexsp2Ut{s>&9|6uH{WZ%-~6!oQS(ys zGV=;^_&tdF^RdN0Gk;_L&ito2fA{RVsAk^TT-RLRyubMX^Wo+r%tx7zH4ieEnn#+) zn9nhvZ@$EQx%pc24d#2y_n99uFEBr0e%kz^`DODv=J(CvcQIObpIdyBd9%4Hf48Fi z>gKxU`sOC)=H~Y1j^^Ixe&&rVJCA;-k!E=5x&Fo3AuqW4_URi}`Nz zZ1bb^v2po7ZeC(uYJSc9y7?XR`{r-V-)7;41*xbt8 z)*OBVsCGJ8ypQ<=^B{And8B!ac_Q5>_VZ%%73QnWH=A!W-))|4USwWuUTR)u4!>Je zf8Mls_}!x7A6k5ad82u=d5bxpze7|zRm?k^Ynkhr8<>mDP0RJuP{$FPczRpKVW{?{HS@cd5QU-^a-&)Z_Fx!in}`C9W$ z=3C8oneR2vHP1IcV}9QJviUW$|MvDBi+^bT#Jt|@zt#QG;=h=8EXuCaYUX-$|F~T> zFc+JfnA?~SG9PB{Y(C!H-+YRBn0d7M4D-3>3(V!_$>y8sftgTlGv95VZJuvlXnxZC zjQL;YH_fZfYs{aSzcl|$pPUKhH#5(nPVpVgyO?>+!j!Xzc`tJ-b6ax2zdT{Jd zU-LloVDm`x81p#udFFESWb?J=8_f5b?>EmkFEl@8e%8Fqyxjbz`5p7e=FiL<%p1+W zng1|XX_Q@_1?Jt%^~{aTjm@phZOz@xN11z@`9Db{=ZRQS( z-)+9%{Gj>o<|oY0nqM%#W`5oLj`@A_r{*ur-UdQ4M z%ni-W%q`9B%!indFdu2|ZSH3tY#wSJV?N7VZk}wOYMy4EVV-FYzsJ{d_?yMU@9`CX z%;Ha*pEJL1e#`v6`9t$M^Lq1l<{!`=-qXCdxv|-=70}w^?aUp` zCFbttW6XWcCz=PFhnh#3%gpDP&o^IezRY~J`8xA-^9=Jn=KIX^%#WBKH$P=wYF=jk zr}+)@yXJqJKQVu9{?`1xd9!(oIe*{mc2dQ>v$>YJp1Fb9ukFyv;_b~H&E3pLnR}c2 znf)3OLoGhaTxLGke1Z8g^Off7%r~0vFyC#y-~6EY@8&1W|1iI5e$)Jpd5w9k`AhRR z<{!*IoBuFZYMfoyJDF>kcQe;B7nzIA&CRXM2b(*Xk1!u;KGA%Vd6@Y$^O@#x<_pXh znXfQkZNAZbi}^0|z2>>*`Q|0&rRL@473R0i@0mX~e`fyL{2%i#=HJbg@cW+hzIR8n zU&CY%i#IgyYi?m~Z9dH0+1$h2)7;NIz&yk}+&sp7miavMMDsP~>&>^AZ#T~}&oMt_ zUSNL0{IvN6^FPch%qz|BnLjXpYW~9ft@(TNW^=e!jNX&vH_5K|D(0QdwaoR*;d(M^ zr@6&jnGZI1Fdtz)(tLt>pt;mM!dzw^Yo1`9WWLsXgLxJ`B!2FjV}8iI!2Fc?S@SaU za`Ri}cg-J~!*y@ehaWBei@8cu^mAzJXMwqvxsG`+b0c$WdU$N7ow=jA#N3x25%W(p z4>k`qk1?NRKF>VSJe58*wm;2$oB2-j!}Mt}|55W|^Ahvx^vIYWuID4aZ}AV!-_fID zez>-e{F}x9FxPB`{LwML(7dO4Z*yz<^qAky+|gWO?n{q}`6rqOn}?duq03_a`R0qw zmzj4&YTlVKAEy#mTz>|qTvgov1%E29xc&_OWKnTHmm6#dW7{_@PETtIIH7mG@r+bKSm8WY{a8aiFfQ)6l0scc7k0IUTV*ZGZ@EloMk44bkBuZ zaQY4D9LBL-vdqPhew#TTPWL8Q$ao9$8NY{j44X58ntYQ3M{D-m@Lpm>g9h|OPzMk<8_zz_R zhIB3Qjc_`*b`#@=;Xjnk7}7a`Ti|pJ>P#NuotY8u-&$L)%6OL;uMXFiYck#~#tRvj z>oVRw#_KaK7cqWRj2AO5H(^|V>uk=r+=_Ai&9N=xa(l-0x4Djt%O#BKZ%kbomwPa- zztQw$T<*=d{#MeDad`ma{bN4|F)o)fuJ4LRFfNZ`T;I)>F)oi~T(A4%8J8z8uGgy4&(A%#`PL8pK*C1 z<0E4`ix`&|Gd?QDmoP3bWqfpuFJoL@&iLsuzJhUiCF43)uVP$Y&3IYNU&FY}NZMa2 zo2#0uo9oirR_mLK%*Ezb^bYtBr7ec!_H-3SFh1I)-xp8O^YP{hw2tAE%;j`F{D(3bL-G`QPeygm zYk3+Tr{no_^9)+Y^O@#ZbVK}yG6zHQTzVfyaSucc$qVUy8I8x=lnVyyq-P~|DkNaki3!B@qCkcGp%Fz z7ITK%`5_3PR5n+oJH&W(b4^;u@IrH4x>L-rZ!V%c$9S>139bF2xw#eHE#|j1x2JUs z?`STebqw!n?m-_D+v#cUP3sum&pd$EF?^7@l-4nPgn1OLV|bZ)EUjbsc=H5W$M8w! za$3jm$>u4vj^R_y(`X&Tr<-TcI)=|Q&!UIM&)wE9m6-6H_|$WZ!&MDd7whsVm_i0 z;yT{mOzRlS`!c8FYM*>q$I_c<9Y4RLcZqFItqkipxqz-67p>#TPMGg>3|UL-xN!o1d#htbxHpZC55Lw#T*ri-ST^Z6 za1Y%j_Hzw?pVcio{0^vl^g)G)9~FHAeN6OTSe9x34Zq{iJ{x{#q5bq`o+qz;vld=+ z(*D@GF06fUGOhhCoVTofEu4F-{VSYLsD0{9te>#KAVj5 zsUb2pmkh6+$T(JiW{k{D_iP!9DRaJzQ%EzsULy0+^~_Z=PP@rmD|1u4n`YxEb7b~m zo{UX1vry(P^Ms7mnOP!px-ZI{7Vq83HjCib_IVEr>xhvdF z?g1Yq9}N$pvG1`AlQGJSlG*<=W%i%<4`n_NH4|kn&vKdlzfx`m^S+|YZv*q1inZ7X z%6&3MnFnRA$^|lJA@jJ*?maKF`l~W_@66jWcH_*4GW+wHj9oGFrOZRzZ?uk?85|pF zgfctIILu|L%bYH+smL6*SyyJ8d&$_1GfiZ+-$pKiJIclIk#b|Wx6JM5B$%~Pl30{BjHL_<8;q}tIOxWb>vBK zk$g4WOkM!DmAOm~m!E}u$j`&QFK!V~4M;d1#0 z_)7UVc&c1EFO#`Rt`5(TYr->SULSn{%>|3{xSS6^BlET3d6_RaZ_)b!D63`We^3ia6 zxhH%K-4sCSBeVbgW$dn*!7}H4xXfehXqoR<&ynlHyoMp$YzXrjhBO!HjWQP(@AJ#} z{_y=W=VgJ+wU zjxv`+b(ya0>f8=3RoUVaEZTz(SnDnAAH zlAnPG$j`yUH;1p1c^u=ts+oTXe5cIqmiMh@oX0L+FOlXp z{HV<3^Q6q}`B}Lq{EFNQepBuP^BRe4=Xm&Y`2_eIxj+29%w_wF%wx!ZW$qXJUXAVW z7*a^{%>xRrg-CPx6vfH1k;t4CFt3qFzYg#0IYlt9i%4@j+(qW=>~1o5nLTB0Zw+N`Z@exd>vo4*%SXWn%e~;kWWGM~ zx`@o@_H&fX?dMpz6fULtB876A%y}u3v8iQvZ*k^el$juN|GHS-4W2CT4qqcTgr~{e z#%`6{z`QRx+vKrmw%i_`D<2B;8i~x|Hn~XV@#<;01YRb0fnS%8gjdVG;7?`lcf1xN z+vM`$J<90;aAuciE-PLOk#R1on(|P14|x>KdzUlkY`CR79_D?_8NUGTB3}silFQ+K z^5yVJ@|AF@d<}e>JQW@*Uk^`|xnJ;Fi=5WY@b&U7FzzEi#Au z%RG55{4C9b9?DBHw})5d9pE?QD)2ipHuua2GLN^P$a}$G%0=+EGPnO9Wxh83DmRAz zl$*diU_)bnn!&rsE#P`Gx2t_*ZZj=p&cea+5isx1&UU)O$H?4HPLO%r9wPUKdEa*C z^O(&0w$t2BE|LesSII+Q-ou?a+)nP4`CjE-na51t&z(7Ezz@r3!B5KEmR^v#E&WqI z4}M3U0P~uPY-b|;iF^_KrOadLw=$2Vyrv@auZ1h`3iH5%QcdRittoT;@_LEP;rgvF zSA!eLJSH@exqe&9`@_6;BI|M;9V&C5Es;y$u5vH9KiwHX;q?+}_Gh@v{*0E{pR;84 z=Ukcnxlrb|cd6VIzDj1_u9LASGQ5r=r_}@IbrfkH6Xwxf0F;F?r}c!4QD%u;1ivWb zB{;KO#vwQJx{O^cvr6W+$9vPWeQtYeW%l60Q0(tth)(bCjSDz zCi6Rlm2y>>*F|K0HTX-q8%v1^JOfW%-`h(@M3u%_&K>fyi8`ZytX0R z833=8&xCnxL&h(K*T^@+pUSh~_3}LUKk{ODv&?n+hx`#-dAHc+2Dm`p1oQ7LoYrQz zj{FJeD3Sp9J@jxn4%l+yPNem)SnAXUO=@ z@Og4EJW1v@bD4Z7JVoXa2{ z51`DE^Wk|im-#}O`}Gqtm-!O8A^f7u_5Lrp8T_7nApD8k9_DojIbFW)|0Ev<^ABr` zbG_^+_kejFLdLP#XByBa04V#&>~m9jCz#hBWKLbUoxBI!L2e3nmbou0uPZ-hfkNw;j?8fe_n@>?c4)jBtHsYF24$2FRzAgk-vs#$^V6U?LoFv zI}fiTaxwh8ydV4zxf%RVxeffL+!lUM?gD=(9|^CQ`@-MJ1K^)z-sALlc@VrK7ApI5 z8eBszgKNuY!u8}!;l1T6;Ce(o+8!MvU!>$3m*$j#xVGLPX0$n9ZX&ye|t!5!rA`BCOR+g&~u=JgDj z-xoe!9taPVIm<(2?q8?Mr7*8;$htg!o-1Ds^V)`t-v#q}hV)$cMtL55oBS|*m;3}g zSAH5^ATNO*mtTONk>7-0kl%%0k-vifCG&OpZMh1z=lA6r@W*mP_;a~E%iE@Z-N`j^Wo<5V)#J$Y4{NNCAgFPCfrTt z`I5)TU%-82o+H^`{uUlAZ-j@-KfRQR=yE_Nxlc>wG)~1D9mdo z(u?5_ z?+WvpikxnJ_#&C-Qcac{!q>{YZ|x28e(-FXZ=z7<%9w0sfm{`SLgsstC2~XfC3#=? z6?s4S19~Wc@`=ngzm#jj-^#V%A7!kP%&&4I_)obQ-l2YMlgG)OWFChb(8BBbb46Ib`OHlldBSfy{ZiMBWX)LdMH>=2{t} z46lpGHu-vSo6O_FGMC%SGCsOwKA=wnP(G2F|GCV0 z=XDNijbsK&gJ|aPnum-tryf0u3D_TG=IkqTx=m$H_i%bNfYMcF{?Rh?d&$fnPM;2- zjFy>ymdyNfWadwy#{ekT%gmoH*M?`vT>cN!e8EC_OlJO5GV`C6na`4UZX9!4&pR)g z>oxEEXuf{uO^7a{FNo&$mp3t*>o4!ZXueM8O^Pm|FN*F#UmV?=z9f18T^?OZUmDHT zkat=1So-p4b|r6ebUA%R^c4Ea=xOv-(KBd1i82dA9$&;!=3>aZCNQ&*=7$=T#TfFY z24cDRn7g8xv$_Mq)>3m&KKuqu~{w!=bN+hGx{?XWqm?J%rsZHHYM zXU9>(`qg&G&rWGO4C_?e;dsWi9ftL&?U3*1(smfuowma{jL(SeFQl~{E}^v@E~m8} zuA;f{P}b7g4mZ%+4mZ=<4l7rJXNB}kP5R#G`n0ygCbYK0w)C8sQ$lMy>`7}o96)P3 z96@V497}6EoJ4Coz9&oh%jhbxKP$~^%_n^R~mGB-E3 zH+MDjeE9U6ra|UW=JDoobNJm8Kft2QU|gPKUT9uoUT$7xUTfZ9-fXVCLv~s<%{-?) z{SJ%gu_w1Rm(YB1N9k!EU>;!}Yo27DV&-}2>33eU%=68Q>D}XWmzh_Z*O=Fvd7gQy z%M*^$Z^x>e>za${J>#@mnLC<$nERPa&1L2Zbc5I?&k0YSX6AX|DIV^3ulz+8Uus@K z?;YD*ZC+>IXx?J3isMJBTWBt#8^$)9o7XwNu?(*UWQPQx4BlP3F0&={LMR%>B%z z=5WvMgJYj3SbVa1nt7&qu6dDpsX5$(TkWs5_&WNKINgorE#|8D5+ddBe9>f{Bbv%)PwK;Bf0{5ZhkH-UB^K{#9$+3}9&4Uto?@PEo@JhIUTo&M zj_J4IE6r=n;l9tE;=F9KI8RI&uL6>`Q~uXV&yNh_)7B{^LqN&*oRGK z{%|M7tDEbZi|ONH-B#v~<{svL=2CMR-6ys)!OU~sQhb_urg^S;k$I_kg?Y7koq3~q zi@7R3!=*kHnv3Y;W1qvldgb;O?`rOC4)@_z{wRx&H1LkOmFn_5 zu4JCOmCWo}ZKAJSQia=iwxW>*pwcn#E_D=b9Ipmzr0YSDV+FH=4K5 zL*l+!wO-bR<|1>rzo+usTRhyyQ}N!64~=aOGLJHkH&=_!(J?=R?=_RFo9mj3>CLn~VH8Sg?-@LzOF|Uql~{XRZhVg8_b_;SgY+Cmp``ZS z!Xt05pS6dN%oXi@3wwK|dJdydQhV$1$lEKm_VDqmqP_69S3FMJ=?EBa*D6YCFCP>2 z_R7#+D`atd!CU!?_L?Hk`!@m4ZLhuJoc3l~d(7vwxco|T+MBB9FbXC0uR~6ID{Ox8 zcB7)b6LQ*{rsra7F^}fol6`(xTYGg?hyCMugZNjm{HE(Uj6zBM=)NZeQR%KPJ6TP9P?61{ktuvy{c=n>vu0CGmrDTD5t%} zh_%I#N@{OGPJ8Xq-ee@Pe?=HldnJ!2hUZ2z6X0*roV|&HQ*V5YK^$fj#J@H_B^UL!ayuDdAzg&)~ zf4Ane$MZ(E*B;MR_4Za;du^<}hjQ90Lwnm>zYpZJm-#5W{J1}*{;kMqZ}MNX_exHC zbD1m?hQBe;M6$KF? zAR?Ls5+F4|nunrAMWu=qD_BdZmnz~5tF+cfFSXTDs}>boYpu1twim5!wYJsT$F)!Y z@0(fcoOO1B*vGy7@BROQIrGh$HQzk;%*;zt9pNi~C38Ja zH+($f($?SY;Opsnyc*%F1D}q6tRKx^4uIw3I;vKLtD&AV0K_Tp3tGX)b#5&0ELeuI z{*nNek87nErbh800K_Q?xc$}4^_>kF!^n3mfaR+IALVMOM^g(xoT3NjKJZn-W&Y;C zGK}%&0$9E(@by%Gv!KT~DOj2pz^C2*1^AdB=5IbM z!|4AsfaT*l|DN)9V}$QrlfMOq@2e3$u1jNDY83OFP~wyX^!;%re|*Mb81wfN0Gq$m z0r>Vu_$mzFBE$FB2%nBiP;rLo((uet;uJkFRfg|;_!-9h4a&*RAJ^U~2ZGbM40@KY z*6=lm9{I*a_+}n}uR6k)GJJ~--;4;~>;v$f65*R^_?ir#TR#TBj?Y|Q*i(7yBYX=C z-%`W3Hj=*u2jKfigs;i)EjN5yBYca%XARpD4bNC5*5Cu_-3~qWhlA%z zW-6KJ(fgeU-)``6{2?FTX(->XB7E&miHo9s+KiQubr4E{&?Rz~ODbgl`e} z_&lLT`92=u+Xz0LPhJUS&EH)SzD?lc{9ldo@oZn>lmzTGeCr@nzK0`xd%<_I#G#{n z4@LMAKh5OtYQy(@gs(6BkN3d$Eac=)Nm%NqL9hpy?Q}h?=FhDug&*q9yZ}(9gB~QB zzc(Sbd_4Fy2|e;{5IwfP1YSbge)&55{UKMQeD6j0lCNj3??xzV{su(&IJj~?r$+hu zLC@xIBKW35iTV3Dtn%^fVw=C&;NyHmjq+7S_|}4NHI&G=30C(LV7>nwnf6(C0Q*A(G<9emuc z!SZf_)%;x+U`9aig)XGh!eZUkRX?d8`IzO}#dd(g;KK+l$U!CRU3cRQ3de}_f*xYlpBl8GL@gCcyzZ)dK@ouY@L1vL@A^4>l7-=iXY z>kQvc!#5?u$2ER@r>I8DdqRZo&)`c!kM+m;*77z)_}29Cd-|e$=SKJ{-pRC=dkx>k z5x%CrJ>QRb9yjxll7z~ClewRN&hULK!nX~4Ya|XGEicdRwtSPo$G>&3y!VM7ug4t` zzH+S3V!KzPeA^>@(|(J79`k(nLz#NydpN>ZR?_qM!ZX2b{u+LtnI}GI_`Vt8>jd8v zgsai~Jr&`55PX}U#PWU-R`d6(2p`WayG6-FkKQ*TeAE6b(?52L9?P4D@!0ma1z6j3 z1_{Jy{&@blE$_SFtAh^n_b{yHk7tluzMbIvI0a&quOh-X^IeQc;dOh}t9_w#mgzshWje=Z_mUmu+ zuN94S5|mhfkHKnryCQsCTQpKhL=R5T7UA2;MvplS`5uQ=zUv}E zd7n3Y^CNs^2jDv^!dGSZUNC$sBYaih>#4jv!`|jE1-?q~u)HrCzI744)B*S|kMK1a zzLyN&O%c8Y2jKf;gm1m!`+?zedu-rGS9GQgd{{1&HhMkoiSXTP_+ExK^*Fvf70KVm z1Moc_;d{>T{mAhBSok1vhHGQ^PD_pEk7x1|rzGIF;NxBjUXT5-n!n#g_^O8BtPC>% z>d?=5u;tr|k8IqS^n9-xKJK;EI1mS4#m(qPF(Pj?jOX|(X2@q|<9vxDMG20E^?{yE zchu2g(DziI?oXhn<*1DCjr|DbO-f?;4v+9nx+Dy^7nSw$Gs8DA!Z+wr%wKva$I%hK z-Is>}_o0&S4Z}Ah!Z+k{+&9b%C(Y_95x(^}NNm(-&-bR`J6rf_Afx&5HdxaR$Vba> z70^|^CwJg1IQZ45-UZOZ6hCe9Zo}U{(!R{~xK#Kw=p^XzIZutk)zGuo?ZF4aU_I)O z_3}2XUbhVqzPE12JO^!Bjq-go!Z+!Qq0=MZJFv>fu`{lb;oi0fXDA`A8s(#FE@vi+y5hayN=d7rRoqd0ymlwwleLFbkLm&I>BZ+5oyy)uwI0q*2i1_Z_ zvhTCIax=;%Mkcg9(kn^4N$0M=hOy>8Yhf z;EZePAKS5e@!pajCVnaDPb^tD_nZ>On%z)4e?-pgy2VCnl5M`1a?A!sIkb20! z8Vz#8jT?5{UzpfY5V)KNhpfNmp`Y*E{79%#kW1th8NK3~2@hmv6xVfqY-xF)oi}*K zojatQG4JAny8G38Fmaw>f``~L)52~7POxM3PG-qBr{y(S@;lS=*;(?TX?Zd@5jR=( zGyJ;conhY)4}_+3F(?-1Ho%DwBj(o@Aj$teomkE{p&yIo{RO^6BBy0#XAn!|^#?&L zKj#MLTGcUxH##_(}YRg@0wFLatwk^J8^EqHrK^PEb@H9#Vv`;@?oMVmX3> zUKcc9jBWiCCyH5};bD}Q1-);Ba|pzJJ_^t$D5?sR)8Xy4Wbu+996}fr{|fmEhi(K+ z7Q6F9h7ni#$O|;`;X&W3aPUR&_G@2Ki;exvalgjqjv%aL3OIHOJfp($o8aly*t!g7 zAnbxT=+za3<4BVTO6!=^1U}Hw@ZyKt=qq#j6P!MT{aY@?F4z~TJh#6qoA=ZWcoRI~ zL>4ZbH*iVk>L5Ih@x%G$n1lqU;!f2Y-a+BHvHVek!iCr_Ts|BDjR+X(0v5(D#7vX7 zpmxZnIN73Dmy6PgUxeoe<>

    ^$1@iWDH*z>qN{s!q#Tk8X)5z#5P2=2e%^R>j)`F zRF{dnOtf{7F%wTZ*`hGTY@T6sR>tRhagUO>5SapC8?$~_O2$0}?`<+4)#itsN<{EHBB zZtNl)Qnp%{!Rl*+L9X6W{M!&%%DGhdB`rBegK%36T)yOAa%};*^+o*>OTLO;=mp`! zEcw5|>r4JH3;QK_S@N&Y^H+LMa_2b|%D&{zI|<%_oh#ac@DcW!_~!dAFXudq7jQjB zo1QA78sV&noi4n4MJ$x~Pf2`V5w0T1ACxbJ!XR}1ABzI(kWC~w{5pxsWL-2yKwZT* z^Q4gE`N(a^@yjiu47agk^mmQpFRqH_4CW++Epu==0RP%|coKm9#9b!fAzTBNbM{6N z4`mIxpJ3Q^3|YvcyI~`!{5=FzWS?=Op_n%YLqCe2U z8N#fXkYUppX8{og@zP4>iU4!_v)X)4TzU)-hIKHgoTZHh zjo|2zJIE)7Q)$BCy-SPYy$|U}Z22jnM2o{t*A z_=>3>KIu~Ag7QWnO}way=c{r-B8>MgDx#MM+!R)Ur~(65QE8Zw7WYci^J$?Myh1>4 z?=U>Al#%-k!2$haAn7~MMDCZ-#)w>+m0aoQ@T5UL=SK`Wt+ZcQlA9|3)RaMF!@3Sl zC5F=WH(oT50q{zRWAF~F%_zfLe(jYZYHX~_)}RenhC!@+^ArROMnJ#-j9Vkz=L9MY z5t2F75W#yGyqXNWhbu1{w9R@}#)sID(@H0~(hSXUsSUGXKBUr%SpM2UUNk(dl|!)? zjz|lOj({F6Bn`)rFqlK95;hiG=v)qXiQqTkoLh*Fkr29*(ji23u!v4)emZ~%wFCG<=T_XgUp$e@OuhuEU3AKE|o)9*#JK1Tqjy^9-Iq2#IG}qJQ)@_pu@Pa zVDoG^X)_)OwMu6qtgj@ZZ9ag`&9J!v#^KtETZp&AA`YD$us#ma?XU=-b7wjLAZ^9~ zg~41pn%dl3h^USL{HBd>DRp#wXja9Jg&4)6qfGN0lPNFr>MNGWlcXzlDnzqjS+R7f zVk&kiysZ*UccTklfL~`A`&3wDfes_vn&q{|@C%c0zx-jVrr`yqVSZ?adMEw+LG(TW zT4WqagyElh_rkAxD#pzx95b(@xxHh|(v~I7ovX%7Ywoz9b5+}zljqJpdYt?=ceGWv zG%c-e>ss8}vSiGXRV&(7t!!S|*)is#w#NF7uC_La8&`IY>1ao2`^9aYtAc-ob!GEK ztu2ekw5(jx+SSxNW<}$Yf%XV+AqbSV69n=eS?uSb@h3_4=`bL>h-KR#=elG<%kJ4;>&310q z0FDd8FDu0t)u(o`#BrJ+%8ie9m2#=e^j!BlmMOrRtUnxv@r286tf0tIX6n4BtouS{ z>Rhh~i}Vqfh%LO!pesno3g})Wmr-A&e?npYg2MRZwL$Qb7x0=C6tdK9t&J@!gQ;`Q znO%2g{nXQDPd|B1{p6Xa*3X$bF6d~vq`AH`sITur%bf^>wp!o3(lu0cf|gF-X0yai z%`N~>=k*;Iw6uX^*~;do^|ED6i<8x7 zE=yLUXPmHXW!JICCaae&?OM5{vt`xF>W*gTLUCzRV`roFcXYP5Ea|Mia8+w#XG?2y z_2QP!r7g{^O&vkkN}IIwT;E~QRh>WRSiY*gGnv-pOO}6R)QpTCnXy=gE61QMIFbaaT)g(-{AoeMwx3sN`Tp^NJ;H7YA&9tCp~0STCk^_fRo&rq=c# zWo@|(yS%y^uN1PLZObGl4JePYe$4hmr?Csw&mm3zu(IrL(%boF{M4H~CEy5r&%osElw z(HP#nyIfIwb8F-1))q{_8e2zacP}^4jD8;l9bVs0M{f=9uj7;IY+l_NjOHyV7`?co zBk*x3J#fx?2+ht`4+`0N>QTXzy{UO|*RuMh?Tss%B}ZP;!eL>w$Bl~@w>Mvy70iLq z7eG|n8&@vFEyBur5Vi8TKv;2&g3)+3S%D{$V6>m{kM_yBtAcvLl@msI+S*sO`KzA& zn>C&Uzkbh#V$x^5m|4qUCenCN6baYS%!}jhi%%JqczX2HaQ5VkiD&(Vhp#HwgEA(b zwPJ+f`kuz?#JT9jn0VGs4C)_lLg^n8@!Q&9IG!bpiSyCHn0VG-x~Z={%PYl$VMd$b zl@b34H+E2X6Ko0YFx5tb_W>RID5n2d0x|Tb)B~6Pvm*Y*5r3EXIkuJH`tbFS8pgj- zJ#gvYE`E+NC6Ihk{B#)pnD|-p68!s~_~|fQZ_Bu6N1o$)7*J%6;HD-rZ7>rBKM^x` z^o&5dHD);7XFxiO4$|{v!>QSeOjb=I-85VZMnMy0VKM&mW&p#nSi;&X z=W(-sRHuyiFlzX*TF=pDG}TEG3lCe8$^p}Im##Exmo6_1jGH@1T>6!#o4(B_6M=F0 zv~i^yxws>|j!R3rAMbs5zwG7$>kQ5#=A;CMxJc@X^9$;8j=*{#o&Tq7eQJI+4>*`a6Sz=9#X>d(5>yWre+6?C~jLUft(;z+t?owjtGace0X;~IJtZ^Ge&ioS>u`*!XHA380;A>zRmu-Vs<9>>A=*)ua z$^vq>0p2C~eP9}5Z4anECucs1i$>rF#$6}qGjGIt-5FMjTQK#RHZf^w^*b3%FJ$5{ zY-go{c{vqV5hLy>xU?F#h8Wj~rWTfa4{3OhQJf-1+-Y!WHSTm`l$~ZKY^mV03}#zp z+(mF{HEshj3k%Z(TPnE4U}iy*Sa#Lny;bpX z22VEFl}pm%xS;y%3yPU%#muwfPJ^#7c)h`!4c=<-=L~+>;5`OEY4ARSpEvj=gMVi5 zdj{8pnLJN2c(uX*W-u2BXdAm5SliX3l=I@iylnLO-9pvx6U*RX22VBkJcB=MFuyUV zJobAwJB^&@rKrxU#B%L^K`ib0ZD4KBIhfLEo(qXZzs$%78Tl|HcW01Dc~3HOuIN$D zvrOD`jl6+a^0U_9?FPFuHALrS$|Y|HnmKyn?M$Uc8 zs^iX%5dBk(e1?fT&&XSdB|q01e7C_*8_d1GsvpPrq~*dJ;`BJs3s}d2;YL2%;A0G) zPAv7a*x(L>xo1{&K5MYsqb_m3Yvk`4JQ&wO%O|*p0m?8_g0}l`k{+!v^yiL3P#`yw>0i27laO z-s3gyrwzV`SlagI4d(NN%H6mpI*%LqUW317@OKP;+2H*KyD?BW-!$^y8T`2t7t zgQf0i%=J_%A8hatgNGYD#$YTpPsg2N@F@nLVenZ7HyGSx@C631GML}F)qGxR@H&In z8_aLss{R&(-Iy=+#xY-YzF_b}26Nq*>g+Z6TLyo};8zX)slo2tH%a%`MjmoJmobNb zqf=aLa9@K58+@3-!wnv3FxPh~=dlK-44!5%&rMVPIR>9&u)D8Gp1CSb^*ao{#Nf*e z<{Ed^-)JzGv#Ffl+EvVR$P|CpV6Jyl`6C9~@4f9c^5+faLMn~>LxW#2_)UY~GMG#2 zG;WOdDX9l{&lTL;$hrDXb%q!`(qOKQRUIzRQ=BsRRD)+2%qA6bG7iI`U&koUrFA}2 zPPw$b3d#j1DVID~QZCrdE%PCO83n8NFZz|=-Xo~0{Jh;NcKH!bH@6q;@+17rkItD- zVBN}i{syt+^LA6-4fnYw~ za-K$=;lLLOJ`(s+!K{y~1WyFMR`4X?>jh5-{-j{u$Jn;XIS2Sw!JLD04K3x1fp-aR z0)9YnD=^zRbvOtAs^HbYPY7NI{EXoBz~2_kd)M~_-vG>ZPM$5mZ0E#Vf%(0|5~=4u z3T7P!_@SKlfBco);oiW-f?01Rf>}R2=ZpF^z=sJQ2V5z*7WhcP#{u)4Eb8&*$K)1+N9(DEOnm zHweBKc&lK(H`pfldf?9!OM8AuFr47af>~Ez6U=A3ZwTh|{+7027O%Q9Aj<}Tn+YI(4I{0rAD#&hn&uuMm z6|5RGe`oj{Mx1iKAXtkV8rzwB4ui`uw(-fZmTwXK>>p~BkL}y?y$e3JfAX67bofO+BJVFUKOw_Z;|GHuA9@D&LtA zKA!nIMGFr-1Uqwjgl}IZ<^dof-vC(UJ2%32TmjMpryAv38PS`CNfqCrsZqTa0CJ}! zpa}``TfR(}?}0Vl%OZStjd*TFXpdgS9=T>0FyIs6=ZXtv|N%z2y| z^3l5c0bJEP951ORtCHwY?+N_Kt-^&iK(D9z`yTYDuVyRslInr0Vb23FuPF%|g#ns* zU^yybwH&WOPvcOP-|68#MKv1spAo)A;G-V-M!+f`=ar@!0-k-s_Y7(j(lyBhl@;hm z5OChE?W!+u0j%Y_@vtEHIb>>-Z_I=VNox+amwV#4VbE(^MW<+Jeh+Z?pt2-4xX^!$4LwCT#d4>d1qI`YwpSs zH&NjV&Ms_k?!>lb7J%+9Uq{^D z*az8x-*aQ__;p)Gd##Z0pZIWYjf6sc^K3W^u`4y`wMI1ZzygN&=0#p(fz!AU8hloJ z9ii1u<2>xOWJ(vhl)BO>ZG#qfXP>D&3C|Nao{PZqBsBQEzQk$x{C!hod|#qD;zghy z|JFqr^3dl;BBLK%LEppE=reotdbDY&>ruyk}__g7L>mYsjUw-B2vxpQ=Y4NGq^ycyMqO<{Cyh4s6| zh;H)%bnZ+C5bg8*(xwEM8fUTKrdTF!C8;E;^C*fLZQodl51!CG*=xvUb|EH+OIYq1&UQyO&TM zW=BkxI=EaiKAKibM{{Srs?{&X-Y!w6?%Hw=#~%OVt5Oo zOOp>v%vW+lVR>(+p`2Ld_W+ZRa^9v@&O0*=<-{uIjhTjWVwHaxSb2Dlu7qW}`(bIQ zk8K=(({>KMOryEe;r;hlq*dMig8%J1A6SuU65aMa;09n!+{_s$?!FHo*Jv}`U5d1< z`@V_dbQnQA=oRtfMUXM^tdl&c&uLf2#IsJeXSgjL{R1+}KykNvHY4i3uVS!Uhf0n8 zuqAj?$%imCdjjWp&wGnDF1664(!4LfT{MVKmB z#iITqtanA3U1oG+L4#t#f}5i<_M7DPGAO{{Xx*ePcn z5UZS1b;?;E#410Ia^&+?xHANE@SA1u*~Ey;`XerqI^^>_a3w0I$wl)4KZ|h9f*tMTJX7^I$wdig%~Is~pg+DPf(nF1Wsg<#laIh7cyHf7fIgbZyEIgQ*(w0>SWl zgfe{eGniGZa=ud0wbbO%b)PJc>Qo!dYpU|e22VG5zQMeXs^4UAi@}`+Ut#cigReK3 z*GM_{zf4>ZVk6!_qSoej~jir_Dmwq+$;fXt_zr{r-C#GFl(>%>`I82}Xt3)$qW_AK|HR zIUUh@OBn3dPY5Uf)~Py&8$8Tlw~kiyk1_I;!P5+$VX*s~ro>%fVJf$6vWjh6c*X&9-5AY8!ECc93g-QGnqb~zPZ!Ml>O8?m0XGO{d;E~# zlY#kX0P?dva{VarS-|TAHvn%CyaITW;5Ohbf_cy6TVck%9GGvIi8lf76nrc2=LB>S#-M|_LFqn<;CrKbi!)}M) z@^#{7R|y&Ucn?&*M}RdBV9*A>z64@4Y&ZOtZ!7rN7sS3!^MNsa3L1p-@+#|QiN!E&&Ev>bg9LF16)BJk}Y5Tjv*0G97L z@a=&P`2f>=taH+5z2eWbUH$iw9XkLz0vDy!$OioZLGA^ZB$@a6D5;?iM0m*l-(tK7}Mx7y_YBVTezm_mNZ^ zdJ})^`ryrZ5LPlyCj@<&`u(WrDzfGAiiLdhujB<= zn9t+1CfLxzZNEi8;o`2P2w*-x1EJ67@jjnH0hhdlQ)VK7hRrJ6#*HApbW=$8D1=4$ zYe_hj9O2yFJiKN*ZR&`;G$TUU?=kdWH2^&Cx47-<9V) ztOMzV^TTUch<3n*;kaJ04+mUIfugY9a}wk(7(lWanl-Y8+e#txS)0N7{7(p7)@ItQ z&9qrN!)EOa$r@%A0Y4$jOkIfI^IQhIRXD1LMXA#~`0Ck_&O@DR708Fn!#taZc{UI8 zZ64--pz0Z$sh+Xv>gmTvhVVRO-Yt0bhsqbZmVO?uR5+)YgH@v|nQzqn&R~=!nJD>a zKR(J5=Dvq01;;}>Y|%pdioXuge8uB5cC>id-rN)ten?8~cDjAYmztwZ5MCgqzQB1* z&9{Gmn$LH;OgJUY>2ojArY&VsrAz`%gc&ON4Pb6D%fW7A!b|=DS#EEJu)}0RO4%oa zl6qu4ryoh#LNmcZ30J!26|?YcAf*JQE^&v_IVfe}N?E9&B!N`&`Y@a|@3nhUEISt} zIsI9Drxf&m4%x^n$)wR!tiN}ijxK}A^~+%L?7E$NT@zDa7r8_h@DyUjj+|`HGslaJ z7j1&8a@?un=tX8BPVekxK7F#+_4L(9T))%Lrk!?sBfs%T&t*ATOLkAZ=HMq5$8q-pyO`wS(F^ukwYjfvajp=Od z_-CFmd$1F#+dCTHcWqIR$5S(sJCeHXf+ZajGjObj>E%Yeap{52gEHp~7vc{E=uKhz zFzBIrpfb-K=F!nS8rdI{9J&QXc}~(<&>Qkx#0}&5l)xI6rsDW5QW%BUjp2csf7^O<5<4;zWzZ|1V>sxSWdwXZSKdQE#6B=Fp z)Y#E+QIk1mSt4aL(+BYKij392QxR0;{AV_{_gQn}+nH-GESZ!waM`WD zaP0W{w)U0_8#|j_pq^*hEwg$oUVS>=zj8@e_XCc5I4@eukSU%k^h6fL)4Bf!(D)5Y5S@b^-G%DWu0A`+x9YcR)6iJ?b=?9 zheKZ5f9X0goxK#xq(l9Gi;D@qGvrXr`2P${VqLSw`4Hz^Ixos+pcvIj!cQH#oL3En z9SuuEePZT~a!y%kDEAXtFW327PyC$IkzeO_J?U_MM;)E#^`yhO9(8oi*OSf%;b9rc zLzku}o)4naV}Aa|^>=2pkY3m0VaT=%zpq}V59*Pqnc@AQ%<2Bd8z1i^a(r;)2xyxb zGlup|pUIFL4SQC~3?}{_+p|`NDl4PG2Uxp!plY_~JKJJu9cP7S($5TIKBoszJJ2P_ zQa5GKDwe7L1L=3G{47PAT^#k_LrzW7=HeWHBr9`SCsqHiJ^oq;TMh!<*MRDf$x!|o zqr?OG?Y;(+uK+Wq`;^|w1`fcqpKX{rpru!ONy*+4r{sk*zx}P=9mm?VycQ0qG|LBYdC@z16Qeiw8 zuh6-1e8x?d0lJ%I3I6)Rw>4_|0-PZp-t0=SrgoVI!e#jCi2u5X{~qzPq$RkGeM9`b zX_a7y@tfkOL%u(VpDm{ZD+UfTRm$*5;`i|n4Hk-@H?I=x2>x(HpMM{q@!>;)PmAC4 z4-38&(briSrfL4{ZvW)beOf2Or3Bb%VtNo#t{z5N-k~Pid7~FZCiOj#XU4BIdpbSb zNOY>%J-^)tW`CCyd73SgK=wnS8=KQN*7tqhG8AUG?w+O0v%;!+R-pCUI?Ix0N}D}8 z`>ds9X*GZOgU}2Wp$rpl@;SmQa6%LwA z(}{UOU}nPVnRjOyynq;S7r~{~xDCXte3&L!Jr}RV;5K5!?SxCKaaR+|(7%Q{g0C=m zJu%{LgiEV&HxU=&2j)iDQo)}#csnuT-VT>mJC0 zaWQ^i9)~Rz{FK4Z5hLykaA`H}OT=<3dzm_dUon`MFzkyT7*gxL1I|zs_cxeLnST$V zVLJ)S9Q6ARs0dRHt8tGrc(TE+4T%1HBj?`>H7>8OVqRaxod)yTshrnN@%098G59`% zA2Rr>#L^eO4y=8_)uBw+er|M1!c1E3>;fqZ|JJDeVmPq&h2tm}9=A4I^p_a9J)i4J z!?VNSuM$h#r--E=JqxV;=vB%kt=}2__lWaR2$(pYQnl}t1FQZ>V&R`^uv@1sak=JG zb#5Y-esnXi_9<@gS5B_mRQ(?r?9TU;xbBQ>Ntb6AYF`@)tbNU`-qwmhhmcF*1`hwr3j$rp5TJqq|!j}FuFadqRqky#@#uAJE zi3Yo~utmPW$ayxO_Fta0r*S`F@B;=vYw#}&&PBV{xW^jo&bF3xJB*y|L;C_~(wNn! za^5!;4%&~-LLsN&t`%8j3@8)Y0=yc^)(|Ywwl{##v9GE&EC6@ZURxsu6Ok1g2uGcC7ru7(BrER=z@ShFN=Xl5phAA^RX|NkVb-bcn z@HB&G6H7aB`+x+yIiBE7>PS0TYw$*cw-QU6x!vIV40dPkN&DGLx!@NJ_9Z&_ZxSkq z=AJ#NT??Ba5Tlrvn>Z!%2XUR5O?PjH%P{&+g|&PWMGnUq<(mSZ<=X?kO328^zMy=o zfGyuN34`Md^=Li>OPqqGdClaH%~1Jn1-5)_zsdoa#%zO@?`^}!CZ&8Y09(G9h66Co z_btIG3Ss_i_}HA3k7Sl_wuCVbjpp@Ff>RX2%k_bd~O~9zjQPAy(;BkJjF>Q zN}Qq)rp)lMc`2XU2M53MEs!uc&M4n05x%71Sm57?W9y7t|AAGOdy(jxja4v>k9E=P`IP|~mXF?bj559lC@`-W%4(MwAcQxOzlY&eDm8UL6l+?BMP}uMe$=H<<9XU_ePlad~mh zXL4$`UX@yK)uwsLjSr>wAd-4PY()R#H$E|9_~NDGV^<#+ zpP4=v$d72`qSe~ER?KU(=2f@<)bCN99Ju!2?)%szinF}d1jV77x1xrf=?XFSalq@n zR{yl)P&a!V$_Dc%It+)~1z_&ZFg zjL%JF#hjJq_MZ=25%l^hLMiV38GwZMGsyYFpciwxRQ)FfMV|y-kXNz=P9JWs%qt~C zV))H-3H0rQ9g}(e?}VV-^AS2eoFDfzl)tF{lY+jB!t(FJ+iykFc)V_6N+oMhtZ*>P z929*RKevYi`XbAH8e5m)O%k7pgFapO203XGecT?v!dJbe8pckTk2IH*nPW+yWJ*67ngz)qX(b9u!d0V9+)w{1^;;>xi^-@>88b1(FYIkVgJy{AGM- z{@RLQ&>rZqe4loDKHvKwW4`&-SmrxFg@~*`&G;)&U!(4;B(ly9A zhr2(RUdgr_&OOX+^uCg9FsvIi1P&{mpQY{ASQ0_9hP22=4`D&6+e)^L^CTLM%Hg)& zAS-i;yIwQ`!m<^OOC;p?^tudeD}y3)?t9D4zPD_@oE_vAW{w}X8kZ^{s=wxhr1=+F0kjKu6Svl7ItYO z+g*R40+$0&;SH}4rZWAU!EC>*lQ?dR49Vns970$p16_!()zctjos1Q2b|hbeJjsov zoa;gsIi7Q~O1T^wEagYM21?nL)$6;^>sd;^?_x)|UefJEF5PVb>E0*oS*4`H4n$%L z{FYY;r)5gX;Cm6we81s>&vm1n&-ZSGu#|t1)G#(C9~YUl1avF*sN4h_+>lH06ZQ?Y zJtG=g?a(3YT?3d2cW`aEZP;2!3eLV30$#F8#&tiza4ufRD_=n=e?Ytx5r-dzpWO0w z6!QmS-nEABruLvaRJ+n4&IX`x52O{msSc+ z7_nUfS#3U$W%7Z;p99Pt#42-{@$q?{+Cg4)M79=N6-){i8@1`M zA;y9(=RObY_hb`sq6H;7`(dd>mur>05)n_Pf)X7r2KE6&9X@~#r*Pf3dN+Y94Cc~l zfsF^7Q@0Sj>*aL*qH+Q^5e()6rH!YkQ;Jw%8S0cF7EHS(Lr|x&?*w2k3xfq*mNnPq zcY%h|9qK~o(5Zy=MIf5x1L(|22M}H21L*L9z{enBVyGrMJJSI~oc<$#&IDK=gNRQD z2%y8i?D+tqCw%~&z3Bj=r+ok&_dM2Z_x%)?iMez%+jDOrTImDmXtw9xLUfZ4prhHI zdkayOOKUD2&Gy_|h}@hb`zn3Kk<`)Qxr;1G-7Q4^t8#U8_*~}$h*(T~`h$)ZvF;Wk z&z`=7FM;w^*jP|=3*A4!;&LvBW;-m!bgzYl7=g}A!f(u>gcsnKjf-ZScU(e*yyehf z7L#TE7X2p>ITjp)B>yk(@;~rd|9|sd{C~xP0g(?99Aqc{`|iTWW(I7n$Ky{&XOrKN zk9L;cW{<|uvAl6?eG7De@%XIJFWL8EM8(%lJPlf(Yp(I(+)t0!HP|BG3%_xP{my&0 zQyp@C93&<>#CZidPT&7>zkcXG^bvC(6S>^&)b~8@vmoiXhvc=3K+x5 zxSyXWhWAbdxe6~QFT*K?LT;MTrVVw^j$bS12TuMqc^W8n#+=2mqBD%&ce!)E?TUe- zp!4c=z$r4wI4^`h{2*S?7uZ*x)z@z?du9%Tj6DH@Gp3C{rDbJf>;KFt z3>af%6VLL-j^&D%wXRy+*y=x*)6t1D7|bSmIe;R)^MC4`b7t3_SwDU9-0Ag`XP#O= zclzY9axTTuudta`78nt1&8dR4?voX>A(gf3pY9U`6waC2bcw>eE)X zbOzBpOh04tRAyw{_zCHA4VaIqtFQ$O9|&=~k9v%R+K+tZW^qerM*y+LMcVjqgID6l z|ICMpqJ)|O{VtFDV2-KndcJDBpuVlK38#82TiM){bQ+nX6uO@Xf1RZo2$MTGH6sx+<$x)Gx(XE6_M_4I2Zz)m_>wp8|>|Dwo+7(S7e? z$*L|?6wmnJJD^i%%}Y*A){dSydVI2a1xw2$JCfDQmNhL-R-d^nS&bXh3HVmkvBxH> zmoDvExummY)ynFQX6Hh2DRW}|9i8nhOFFABT-Dmx+0xovjcc~FrMb1K`r72gVb=4mN#-&R`9b(*H zU0H^~Wpb2P!WP4_j5V-~N32u&p7R)fc@N%(PjSS75cguL7SSaz0JbP@h=SI`F!#@jfQeHdQJIAMNWOR>PZK; zTc<;p#_9Zx2Vd~6>F<+09`@jZWnew9f{d>p-~fnda`upe?rC)kwF!;RzK^(p+T|b; zAU7DF`~U5q%X00}Uu}*VzkW|K-FUjScxm_VUvad`n1g>0iz7(J#N8?%>t_$mn7G@W zYyD*z4^a2B7}x_d<{v+cK{}LB9{j9>WF~Q-crYa5=V+2Kag2Z*^Jq98mtZv4F_E&q zu)I&Gp`Z5(HT3iTq=x=e)B~6PGb4U3{ZPa3^V9>E{^b#Wd&GZ{_&L6pU_{y=evUmQ zxI=tK{2XUWz<8hdIi{3w1eRW=XAfl0xBbW=GcKLAaf;@qZxG0g3dm2|Wa2AxP-==s zW?pA^*4rV$&dOvQ=wSrN7G-^641aa^g-gH*u{Mo{W2WxG;CQWa)~)WxU@Hy}!w*b3 zY$Tu2C0sdi@vJ|DWj_gk-K`3yt#T1xvK}!|GVlz>crK9@VI&qepe5Y z?%!1pQr_7tukh5FvM(^0N%EUyoS%&r%sCn76O+aQ?wtk1F% z{J;_Q@B{M>EcMw2iHnBf2Zn#mrkw4OSj#d%C8S{+1P%zsauRYJ{Am*MD zV(POQm6hTLhFI(NNMOp@-iS3ntgkX8!g+9mV9tFv8vG-{Z^5l#{-IBum4Yvad#{nZ z{6mLxW!Fc5SuWQv*a!t{*+;-n&StoL?jmO2<-M4g&kU|#12ezuZgt_Yq3_Y`9A zvy8;bzfk1tQ^eZ-*_X(38QgYa#AUq_Yuu|v&OSw~?dp@1BkoSPHxnZ+{yVI3U0;BZ z{fk)B{krJ0e-UfjdtT&8xWwAtSno{hRk*(;1}E#2So>7K`iGo-ide6EvB*b3OssO( z{-Mt{lh;!BjSn%H*Mo6c|FjyH^&aNp2Zr^ld&}AG6{m<1mvus` zaak9-x0B`9{pV*H%HL zJkH=cgVz|m$>1*-{G7o*H~6mxAA<2x>uLlsEX|Q{b^IJ_bS4tZm^q0$f~Ojt^9=4Z z_+tit!QgKg{F=c`NAp%;@Hm5+S8cawVrg7tFo$E+;Ts;soKGqqZtzHh-F*#hf~FQ$ z^(PseGWc|ZXBj-t;ByRKV(>D9R~pRuo2I+Y;PnPyZ}2A!-e&N2gYPo<9)sPOFXi2B zN&*yk9nDafwr3Sk*yhLXNTsMyvIpBaAAz% zJ_eT>JlNpF4CX#)jXTQVqYZY8wj`~|Mt-uvGYxj5twa{I#Ypp_8;*X!1}#s-i!2m&rQHPL}w}RPQfj}Y;BN}%{pTgYe6R3h!P|k^#u)cb;6Did0x&Cva=v50iZqA62+T9EDBlBI zB6uG#zY|Y6??pVDfcSgBm4aUZK2k96IovBwop*sJ2>v55_iItk_jOYQ^Pa==3MuFL zY}^D$Tmig5@DSj|g880}`}V0b4)`L$Tq=B}V7_O&PVmXV+(%FSQ-L{$C+7WUyI^j7 zx>Ili@V$b0&*7&msn2~*UlPpsy?X@n{`0ut4&d(*=c0fxKNJin__1J61#bvu+vD>B z^@jleMlkzCE;^o`)m1DQ!T3gNZU2r?_T)~$D^BItF z`P|8+8~(oqs@XJ2j+Py)aSe3 zZGxW${yeeVJ01|s_WwAsjQQ{eVF`cb?|K~AVch+QHzF~rQw)D7I_1QoQ%MY7ni^Qe zlMJ42aGk*o2D1-nT(*0~>kQsxFx#~1upKLY(BM4=?=zU~SoL2s_-%v#Y_Of@m!W<& zZqndU22V72n!&S)Wqey?Fx#BUI}KiI@J55T8hpFKY&UwZXIoLs_M!L%gY7)|7e@ZB z!3o^^G%mMZE3Pou&U@W^Dzr(Ol+m$s+66}5WN@3ocE0M~UkT@pMrXUh_Zn>HpSk-EC9Zc^A=tR@yGqM^j2j`Qv9CcNGuE}!XwSKxBp98jh4QOZMAXB4!cSB(L%8&B% zTJrIFF^uj$Sj)$Lv9E{xeM91;;L>aYAKNeadc!K;Pk=370|N3OQ$szPzrtF* zgxdtYiN;SIn%w}3>E8xDj#p|l>;V8XEM!R{8iR024h(4#9J&k|0bW-59Kzw~?u}5MY=|w*xdux3=2ywG9t~Co~dVu!A8JyeBb-mBA2)?9YVB!H(@YSKwhF zKhU$a?vC#}k_QPDm$);9(&5h*X3iq2E_7iBJ!dG1#Pl2>W=Bm0Ku>ZuZI$cUkdTDD zXN7N});4L)2@}o@nhBAs>-4!nPazQJ2K7P!&JFq%ITJbDFoM&5_y!n<1#v$!4hyPg zTuuu8VL><{$lWDgoJ)p8&RMv$h{M0!!+Dv)F#lul<>Dlu+?~rI$YXOa%PC z&?rohu=ry9ghMEx;Z+H@eG9%)cb>=)W`R?U-s~UY5QcHq(m~7cl(v8HAyIF@fhcEi320~s&ZKf-q8zyB zPQU?t!<=&nbIzm&Iwe;z<&zPdQ^Amd%%lHdIEeqDvlQ&<33=J4B;;ofI^ZD)*uJSp z7SLO$r!e4CL;PNRvE8$8&I#ZXT`zOG0Pa-1jTiOWM-LmIYF~4nK|c*ZeU&2dNf_Ai zlGUE0koA@N^ce&s;t30KghLF849L!&KWAW|Ka`+68pdjc84Qcv>~z?Q{BCxl!+Zdp zB&-hrNShvGYUn5ccjeqj?WIWxBs-0{9Xfx~{rY?m+VBs9EEe>`@BhD5yXk}M3jBZJ zR_)9^a|!RG_^#U0#;(@R`p%2nnme$g8W$Iv*m~Tgtx>6lW?}biqn)^h79Yq>vVLo8 zsoV03UCy#?)@_N--YSfbrK@(guab|HZKauQiuwid=H_NgKYX6_z(U;zI=r%BN!>HejnU?b&+r!Ss zRTtqa+5R(jW;bhAEY^VA2lGB#FehS5tKF^XDoehLeMvJfe`NnCNwX`?W&EGE7Z%sW z{iXu8vsO>2~01;a~bm>wFn?t&8623}uQb z(4Ar&!P)6_B&QxRXXQg-ldv?(N&J3s8BU`*9QnzwcL2xpL3f#@TV(d;vF>f^{q~MU zNZhWl12BxH-0dLw|HOVTy(YX~oWJWEFZJ7}N`~7uKtJc{854JJC9JDA-yDEd6afx+L z3!qy=Ksl4-dICN*(dzqRCZm62U>cZKJ2S-KDq_TCozrUE8e(PyrWRJ$HymqliWqUH z!KKx>(}|@U%%qOsvkWG+u2IGnOs^+q73kVx{%uw<-&N_FNakO^A<6u!PPM_u89dow zm$yC;!0>OX8uvVdn+$F-_(FrPGI)c*n+@J-@LdK!YVgwrzi9BQ2LI9E1iGhQQ~o_k zuW2deQm#XZ@$^PB)X2vWOBf5e*PVfa*kEU31&G`f?1Afg88UC zpIG=82_{d2V8-R&=lJ(#HM)Pmm5T#_7?ry+irm$qT@6A)rhcy$pNwAzlVHux#tb=33 zFGX;Bc6#C)Cvj46Y4#XCUJK>pn?9SrX;e0bVKfV1i5ZvXKzipRjQKg3-g4+f(@jFA zhWVpe0!y5NrFjYE;I(DFFdc@mUe>@`z9#tDF4ZXCMG#oNG7J!GH{^3~PvMg9Mp(HyTz1VENj>w+$-fWB*jX3gOc--i`5tW2+kS(H;@e>xV`+S(QYG zdi)!u86JZ<(3=?1qu1TTjeG<2&=k^!Tr?*D*m4x3a+!aYgZDx$$C=R6I1mRnfsf@? zqhZm%QC5Oa>xJ8qm5)QVjs@hHfSWV_a-c>bT~l4bCS0UF5DtS}uN%w7+pFc9jqzXs zWNMTzJ@b$LZE9>XIlcxz$#FIKNsg_lnNV8`_vmBgk5dQ#+tl7MNDY~&b%|DCziX8y z|983gJ63W2lexj#t=sp1y5Cq-`X{y)9P#Obwd=RBP>m-IWvLdxz~Se&*{hmA+p4?zD+R z_r;$XH?A=l_qD#`8bh!9;?IN3w^s_U#&C%QglAXm>M$rSJO#b4(Ea`Giok!kCAIac zr2BBo{Ey}g_(V=7Wqf<*=ZT#|_Z2>~V|R&78wH3xGkj=cF!XDEho;khI+%S&(&vK} zwJS$c){o4%zX~EGGmeLHwf4Zpr$(H4s?QI03|anI?c+}_{@B`=E51E4HYaS`(Z`jMX?b=eY_&4*DAD#2%o4-3U zuWieg70Zgp&pQ1pTNA(TY|VdqSjQ2XZ}uIIYxLv&Z?|uz9EC9b+a$+THG2WPJmtn) zm0$Azu=geKRTcOC=iHlwgao(=*$4sd4Xdf(fdGbxdI@0_HHHKsfFvw|AWIBkQBiVn z3(>Ygtrf%?QCqxKc(EDdzSxYv8uplEQlsMkNRRG|&G>Por;?r! z&m#>n>cwVEl#Q?w?uUcC6ix7?oe4sG5+0s(zWlV}$Kv7XMI061zzAlLB^HsQw{GJ| zDq98UodtS#E{=Q32*D8pqub}?xNti;u8eS8NC=J)j09mz1M)1UZ0~kFTtSOPP&bPA zoW(eJc^cYvJ4;0L_%X!Weh*KqP_ZW1+i3G4W8g52RH#IJN+Ao^^}BCP5%d?}Nq7|Y z9?w$52#%kr+VR$wd zCUXNzKIohP*%Li$;F_`$G_+Ba9y$!!?!{@BJ=wF9uD5~ag-+#oHU|!L^i-ytujueb zp;v+$LvI&(cu+)yrh;xIGv`9|L)Svj`*hs}+Gug5)EnR;ev3R^kPHz$gRW^D%Z4Ms zH2#pxCl~~9F~Kl^%Lq6|3lA&cjigiokU5>hV;F#+VeaL*EQ&9d(^+rHzmi0}Y_7)J z$lah(sOkH$S&@~ zKEl3Kgz(5y&oht#_Odo5G8in90joW+kS>|`pWt;fj|(i4d8<8x=*rAXCP6ZuBcu3T z<0;U7M~N#lepIX9`P%Pfab?DzrTwn+)Y6q@%5K3*%fdslun>S*_&vBw79zXSSq+$l zyGTS9q6TLy1x;rmYjj^WMeZf<$Ktgtzr01gh_ljY z;(DK4Y!bLfU(4$GI3j8H@bI{=%NC$S&p<{wOWI8TIuZiJj8zt+Wc8m!;vhC%RvqC~ zF06Q6=Cfh43T1r@oo1TB)HoQx(&mZ9Qf%5elNf;UwPnm0`;aJ%^~tGzwPG= zWN(3DjGoeyA6-aPpH)y+EM-`Jl?`3Rk$j}aGlt!os2ImMQEh^MLMkEm9zWPHI{q%<_{E7izvS2I&k<=r9 z+&vCi?jDCuKgxh2MxBSoE(aP}(C%giqSK(^KtrYpZLa2L>xhNsb@eoRL*u%7`je5Q z&FtG<0=9|@;QF*M7Sq@(u!zQfmx^aZv9rdf7HE)}@tS@Y(F?8v4SI7O07RkXs~|+K z%Uh%zWmH)Ji*1!?61$0ZBnG)jxTe!+fc7$Un4&^>ew91>5;vKVfa&jSXyhl270_-* z6LBbj0}V#sbs(y79cZkHI1sIK9cajmtWD7j0F`2qNb<^n(3)O$%>)forq!5 z-PGdl&*`vd2VG=j&kkxTu=`;JjI6E85KA~OTFJdTUC2^hxneOe*dzORIB(MXcpC9t z1O4R#_v;9}h5l-Oj{v`eTEAc5-rV2G)}CDu5G9xFYcagg-~FJ0OYy`d3B|o2pV!{Y zMfA8<|Hk$FI0Ek6CvgMs{fDsQ@-+dtZd)(kcaSeTfc}mv%?-=FpkIF;z}<%gA@Ege z%3MnM@Ow*?0FU?P^%9nZ2>OTamkXjKh93D8frnplKn!_#|6EB|nmoHv0z9K<(0TVh zBuKvKoI*NdBDu*lNdyt8x2}}EQf@*eQr=`E={lObbu|BYWt(Vj7CORWM(Sv~8Odm_ z6y|8T*WZn%bYN~(ayLt;9Z{#=W5xSBmseS+F zCC^*i|6A`?*NtKn_f=uX7&n&b=qz8dsC?l({Eq(@w(L$eBC%P^Mx-|TxH{SWb?Rt* z%})=Q+sGn;%8stq>}V|`cm7gko+Tz;DSK>%6% z@}vJmUv15-S+rtR`MfDBDpp!0(BRgcNcvuAD$Ebq%l7=vET% zX~&OuQH+<3Tg!FZZV`Kuxamj7eS26wFqF5=iaf(lHC$=ON`RsM`Fq?0hBV4IbC-6^ zbPeTg^G2NRY~8KOD{t>i`+!ypkk=X{i+&_BpSaI&3N29kp}DW`BC)v-_PcZ2*}2fC z72RbWOA%GAR3oAFKEE*r4idv}0ZeM`cQP>(2sI5_-yg<4Qe!S6 zwAnMq0)gVYD_db28gstLRck87-)2Ig7=O*fve7utz$_b0m$)hUEDKF%f35LC16LZD z^+5Bmzt*_kz?%*HJp(^x;GY=y7Y6>Vfj=^E7rQkq**mM^-_M})4gejWa|~Q&;2R7q z_Y^8Q&l>at#O#oucs5(tnctGm!h!mefjyqqaJvz!I>Yx?y3PzDUHScn!9Uud%Uytq zXR5(7msrUx2d2z?#DQlFwahCGo(+m;4tTz8@Z4_jY%_R%VDRiRc%D!^TzcPU@EkID zUR69H@VsO2@E$cC=Z_W74dC&3TjLx{tnB%D|lWYJP5x z(fB$8bN-;|w;Onyf$uT!4-EW>fgd;UQwDA^@GAy>&A@LO_%{YVX5ixn<|YvxXX)ov zo^Th4re_#9VBmoU=DrZk&pY2V9%tYQ2Ifu?&BJ?FH0Hhx-5!@4xW>Ti47}06+z6xn ze$&944Sa`z?=tZB4IDP`V+Q8!2U@<2S*qW7-k{60=Dc?IfBm=Ny!LZY0t4c?OpG5*scQ=X<(+ zaT=t@XqoS+`Xlo_h5h7L^4YF+KMxp@WA+tf)%Ahhmc|mU&Ii&J<_0w#pJD9(Rk)`? zsOI?uJUp90^*4pVDtr1!r>L$V5HlSq3TFXlD$KZNDLfc>kiwjsk0Dm!o~tl}o1ie| zpQkW~vx^kw@286u?h8CuVa|USD4Yvisqk3fYK4Qq>lDrhzFJ}Sg&b!YpYwqm6uuCc z<1FcOfbUZH65#t3E(d-<;R;}mx#V98{6mHLo8@VRR|D@;_;O&5%jD<0vv`mUGa+uN(Ls10OT+7Y3I5DV5A* z_TdWq4SYH=GZHG-zy$^_H1He)%l(wfuQ~SB8a#5IQ1RSu(C;;H6S11(Jw?nygOd9x z)m+h~ociep3q;7qMRJdXMpcR^joGIW2bIf?Ozay3W)bfaDB15A!BRJqVY1i23_ zk8Q$~_ZZ}{K2RRptd>^Mnj93vfFl^gT<4ro)}HrV$=Yo+Dg27)Q? zCdgx5V!lug-DtAEHRUaYh4W*rw7mO4Fy%S@aF;P?l!s-Th`a;9l&ACM2rS94Yo+D= z2n18!JCK(S8s)K^>BjgShNe6ZG}UofS_HWdE$?GkO}@wAfp)DlpR9RkBFx?3n`ziJ zUw3#W4l1`V5Wf~+#*gWt8{;SQW|&&}kns0ae@U8-gTI};r~C*Pe3Zv-TFV;_KJ5o& z>r+&+!v;Y^>37JW)Xz{!R_IIuP4k@#V5TE^5Y7`KjtrN-*L1kW;M0C6avb^-wj-^y z8_!Ca@;-#1VlYvj?kkut(&uT{ zN@;m(+R3Ys zFISNJAP?0}0F7z?5PYonT4}c(0A@ZP8tT3yV7?51rW^CQxt+WyRHj$85V&jjcsqH= zA&-2Nhbj?~$N8*oyMWf~m=o|fkyaYgG^(4m4V9@31Y~!l+}MuepiOySppt|^(@M)* zzHrn~?7Uc1y`p>>kFQ1URXo|*wcHV-9Y58n&#p}iA~Zx|qy#zyYeL!9x_g)YV#W`D z{NAss`~!~u$J5U}+++Qpv-jOFspmvzhy9(2U%q~OZRNv%Ex7TK*(Xjs^NTr~vJx9E zz2&mozx>wt%fBCpeQe77fqnlHd^Ff{QRyXv!asiE{kgs~UYnj=;0gWi?$`H!{as9OHZ|0Br>_q4PW6F;4M?R6Jky<_E( z-<|%q5iF{I zN{zl7`=ghPD4XEaCDj)A$_kuy-YW`j_iQb|s!eHuZ%Qy&5UMZOoz*nc36}VpN}T;Y zU$hUDEG;R=50VmJL9nnSG_|C5p;K7ltF3VA`fp0CuV}6a;q_&Obz!iqB2-!tyw52M z`+{NT_M9z&t>N8C&0)HSt*ODraA;|`@Or1Q&R1CH>>vN)@B?*IC(~8JzBLryQdaLY z)cMNloXOLt)|Jkrn+kVpN#iD`u+G<5=j>kahJ-%AF-tuDk zfjyDn6VlTP6tU*jIN&so+16=ri?!%v*rgT97?&g=hq_+a?K;W!l)NoQ@I z)0E?@&2jeId1JTULbolx^W0Q6j&W*pe2s7$mp8WgQM#Swn-p|%LR)hh9%cR@@AhBT z{FF+gFQ56EhumiFID4GtAL?A4#*(ZLBi|g!x8}!mj_R)tjA9l*8afBQ?>u1uLv!4^3e7tHa~T;@S2}ES=ySP?JQ+Z zYX(kJg~beX7&jfp1f!(d6jRVBCa3vvSAMfKg*B;uPwfMa6Gn9iKe%=4-RRZt_etS3 zhnu!KwOgG1!?$kB8?%`wdwmlk^`t4s$s1jN4Xa3I_;&vgFw+Z1uDDR;2pi>)m z!VkL%+rs!iiKf(YhvRHC8^wu24B?mc)S{Kf#^Bma!qUZLcyfI^v_Gg73ygw^} zEGnE{oLUlHx_$eB^l34LGg>ZwEdFWlOHq(;B-ZM43^>}wJ3YJhrn|5-r?8-9AEuQ% zqv75~yFaZsM?4?Qf1%}i+Zy|qqP^+Ux=b4V+V;Karc|8q9B0*yuf3+Y{+{gzdez^u z>*3m6Q_{zNQG2lEFEM%HA+Y$E1O3Grjs!-Gqx8^3Wu za^3We3sQD^cRjBny3_NtH#0%S&zlfG=O!29&S~5B-R*a62{99+ts~bb*56Wp?M{1l z+}aZRxcq zp>y8u^4Hq`iHSDn+IZUY@w9)BM~h8DtHL>O)Gv3Q8@bc^Y*26xoQwIm)0*qS>KwTD zVtDstaHSTk1ha3s_j)ZUTP%aEcZn}2;MW0Q%QC;q(zo;(f zfg^G{d=F?bQO|&c)8RQItmyAw4a|e$(L4AaEbcV;of(r91-`C4njO=V(2B=70Gt$0 z2KIHWT!Dk)0|3*lglFMMYPUN9up^LmI*A=u92|gsq_&@Hc_%`So$)HD-RFaBzYb)v z)a-5d!rp^n+OHGZMLq;%zs}b*REg!5eVF0{w9Ho)2d;@YlOirBXj!N%|ACN@R{DsE z;`&$;Vb5RVAy<%F{fM@`4woKsUG*G7y9nHjUeE4~=`tXTmBilmd)QsZWiF#n;<}9V zJ5jZKJWpURV;S%(yooiIy@DbB5|-rt09@bVf%wEK%U=HgEPsVd3g2|Lpc?TlOsYM{ zQ-kMh56U8CqH?)hxvbVMY3ScA{(2{8b$Y6MPTESTP#$;%07b1;9>}m70;`m_1L8g# zH03p|LHRTzAa3~m856}9FLH%J&zHexv!tzBqHTXd3exd25JV=(E^;&IPRXF@y%I^g zi#d{l6f)h7WaCG>QU(I>OTmQ@fppl8l`;Y(CTponlB|&X##4fdd6T%z@xyyZ4OucJJN2BrVbQq4+%m ztoZnIKtf7zvAUd7=H2K~ijIY?wd+Pz|Hus_97`i?s&6C3T zkXgivnCr99JVy*`l6%;?r+J*XjkM%=BtI!e4nph0%(SE$r<{2b8eGFcPFJU#)iLE> z#;Ik5mSG0d?&^4bK3YXA6F!Yw-TSycc@})6I`7=qJ@4GFtqY2c>KClI)^r*&Lduz9 z*NMG0&hA5du)%+EHOoL0x->|A1^7d_nV`lr!V!kyIv#?>yo2F5WL{uu`E!?Uef+;X+wg)hP2*BL=Q3kG{u z!0j;jeh@GUwRIk}ZIv#B@th0y!8qtb8UwI?YFl$ogCSd3tT~$jKXa)kU@YN~W6fC( z<0Tg&x}p$@Y!^j#L|p~^AvD7J6AT%#tkT7Z_^XnJQoj4omxz~6f+3&EvPvHTlpR)9 zX+Ma&ULsz4BaGj<@DDKf3evV_p9f=y!09_-#7Y#Wo+%qcK-yYOikLnJvf zhr-}!g~RRNfx(yQfL@4OCTW;?8H|@*_$mzUm;wV|xPIG(x5D_yg~wsYRwZjD4cTpE zmCi*P_DXU}e++})xIspbg3;*0`(XUig@~>wgk+ryjpQWI+y#vT-#>&gMAA?)6vj3e z-VGx`B0ifN1$m(gPu9bD+l3svizE%x`F5Uz1sFJdr%S}A_kpoS;4E(6dfkQWFn{Yp z8vKwUN|O7jcDQgSjAV)U>|QXgb>Su$zjh&_8&NDOgi1qZ8nWp*;yOcIi)py7#o7sB zSf%1x!dLPfxQz4tLtq^vq*A_so8Uq`MWIJlpLv*>0XP5}t)T$MWEavXgpRRd&s}F_ z-UTR%9Jp3r0<>#M?&;XVF&St01sXSyB04^>vVT-52|yHH#MT12Jy4=8V9%QxJt>92Q?y zv9fyk-*xJJ#p>nr7A;$}T&@}Dp>8Bp*zUDFi`IR-R7}t_29LQb7{990Ux$)f? zIE`P4cf0FqtkrnOD@ltSo`>VS@x?R$XHUbUs*CcuM&yk=HYbVV{6!R}2nv!{WBlff zVEWN?`qLONaypxn6%I6d(!vRsR{8`tCqCrS6QIs`k`)ilA<$XSoJ>)XpSTY+>9e32 z7t%R%qg>KCt)wEIxED0(dcsAzRyuCuLGVD+)G|3QWO(#j3r*FTUw0np&IdIQX@jBZ zmvciZ@%t60*Oygdw*WQ^v}q*6463x=wnx@mD`^M1+xFX%jaKotW(9 z=ugl;x1n`HTE=^plvG^YV-4ekX%Tw&VeWlM!`xscX6tI0>q;UlRn;r2+#)odZCXKx zGwX2%C)X;vwzFeV$xu9#u3M_xk|OO>xH>zdZg_|MB-08z+fS=H^_g@2oN84azYW7S z*Q&gcHtf>8R-n}psNo@w$`dneJ0)9iA4VcT0H}Kt%2?AgWB1LNUuR6dkLNq z*FM-QBq8^?|5+=R1%LNZ)j}uX?_64xqWeUJ*}9XM-|Ys#Hf=~Z9GGp#6cE~s(MBs# z^6kDZh=QRpdlJ1@S$br}!+2>rYk=klv}`{fP$CCE5~xIuU!d&0vK2m=92pf94}IAj z8lXg`sv;s&b@8lK$yiXN%7Z2*?@WcsyG~)I<2HpE{w{@?jzbDF{0|jo&|IjaOg}K! zQHTcsbBTy}2ryT_h))ORY96rz%*7Vsk-%I>BF+Wo5*aajelGbD2Z6aFLtFsN#U|p( zz+6Woo(9ZyLE=JSF53_n19L@+nCa$X8}S@qE*=t>0dsAKcp)&Ct%#QZb48AL88BBE ziK~FQ07P5^%(X3I<|UWyh}Q#i8Irgbn5#s@*8+0^jJOV%YkR~u0duXAxB-|;NyN7T zbCrzvc3>_55^n?Mf+lezFxQ)i?*-;k8u1Qbt`ZVI2>hJFO~71~BKvI(xm-#7AuyL;iH`wub&U8pFcl0F1<#+g|2OIko@oFy%O0H`u(%3+*|wVY*&&Ug~*c&=0Q zbeP0iKKFwscXelUC|58IT+tYaFFGqB`|3ai+lmm7GAfw8(5 zkt1nTem5BOn+&|gz>Nm}fq@@0@XrnWM+1+tTf+?+cp|ZC?^A(wUE(Ln^*t5q41Aq| zW&b!E1k_yy{Rv`~uBV7q9cuyB_3hUN&%4B`UcFBqh2t^y={RHV#fpvYB`wA2f&tPi)(}`7H z@eHQMaxa0B!?TuJ=A{O%H?X`;RQx>WsQF(r@W;d|4qp(f_QDQHw-=sC)I8kVpyQKa z&}SO-xx`9NwSjLiFvoN)^DP6je&{*|as;EPM=%x#BRF8-fd-cLsOsu)gPv>Pu?Ajl z;L8jw{fUyp{zS*^8Ux>8;BOiDW&=yxRC4Y#==U0Uhk+k9@S_H9Ht;hB{*i%SH1Ht< zziQxL8Ti)*{+)q8Fz}xY{AUAyVPK1GQ>9VP-7C!RC~1047}FB^2T4qVWUCcWZ-Wa_*MhoZeZyf zm7IGFIyZ*twDa>T8gtu>#!niU{imkCVBnt^_+ePm}lcO&ol#1H!yciXr4<9Jm0{T23~I98Uyow z11)ERfv+*JjN_{8zGcv5Ojq+0xl>5t9pq8?K?8Gpho(Pk;C%)@U|??G)ckK6nD-lK z`g;cEwoXm|+`t}==_)=k2A27Qnv?V*U17h02N?Jp2IhK#<{xd~JOgvPrRFIzaG8O* zlS=bkYT%Uy=GI0%huLW0O$Pp^fw_-S^WS6O2MqkMf#o*{e|$jkr-iN$$-sJEold%% z4`-6Du%C35w*yF5cnIk#KTjuJVTW`z9~()!p5u|O>KLLH!4#*%mET7yT#2U&i}BQP zka()F7*8DsKd}mn@zl7F(GN&HRPxRGvz>XRWHOH0FW1nLRGfz?jA|G8PVHdeJVl=b z98`D_F#CV{y$*Pq!uJ3dDf}!j`+xGh34Dpdp8_vbI1S_5Qib_DsY>CCfVp-@zud~c zUf~;oH!6HTF#CM+{0R743UiFTRpBpz+2@m|7tBV5dFRdd6}}KA*8|B@33Hdi*TCdC zZqo0B`HaF(!hAvDpTp#qX!3jn^N_;v$i&waW}o_o!sCIt#z_8o!0#!1Iq*@1ZvkeX zPo6OFX9_A(XNUIv`4@HN1W!rOq^ z&r?3P{*G1nKY;TUeixYiJbAtVzChs=*ozhB$D~RXJ`cD|;YGj|3U2^jrtlWvYK0#M zmb+_Uz6>pQ*TDP(^tFno3mQKAcE%w9Ece&|pACGQqR#@}rtoUu?Fw%OWc}pKcn!kfPYG?+S)G^hGDUvC!J0Ew+eRyeqUk!JmkG| z9JoQ@D}irQxE6S;!q)(En`@Hl$9TsbG4tn1g%O1HtioJ#`jNsJz&}x#`SVkS2Lk^> z;Ss>xok^Jmz}%im%rw5Q@C;zClaoFh_|FP6jh`x94a_ypB-K|ZD$ICdYqroi4h&Q{ z5!g|9An=(A4+cJ4;cVb>3Ukb%(szwA%{D6ll#D4%IFyVdSa+rJL))xuN@>3`9x1=V zulx=GpT5I~bwc}PJGjNN64;uJ& z1HWV7V+Q_$7-dHli?KoDWCQyRe7b>iiB*}(_Gg6)4f-4d%Wq!A` zkK}^{rBKC04ac($A1o|;tu)^x5KKPCo8_#P=F10xIH(+A2e|Lmz5zSyE!|jG=0ThC znBGj#w9@j}{!Mv>kjFYgd8oz_d24`8d0g*gI9h3Wmw{l)yBG5CFY;K`=th6_(5Ad= zX)%z9^y z1lW|9i8fUWnpRrguRt*69U9`kN2ENCgIeBkU{l^U$jb#yD=qIM5KMUur&(4RXq1<% z+?bE<;Sm6(UWL3mZGoxfMI%sC-Z98yJEuH$ophtTOwbrVt>&Oz|5XbCQM++IYswn} zL7aO~9^0Lk$M@vg4`oirB5adE(D1Bwd|nI|&vX**Xz-cgzAy}POO!FgWuKzMl{GvD zsMK@l?}OR`Q-{lU6Q;Ze&vf5eQy#}pEpJ}C_;Ji&{nJXzjq8(UzHB?koog{2gP?W3Jkm~H1?1Ie zA>h;S!FKXqhdlC89>dr2IOouP8lZI;g}^(1w9=5KkzLlU0n74(a60Jh_bHG40-9GF zd5`sX=S?7s((pVVF!NqvSKDcFTG$2-ZwbR(W8joe)1Q z!FAbb?+W<$1_G`vA$IKNW0&EVS^ehiaaK#%**?YUU3bHtkCMuhr@?CmzD^%)^}Zb+ zqp!bjcURy2jk}g6*I!>3yK!m8H{&MdzSH~OUC$NneQwE{>RA4a&v1tOD?9FpEH9=1EW^ql#zPKAt)7k^LDB|6G=<4n@ms<9~ z8nHEO=+>8xgSgV|-Q2jL2afs5*@XL6?w+ET;Yf{3oyI+J?<7oeIv3?Du30cT7U zO8}qpCV^QI6Gd_|AI!Cs8vxFA?aVf@_pp-bi&-W1Xe*gs?`^fm1(7s+xh{5AUwa#K z(=GPp^gabFsZ#9A>D!*3dOrtoc+btp`` zFcufl_yXEvZ7!twHW>F&x*Wu||<;Ug?r)+yw2l zF5hq$!MB7yi$b5AYu#9%i$CTGX-6rL9c-*`rk->Kbz@lGFh!+|zTF+8B*^d3;h zZw&LuTkD}X6ZKGjujXmLPW*b~dWv6$?>R~Mh|kvzAF+tU#d{$S=OO(}PhWXS*dif)P)g=(c`CwhftQ-g0r8@4xp@UWZe7m=a4)M^4_E$1yLRS5>~ynkT0& z|3|+|o2iBbJzmhR1`HWPG$xxqjm9}WM;V&^p|hYl{87b16LYj7o#P)B>BJX7lm269 z$|jv79eK{IQb^0 zuJl1ST_g4J(Y7bpw5#=1=hrk-TM=>$O*^$YFZRFo5E}AW6%P>0=1(UCs7J?dd&Zc~ zm?(8=XE#fe6REZ@5x&m1Q%!+h+4bH^@ygd3O?yhK1;`uu@~TVj_$^d3wdBVrYbdXr zE@&lmJjbS6qs!y9`bKhq^*ITx0(1L_@&U08Xhl1gX(NhuN7-1{`R!9RJ<#<`S3zSW zP{*-Vf2J9=P_AQAv7PC6Un~_HKNP4EpfwM}*F0Q<);wg@Jb;mJYRv%VH#zyvkiXlA zIXQko;h)3gdK&3i7M8Gx*-voYj(9Xo=1DRcporsDoQD9Dhm~?HF?g5`;&_#@Qx%u6YH?u z`HTj!mX9A=Rx$-b5yu--ZFf^MSb!ko<+fB?=b<&r^5?aHYbm<6LScKkGH`g(I#2 z4k^rj_XdTR0rQ*_c`gIKL*X^R>`zF)4w(DRiCN!&sPMOdpH_G?@be1a3;d$OO~5ZJ z%+)pSOQf8=z`s`b1>pA;-Vc0S;hzC>Upe_XCbKUhejT`r!oLFUrtlHqo(lgKxR=83 z0ryjw^?jhitnb`QPMMr1uzw?t0hYals@!ESAuxw;?io)4=9o!kvv8rL&aeV1rRh?C z6kX~e`4NTN+N0bd)O` zBoS&q(!o7p0bqus^CbifawMPUz@mS5gB+2!Ug02#P{%Q;WqqYQP8YPi?*LPtR(!P> z)E1aJ&spb)gV0n7$?iT4%42?Oc|QO)0na3Zu0_cdU{yVVtiFa$KMwA)WX zF!NTU?FZ1B3VA$R zs+D&81O!vwdywZ->E&Ea%Zq~t`e9g9cVL1y0DM}}jaudlFg4$^-8$dD!gGP@=aDM{ zg_`Rkc~TbD82}p7o(n!7fl}Iy^A0l|pP(br^_l&QPKV6ZwP%=zf5F#;B0v&>VTj}`Df+r#N=Ef8I5P|y3HcsMZk|+P15Vte# zn{gjEp13OR`Z%lpk-hO2zLv6US3Eu-)Yw?ld&`+)>^r-JA9*|8s{iTR=UaQvqrYc= zp3vp&EuGS3lRp7L^e$PPyFUS+S&+WxWcx*ai1fMp zMH)T7LAqF`c-r#Ymklzcb6XrxfOgCuL6Y)`>kkHOtV_KTzuQpLUsV5e;Y4A9C->{|0_Wj|)8zXF~GKyj&J zC9^%FD>i*(Gyz@<-F2z5yiW_Ziipb)_>0FYscYK} z1o4Iyt_iTJ8|b+;pjCi2pN3{A?u4PlWGIO+u&HqP=L>e4nb3G+KLEx|7t$ydSVUtk zwAZTMa2LVVE}ce5(+M7T>3E8wH2${Yz1uKc!KE}73UxZ`QJo7}ZXwG;V~) zQxqe33$({tD<-Qh@?YHW$P_2qqWBQSXqd{h^S719`T~vO|8^MsZ{1R8y(Rc6wbLL`UbXWEVEwM1_)1>LYxo89#CYQs)x2`o z=1szM_FmO)KZ5Hgj+gz4ySWcR`;i-n#dSSKB$qEL&fV)^d)E`WH(I+J0Xn|@zqGQ- zioA|Tmd;zHDgR#Y;XB!;a4APnwQ?;C9$Tj|RiSxs?ec%=+Xd7QJiDzB8eY3Ka5Re9xYs%hs0yj694 zFP_}$2;`MtjIAWz=Zc?FqF5V}I5%(`aHM2eJNS+hGenv56LVt1i3KrdA(t!6sSWu^ zXN^5m;ju93hji9T`XOd5r5|ElOZonZx#)u?W(uhFdLmnaUdPNN5ByREpf!fK$XY++ zq2E)=&lQ!W{Hdzxy@=V|peRSb;~YY)_=g%e&%omhJlVj-1}-=75(9Gn zwFa&;aD#zwHL(0tPCXF4J`Fj@tiQ|UZZ@w8o0ZGQw-e8z+8dQY3CZb#yJM&`ktn9RYGH_&niB=`$N-9 z419@!=Np*I8Jb_}ypqGk3{9^yFjq1({SE`)W8fbcm`fa*pJ(JWHunweGw9NPs)2$1 zu;xz&*8K)xgl@JG%%>ytp1^!hM#Vc`i21{wcQ6vOZyupA`{pqUa|}6GVfOJ86z&In zp27owc~2MR@W=bb3Ukbvt1$cN1q!pTSfTI~;L8=}xO9!e9FM-KFqaX&t1#Q#c7@r_ zb}C#0tlx322Yyb`L%_WIk#S?+qTgk59YDX!WIwInWj+MVyI08H1pJ>0KMG8x^Pl;p zu{jPhFErikXP9P9m$3=*sfwXBz0APN47|?3fL}}X1{bPPWY#mXoiDmk1)zyp7pP9g zHyCcQ(5K=X4xaYmaz3LK>nGLe(8NJ#s^b`Em}ZXuq*F7GCqV1C0?M7uLkN`8@`A9N z^2+c|fcZ>$Y(rY!#lWUKzUz3`AZWp$gj9MPhx9=E&G8)RI z`V;uKwp_lk^zJ|Wa>W}@_5Sv2&&@voPEmIM35z#9@X|+rd!zaGHN_)*$A0t5^V;q2 zHAjc+tn$7)?Weu^9Q6<$tj-Vgot&Iso>dg+J9A)BdH?x=zDq{WFCUN<=sP4ot9)SD zeNHg!D+@cAYfKLMM}$I_Rh#4U0cVB&ge&2*eE$Cata4v=ctjxJ!?)M_hqA-@fq_%Q z0n5q`7X`Ac{9xgt(9MDV4f`DDps(SelbZ-x&iGJm0R`b}?Zeejh)0R9jCF;w=9)40c1w#Ug0oWyemz8QaBuw`s0Z_m~}*?ZuvF&sK_ zh10UucVw-TJNzWxdgrZ$x2Cf~d25%h&0Y&{EeAu5%bcbPUt@)nJFbnlpM{RS={xkQ z|8NETRGk^htN5TIy8?ci_JmqyJ5?pVmJ%oTqBee7lb4xS0&iubLwP0PlI#+At6Cds zn&gxf_?ilw+;V!mB~-h`$dxh3l|Fd|@K!h~lvi+|AiDtG$|^!t-**bbzN)Zu`(^Of z@M5U;AiXt=k<1(mZ~gMN!dq};C~r)2PIeBw6_$j`9(RJ0jXOf{)_6d9LrxtF`x+ng zZ!b>?KLBrt$JVV^Y{}jNZ^434;X96V)K_@aS+^P9s(uiv4Kp-E|JYhY0^U-?N8zpE z^3WAWmmbYN3U4Ua;5|-5*cS{tOYVlZvNfUFwe*JQAFJ?{E%whZPg@#>w<9Y;OT(q% z>@d7FYza9pI!6xroP*BHN8k;Wr?!IL5dC8%zQP&)qVn`osVJqP(t}e`OW^Iu(NKd_ zk%m3as%27Z71`QJ75U9c zy!Fic%3AU#dP8w_>l8)AhGe`h}Xn$ovJOlMs3lp|K>p2u0V3r zCa3nB&fY*q?M?JoTNkQl>9wyb#~tT{ukZwdN#Bm>UG3}&WL8}Xf4!^L(;sTh6(?9( z?hl1eEIpBZ!mTXM{pf1osaIAY(Z2$o`jlPjlr5(ZR2Zoz$Id|KQtI|BZdGac2o)2e zlWONUuLSxP&ShYQv*`)drIdBDu{qRybgEk?kDUk|JM1*P2_HSHrhzvlcph+{;57O` zO_};8d>nZu)cj`No7rz74CHI$e>leuf;YMBEId;kKKtPbA1F5IvJO2RYJN)fI;e?9 zUUC`_I(y4A_6B@~+Ymrn1D`2)!V_xv&E+Y`#;x0KF3&)CO?QOE_L4!s#V^tp57 zg!6HE1_~+oGKwm_h0jzxApjlJ-tyFs0~rTiMi|V=7eitTyKMoTQPZc+Arav0fWKZS z=#K+wMscTsKm71^@!j$ueTN_ZAkqLEzHpjU@F~ZB53fl_KEg8{PXvzyzFnRUFCTow z?ENhC+20PkrHF{NeBd-3b>1$|csr1K*UT+674!;Gj$36;u z@W*DiWSGytc3R$aUMbIbC6IRLaTI5A)6;k+;R&xu)UNWRR{|N$Ps8hxw?c=1wbd;m z7Al**v#UH~S0KIVR+Nvg;SM}|;t8*k;XQXD!|#AsmerF7+~)6=6-rmis#nV`D5XRx zt7N0Bk~=A@aBErp1icjnY!9GNlW+wIS|kd-@j-^|wo3>IKZvkVPzMft*0GdOwA%wc z8&5dLet>*#(=MfGPFheOI!(;&-fss`qRGdOI!FHE9IIo%Xq_8be|pzTDb}yz5|;gukjA;1BXL>%Ya!x+-)jYJ91KF%;DYC4OXsQ?&{sB-zn4i^?-g z**!MQ3YAtI*e88B>+LM(PzikWL?3lzB|u8qN{o;6gw~l~-e)R@&=&OICE@$@c+oJ; z!T4DeNUr^}Ge3}e3|WvvA84H%2H7WaPEm09)$E~Y(oBDzzahuhGSwH%@xK!AA+<-& zM__5e3n3;YI3W^V%G4bA_UDJD<}^S0Q%ptGyrOZ0za_`lm`?%o1Bq`3`W%@E0qG(j z)ew*>0-DZ)fUUP2=5UIMlm9$_V}Z|qmd`1GZ#0#DM@GYUFXvnYpXQ8;L_SR-k3k(n z{|kpX&M}Y1`29J)rYQ^?*@Qegw!+B|B$X|M@AR@o^o<^KetG&*MxL3K6TauL8eAL3 z`kQim4b$A1rR%;o9X|Q6O`EAgycyd?$BjMZUoP)4?BI&xs+;NjLvWl%0hdH}qmd*AzmPnSB z_(uf#&t`#mgtmax}tNl%DePyG3&RT?>dNcZ!d(gsrqlF^|7)lYgwDZI;8v&3TI}PypkNUF$X*VObA3MiBakd9Cj(tY2=)cg@f5x$jv*)ADM-OxUg!&$Q z-d}jo7wqrzAM~SVV@ti#$--z_jlsNk)#db!$=LSt-eJy%jtmQBA6$A+>Iv$;^Nb&J zJ!hEDzsHZ#&BCy{68`#>RXSx$=v69-f2qugP7h`8DcvJw#ZGaX-`V0ja=OpI#lJm} zgg)q4DFW_SScC?aSvZ5fRU_VlfSbM%%HA?{i&SsclPmp4*7{n$;q$NcZw&O@j+~l| zQc6J$$--EhPv5FFGrt;63uUj(TYH#uZ?}4*X*HeZ^XH(RBo_tzg~wI1-WceIjDv4v z*=MZVRf9v>{XfW(3X0Ni_<_GE>}xpF=Y-KRd?Nyx4qHZ=w2Ty^Wu(Y-0zYT+!Uw|A zGB7ErD)Kj!_^MDrOW3A22Kv-aL@}pha)7}Mm0U+VRXQPdDJ9Kr6=MaR>aRkZ&Qopr z*l5hndO5imh0-E(g%Ra$gO<7cR=0j};JeQ6uk$sce%0Y(EA+i7N0woJmsGX@#g&fY zLcpp)>q%PO6?KQ}kY6Z-!iDT)ckxcF)Rtc%svL1gV8s0y{kbEq{9dWe4dso_&f)Je zR!!Eg_ng9`EYX_-X$?;xt;tPKwI6YtrCu%wEj=1`M`{c#wU6Rg1pM{c9!PJz4gP!> zEnh*ixRXJ;!|hg9D^BcDtz`IMjr^Wdy9NGwmCZx-Pb@5DkcD&TNorGasnn*~p;FW) z8AMnYe}bQlke-4rF1Q?BTm}kqd%#z=G?FjArL6u9Q$kY@*0&C>mvcmWC6JmG=;@z} zYS6o|7-1(GwKuVp^{)kWAN3EvZ0lJCS&#Vh4`HOe5=cIjhf3>rMnFJ@Gm=4a(kC-} zR6hLvt7i|zT7R+APy$cs7*Gy<08g1m-e#yr-k~QXire=CVYiO1k{lHLm!PbI$-5=fO;D;Y(M$VlMdOn2Ia5LEv^R1ka z2M2_*vkzp|%TI4qkXM~DneiTZ5c!>gUTbflk1;#R2y@cw-yRCTdBvOcobNxz8&aQcnR4VAF?y$1>t)mDLVC2TKzx!^wU9DRtZ0F|LDDefrsDtvDbo?Ux0UCZ@ck=q$l z`lxFy`cZJ>kItQx`(Z-NM67B@FWnBWrH>ZA(BiuDQoLHV=ry|BN{CHJyEAtEU-rdX z=XZHxvVDHsc?C{E@h~++07dr~vzn&tvWMKHcS|7}uq4I({xsy8REJ*$Fqfw1n8qk?a3_Jr+ajZ?4@w&Ivc} z?pk}F)7Y4ND4b|@4K_7y-YypbKK9o3=QEAl1HHQ%5oWS0CI9*41W(rZ2S>sc) z#;0YCPtO|PD{Fj4*7)Acf7|xm?N=ej;1B;tf_fNu_E3>+Li;ZRDh#COo(*3euK|5S=68bM9bf*nJ*MnU-wf1tX zUvqsIPh0j1+++iLgc5mRZ+QjCUM?(0_Ljdvizm7eyx3cw2Aken&iC|@z2yN~Vx!B+ z7Tbl#F1-`@aQBw41liqNj++P>UXBiUqmpkutZpA899v!+4Pdz2YT=e%Ekr`Q z2)>!G-M&Q|_kdvIF&S4NnJ(j(E@OH~ICj%@dM~*q@=Jzp7xS*i6NGVyW)E!p7t3H+ zrnN~92+XfM%(}ZcZr#chPo@&&X znaYJXiNa&_Dr>csr5sb&DcO)4T>}UBYUPMXw|Y+npPdQ$xKW>Q+iVm~CJ(@Z`T!_A zBi2W9DASgdPw$KL^|hJ63Z^NW-ul_}hkFr|3t+t--dQi0sI?L|SZFOp>a65T6pII5 z$g+kk!sxmqaUvq%y4$&Q-dw1?hvCc`5LDh{gK(Ex;8~SvrLsg+1+fcST|kvq!*AV4 zZRle4D`mkChIuc7v5X5Jcvc1rDT6h^c(J!`gyQJVmm`YeJh=0z5}5UYO=L`!J$V47WrfApLO z4^$vzeXgR*AV`cg4}Zk{$q>&4c@%m!N1bqafn|WBI%~6r= z#$k{&G#BIa2dus{yET+Vgc3P^lGOHGNKeC>jv~>QO)_>V#x0bo+5x%io)$sLM-G_4 zXD?V)ARbsVl-%ekJ!$P7Nk{bHUTxBmsl<>G5$|JI;jgbsmU8VE5fjhbD%%M1E7o{7 z#DL4HFSTTPvfLXm`?qyrMS$WEj&m+FI7E0Y+y_g#R+9m6t@@U8w(>Q z&V?|>b|ox22SyDl4yRhf5wY)944Xh7rd*5w@+aF z9-}Vc`!J3RoJk`EInl+ce(jnYf42TET9|a6#6hw|^~19Y8s|%B)I!Hd!uv-N%RVY= z28~=v`o%QPlcdk0u~3qJF^$EN^jS3Sl%&t5aR{>+WD|{7B^OFxqajHz{ElJrs< z6_WH~8n;Q(XVG{}l3q+>pCo-2jeU~zVj7Q2dguHQ#@}4nSxN^ZIWp>5B{cp7tx_6G zY)kTH(@2)&O{XE>C9`JJ7$wP@PGi0#Z!V2*OY-K?xJ!~Z=WZC!OCits5sXhHrE_Qu zk>r)om@UbhO=E*3uY|^CN#1N4-;(5&(6~m@H19eX(I`FCuFjHo2GUT=bXYTJ{193t zFM;@g)ZsZa-jtLU(>N|EokPPb$t$KYSdw=Mjbce&DUIclyjd$@Tqnt!bpwoMN!~0P zf0TlpL8Ff(Zw`$~lDtwHb0m3}(3m61n?a*kl2pC>?ts=kmSu? z5947;-fSAbmV&&5MmI@bQ4bh{C3(|nWJ~fcrZG^GH+L|Mo|3$|oh1)hZ6RcKIxSbT zBFQcdoMwYJD-Hf!2O__lNi^Jkj6T36>I^(9ppn!iFjRdPCp;)urmNNrGP$lZv@6Z0 zp^?QjegVzveTyQ(k&SZjp8W^XYmJ9SpHvNFJv7NQIWmJxgEGwC23Bh{G=iX!3*9yd zao|trUphn{jHkHbl}HcyYD{8i|`l;<19^S6S3BG1p| z`LR4dl;?hf{%67N)8%pT5uv{+Pgf3~p18e2!6`b#$Gt4K^%+G9?(Rj^wxXqJd5V8n}@u)CKovyeT4JrerWkyU7HvkFs5!sj{Y923brbTSAB@r}dO ztTnL%by{1GY_=Ye+`!9{+oZrPKM%9iJq*cndbpss^-Sb~m8)@{u9K676_wcH=ekax zJZ|{B@x?Q(`O8)=xD>Znm)9)940_z~iR7`?uB^UvRaNu-svz{6m-X4B>+EWy@Cihb~^caK3-&g^T?|aToU4i&v~3GsZu(qGI)m1vQl` zR}5XXNK7zR@R*uuUsY3Gxu9m~nw87SYbuv58altSrlNAuvV~Y6SYe+2lLLzp5)TbB z#>Lg;D^^vktX^)(1;FaY&66FdJjJ2M@sr0DjUGAe!V4x1AB`+Tr?3X`URiCK@mQd; zqT`*&|4b*pwyJ#Is?}9h%PJR?uc$d=RrP{1+{?qyXy4B<)l*hf)>sRclvjU^uDfdW zdhk zw?s;+Kv{$d;`s4-{vivhSFT!BvvTFKp%+Z@w^~*#9y)y3h!Mk_p`&t!E*?3$V)$sM zV(7xk>YB?>bE}tZ^Y*)gvNf}2(TY{&^QNq*SZS3^pD=G+{`3o{l@w2yH*HGsgrafN zrl0L}9hW}^Pj^N@e^mU@NQL>Ds7z&YIzr`#=D<(o{?2qU`8Az>G^Rg|$*B*7y1%|G znYfY837J-!hw~VA#Ckr{84rF~3lGha&{@#a6pj2BK+}zM&h)5ACuaOf=j@NFGx?G|8%(c64z2z_xU=FZinKsM|$DqA163 z+eIWoi^O6jo6#`zg~Nx9#EsQrRX0~hn9Z08u}!oju!W1}uUR*30H_edF_;6Q$tLk_sb)Qy8Al^xBDzD`? zt#D^^XjR@w*WuE<)}U5LAkI8Y)$z`3{OU2(sn0&MNwz9)n_JKr9=m~7<;6`cx>2)3 zOu|VLE<PSuPt?L(C#JH;fN6ydK&Dt2N?kTy11tHJTd?n3DI=srmc#Uot4HiNEk({?=%&DtUXW(f564U zudoa}3d?|`!eys#n{n{FenqC@7n!QcOonqZ1wa);6O*@EVe%dXfpmt?r4eF=-xZ?( zG5)PAEP7~6K4Qj&I9{c(H_DoH<`Z$eiYJ#9k~xY%F+5_%fvu95G_VV%Jhmp%8HXvv z7>PKbEKqm}OhiZMjKe^MIry>OB&Xs5MXck-r3}&;E^)jnuOdZf9Edgj64DXw1u(0L z;g@kE)-thBgcqRhx-#owvg!t=D$KAhR6LZoPT{REnKt@mwv14igYG%Rki+;8$Ez}( zspyOYv8GF&Kn~-+Oz}`QvF2fT42uKvy~L2uG9}h!v`f*`VG?UPzF-(Jc$hBYc%w_}iA2#a<4w%CQR}n)3{szgWZlx|TA4K( z4@Au5}yzi5M z;Jv-Qx3~X$KAD{FJoB7q&YU@O=FGh3nS->oh`CtW#bj141fH`t%F7+|knFqNFp-#_ zn`O;kQW#jbjCn^2wNYldh57i0z;ZJkw!y}O9alJ(GEw_gPF~}9mg9MjXGAF;* z@lB2!9B+1fkK-2{|H|d4RL z%GXh@^_<_3wtBwa>EG^{zSCAFdmYPf5Nh*xl&j6$lq4VP_;kmdWYF?U zjK{G0;N+J%Uha66<7*w)JLb1SEDxL;!FZ!%`H@-od#97%<#>nV2OV?H1he_L{!fu=?QS>>JqeE_W>b1l7OR$)(Sr@*AD}X2%;H-{$yE$I`D* zJ3E~GLC23ee%$d-9Y5#zb;tki_z#ZXb^Mv*kbMTtPp0E+$88+9cihFX^m)|IF;3pg zaX-fc9iQy@6vrbRpW%3%l5YF3!VaHrJ8Wrd)Sw=UC|HqZ}E^l$pH0GG9$_%s+MbN{!>r$$YmoOt}Y` zeGJO^j8dgM08BRl%IPG*J_b1h@l54kBc7xD2=cfeg-v+ZULHi$r`3z3x3)R<@Gr;UiP@V&3UxLhWYBCp-o;#U~35+6% z=3)Y~9<_pi^CPjU%Un!gB#q``0`nXlr8=xTWn`^m{gn{~LzHQ=QkiySE+*)+4zi!X zv_;@5<(}Y4%0s~H8&GFB_(J6~z?Ujd0M{w=z44XGHDLAun06+ZeE{+-@b}4DS8rEF z6#P(`MS8C?PIbU~Lw#21e^th*3!YbIIlQXe4g4GB^zFzy^R>q+Q8lYS(n>q2X+>YtmO#(aN;|A+ zSr@Gh9Ok&n@f0$y5r#Qfj2AmzNk%B2>Uf~zp^is8mSOd%KMb=d*E&$^xX!UWzpKtVCyy)~`F|WLNG88c zP@8olPSAiVBcT)ilgnid-?GC=5RpK*_#T1w^!0T`i+mr!769=&omgz0Y3*)_veM2DT4mUh51E@;~{{^eCtOBk8eSX};gCyn$%2 zm?yk|7Cx2Pk&Z?Cd-GW2{sr4GXr0AsG-2)&*J4YuuH0RA}YMkL#VW1wrt@nSQ3kH8*}&4MA{ z4SRbJ!XEWlF2`Xpdu$u5jiilfrSOV3BUm?N?20QG3Pa@(@HvUY9%wHY3%dl~-bxhs zc*rc6JsDavf9eI(XZDf#=#KPl&_S5xEiU26-v;ehguNjXxP%dU23>==&=>vd|Epj@ zP5#)L+@k2If-8KB#K8-yGHD;eO=vVUxF6vX!bAH+TeJYNbKd_=t z#jy)2j=M89<;U?|4YB7MOJ8s7m-}u!O1iNoulg5h_|VToVdqhiD7&EZ>7Dyt*%}{@ zeklE^@YRgh8w;W>pWc6Gcz0vLQyHq5nVuG``8FhL?zp=}fGO)5?kI~shVcF0bQ-#% zDEF$8`!N7~$)AdA^3ua#$$R+DC%#3*?;YF{3|c;XZFXupF8EGE?~LtOzGv;LX@5xl zER1Zwa)0Mxbpxi|nf_4tR7xZoJhSYQoz)qi@w*30{&e_nA3Tl%jJ{1Uze%5EXhJ?Z zI1LqnbpiiFJ~xD~;~y)x5BO$54eE~6lf*X*eg+MEv!Ew7;F|?Jclyl&d}3e}w`Hc? z4LkTy!5TyJkaYt&#?M$31Gw5a7*9vw* zmYKQ(Dp_~nUuNo~_}`)>zE+U2Wfm|y2e!g?+&u#eAY6YQWUZ=Y!`&jrYS+Z-V2E1% z8x`9x!v9*Xa>Bl7dc7ZTmDfwyp1FOBtG&3|fmZXOms2};K4!$5i`A61^~+jMj(`4P^=V@Q!7In?KkfouN~cdt&`ktAoyRlu)G7nMCa+@HXBMrF7dI+s=VI@mcd9Zv@qMHiX@P%XS%ns$+dX_?T zX2(3I|=Zmg+G+st?_|2Iq;5`vaCv%vLB5|zK;NR@95mHFc(4xg~?=-aQg6=as_gmR>U3hlov{+?!bqu z^a38)2NbeY3#k(Q6WOQSz{5pBb9-iL45v4XS{*xMeIbA+ypT}%5dZON3_4v(+j3Po zyU9I>$-mMW-+byb%%?un-1D;{NA?!ok&~9*OF#Q~c4?YwB}O zCw!Z8u>-D3w-w5H=0eZW75UD$zKv}_$M7%??rq(^VZ9wz&EX!_+q->ZwL?=wLkhW5 z_~>(j$Bs=M;JGE~pD)KegdJUm`>?>VT7H-jdgo)F6GRQRFuttvWV zXn4_95JqE(1xqEilu1W=Y*Yu-D!yO37Yp}UwSmO_!qJ?OrEEHpWR56|V?>2mu$FsE z1QZ(5S2JRh4%c`_wvTGJkMVvV)f=Fd2)Lm#C8Nz)u#X9hxj%T#;=hFH_&*m*Ea<&~ zF?XU_k4mlz0tsy0uE#=`RmR(}xXB~2CL=X*5>5h^V~I`zsS*n|Fk-XS)E5>4c^<_{ zXr&6x3xr)XKhi3z33fBs{+GBAHW97_IGv_dht>-?X)?es6>x%>C(ZmUlN(@;5r$ZA7e>dPWAVUPQ+wBqM;b+@hSf&vwx$$c!zKSoik%5T=>kZ zlKyMAgY>^;+Dv!yC(lecZlYYB_vZYXg$w7;T2Qlah7|UE<{gzI zaR@y5Nu4GRuK%N+n+19=$<&zZXlx`>`xKjB z*4wdZ1!(H3=(Yuib5(SDs6>$saVm5hRQ$i(sjx|vImo9FjkgO2`^2%glnk67l<)o- zSRG<=LS#PvTkdkn>jbtfJelcQioDaRpaPWMgZIc^8De@*gDLU8((H}ka zac6cRMP?343J&&J^uItceHVF`XeszUvBXvobN$3->-^2c0=J*0E3EqYEHD3}aa!Q& zA1bCcyNPz#8fNwEOUQjPwIAy5xV+TtcU)d(_8YKVs`@;|e3_id?e|?t%jXh=^RaL& z)i%W6RNjpEZslEw?{`d_1^kD=2v4#SM&du^v`ub_r$Pqyz-gaN5#P&EhxsM9)I2O! zIrC0#srl!N8>VG*brl(DxlgjCWnQVnCh&*KY$o}XL7z8v`uV$uymwJ<34MklEYvAS zd^{P|l=&x{eWs@ln>~g$$UJqJ4>Fr_Y0i022s|V!XVx+sJH>q&_asBV6fqa`*(f7p zUkv@Q*f=WY!I-~=+V9ycFZ02W*GhU3^J+3Vi_+#bWgbF4t|BlGrqjzYUn82l!tpT2 z)sD|`Jl*kZ$9&miHm`8}UB|aL{(rwN-`-0j3iDS0WCV$HDvyS&Ve#P;x9skDhyN=&?{HbI1OKrdW8N;}p z4+61lJ^-g|+U8)^gXzES_$|kOaLivHOh07%pf)odXFKN4 z6Q)z__!!5%9E-1x+7w?M<&jS3>yG&|hS{I$Sni?hARzEQZs(f!al5C;eO&F!eO#Go zOy9Q^nUt%J+?SPmaKC!({Kn;>H(18DBHaLG-kQIv%>DBisnZe6ww=tp@EFNOVEQAG zyMfPAJ`P-?+#Af_HK;QHJXe`*(n96&;7gUKgO@4uoj84vn06NU8fEqw=}$}fTrho* z$aUabl-b7Iq0GM7kCkr)Kcu`FyhnK}_-W;BV4J&`{YKt{XrFD&FO_$J|3ubu{z#dt ze^KTs=I_STX$5Yf%(gsNxhuGxGTZFV%Itr2SMCokRUQQHqdWvm-yzyB2iut7N-#sn z%7q|xBQIk9H@Vakl}mlYF*5l3i1Z0n&iz?k8s@ml@f62%94~gf(s8}x^<*v2EspPT zywmZMj`up=?-=-{LL6FXKAMboqaQ`8kr_dC+OT-^U@d zV8<~P0)HGo!*TGO6k*|hxQ*pfhsE3LfR&+;S)d-nH?WY)u`q1ILq!#0+QZXr!rqNw z+OxoMVCA-g*zBeGc^v=O`a8ZmYqF{QDV%6_=FFJ$o=ze)A+kWMG(6o$xipHp? zTQ_^pL+0)6L5I@nGkz&e*!w-$($LHYu*Z68!M6Pd0&g$1OEmVZ2y&dlguTzfmIfH) z;G|YqWpvv<0egG>VDBR&q`mgKjpwZ;WVFZjis9>MaCxt>z-?TlUxwK99zNUoOXj^d^r&y)#N6nfZtJ#<}qD zVD<(zvo|yz=@mf{MU=3|I^l{nI1vJVpTmM7V^>_klKddp4q-9msM=x=SvhE&TPd#d zv5;FZdwl&Q1Ki?KIMO(`-hEE&6Ag4b@;J9=j>X<^Q2k`5J%b)i-j-QT4j;=r)+K#v zy8U>1Ed49NsLTO7in2T2-B5r3UAr1?c%pI5v&&^PT=j@n#f{~~H6@)njkTZX2&31E zN-zOZq?esJBap&w~o0{#_A{y_;F>hS@*961EiFp{Emy+H2)o|pmK1+`dh>9q} z{*A$<&n``y@a)7!%(R%DxuPN{-=xF+I&B?ZbNkv$FPeQz;qvT);df=Hb{>$9i@bcs z&hzf;CMJhG*Vy6p#*$f$BR+`Ce)>e^?t-ZyrXQMG5j>W~VSy>xs@3UT+x0732R=LE z`x6ITr6^3CC2gbX%yr5@~{Ep_~e>NP2(>@7<_jOw`HdN0Cq5rk7J8d zIQZz$d#f)-$Gd($JPE^EuH}7;}bNx?_eTi0F?gx%P4=ZqyeXH%#9H)ZvPWjWkc*kgmNZj-@$Jr+Uq z5|%vPl|Dg{^UD%4%B~J0w9byLt>Q4dwWBdwE9@QQRYHripWG)}XU8(ju{kW0fpM4< zC~q{j^II-Y%65#Fqwp3reIPPzL+-X=2N(%bwVe;WnX(y+B4pWC`w&P79lx<;E zyRXQKY#A4w;kj~#tJ|P!5$wQ%;dV0K5#u0nQqGZ+a(398=ZAypWT;)xLf!-}x18{r z3fDh^^BU!3Idj675K#qO&iy^a)zOfL%hzL-kM-G-wG~uuk0o0&w}Q&lYbhfQS1^0* z8@2liQiQTKwpJ&&TFFvPS=+EIR|XocVp95*wlBfIP*z!dIjn8rmCRqt+FO>jmobZ1 zQ8^ohmm`{Dd8%KJoCGZ>vAQ1apz~ z7;4=cSjk|mld8lEPd9bA21SxSf+vs{S~T8~EkPl#|3Vge(D4-LECetQ(eOs<7qapO z9a}(!8(BEf#?6V1on|0qhBP#VJlQDyys%qNo0cg#opQ#t&kJ+Wn~RlTMxm1+Lb+pv zq7E)ZQ>=14NTeM+=@19`Wp;6n)8f0X;<2EF9$5F?^ZU6=^GBVw2r(11$ zyzVAq;jlZ#7h%D8LPi&>m@%IwA!c+fmXzSqWg7_pB=U)j8U!b>sprwqAma}sG5#k) zClCsfk@P4I8Vt%kLV?k0EYUzk(sj`WM)ipeBtD%Y1*3I|4S+T_p zGmoE!TJj$nlj%oaMpF$$BQgD0&BUn8Vvcy^xW_D+HY1ukB$kC~FEE6W6KS;KNJuaT zHO4s21(*XLmt|oPBOVT7SjW&tp=DVug_5HzQ)SqrXh08^G)0myWrxTv=e#DM=4n&1 zqA{I^+duO2W%nQDHp)xNXc@MdF2{3}{LkT0VZlXX<5vG5hs<%GoX$jN=dg_{FpG*z z{(&K&ET>eK03^|v)I4C ziAJsLJ58({Zg8p0=x~VPqfJJR%CJIe3drbF%og!KI6uhWZuSjaTVF7A6rFrIeEq<9 zVls@e$8 z{$SpD8F$4}jD`I;hDIryv49sFX2!+eN~6C<&$}2Cy4o(f`x%;r(o%ch4R%{7$_&R zBgK7v6N}klf5-C4z77NR$tJg+3+2I=9Sxhf$n45#Iv_T&Sx2+l+#rd%eYjDwiNsB9 z%Rt%0Ha~hcY4!hu`8ar*lYwJneSpJ+Uq$a8Kb*LbBEKRe1xFqmo1at$r8Mzy=6c&^ z+wp|#!og!>`COC?DTzxXlCitu!@*-`@$$fhgXi-&+HGb2;?35J6D7tAmt$cIodz4C zZq3$tAzI*eUZ@PbsPj>tUzN4!5g;GG?wzLVjHoYTZE-(K)LpCBQg3y(E4`Z?G{iPh zw{=i1?IGB>Szg4U9sp}X*pXZDnhJ~QFb}3vKvta&P6wD6uPdxAme|)*D)yDdzS^lq z0*-N=iFlzhADMS6zkryvk~$pQz_esGx_qBUW&_VgjbmsT$Tr5cCzv{{8bip?VZO*V z7I%conMZO<%^UN?w7gL;Ph{R4ZYIMH^Fp?L-9kBZ*uZa99cGDa``V#$mL=Kt#p7h! zJ&6BAMnaY`+3dHWoCl3SwsFX1V2L5|DGIFO-; zx!CyRVPxc!VH6e{N6L$e8{3sdqli_hJHkRxau#K(# z6XCMVzG_)e$ufa9MzotK>a*G~SXlYi(qOidn3 zI$4jsD_M_yfa5uiH#q(?S<@bk^JYB6@kGa{dWmz2qzPuR+PS7VV>X4x?0Fa$JMQkd zzvID%=@>=GaSp<98Fu`KrByE+|d zTU0K-56bcjo$_F(&mTMOn*EyND#sHX^CwBG&lfsg~q+G@gB$gjoaiucl-;-{4v#Z{21v2PX3YOknNu4lTPEt{1w(% ze&JOeKVG`K)9K}y0~stW$4eNWYtlQ%f#kHaSakz={1Xg+yQF`a*N{IuiO9KY`PEysUw{ITQD9LqgO_scQEwqNPz z=%Zk+y9NuucHd{;)UJijlrs@R9E;g00o(lxn7Dp@+si(s*&ycb-c z{4$t6P}JWCjw}BfEMv|ge-m7)a<=g@<{Wai@iOKd%x5SWa}K6Y+t;bD=bH0UkXbz@ zDi?y;7qT()3zTypU#!e$rpuN2OWjK4IGFt+rY#2B_ohq0^u40IJ9xcvPw+eYGg>2fkmK&t5x~*++Oxc`W!zW%di6Q=S6etGpQey7HA^_OEDvHTaLp z*MJWw*MmP%z5)Cf%GZ&oW?61^LR|Y-tiX4_c-3^_({jCuV!aIS?kq1j#)2F&UZc5{zxAKWzG*rIv(x#Y{#=4*E+6qe68bkj-#9$`F|WLNS5#!V4duY#X_nA`?=(DUFQof zp0jRPn4a5M7f#l7Ejnon%?37!9%I&VZ?6jWn4b1f9TWD(gMI$E&s;1P%r>tRZ*L0h zvEI=hnu>%ywyECUbgcWpZ4C3UkeL^TFVb6tZM;s7q_+$@&G*atW5JH&G6?)})Z;i< zhj<(8v0kl%%!1|b4hX!x zpTQolGumUDYW8-6Y0m9YMdu*S)y~VJ{_LuoX z6-(G-U9&V02aT|o!h{-ZTaRY;cG8}fv$YjGUTO0X+cECONoC*20_}0(AV0>Y*Bv+I z3R6-YZXbnz+RVz<^Po4dnI2cqg&y@SY=B+|TS08wCIWo9WF8awqOn}!Sgf2cfS#p+ zIJgh?HaUSI{a?MkQrM#&?G-zFyk)v-6r6=h!ZzN5A!Aou!87g9e}b?((*q|%S| z_O|0-zh=e|o4pfy_w5&V;fOvG{RR%`FZxIJk=We_J3=OS58+RWC&f@;rt?az149CF~a0<N|GN zySd{U)~yOoFR!1yJhzgXqpQp6zg1EH?XvHFtIwWya{D$6ykhW8uyoTEomOA9>5l9c zLk^5V7w+g_T}5zOdHu)BgOOtT^RnFG3Ii|tEG%)CjJvq~n7nUFTA zdSXeZzPDZRJMnJ7b4*2$oq6@fex;BpsS1duMhuK^50ngo63I+_-_UOUC-|z zR|Km!4*B@1pTr*PgNKqm`3>u~XLs5>D0X*4@WcZ*#eS0CY28g5*R0t1!@7;bN{6hz zabV7s+3-oB?CxQukD)jJNp{QC8?Ueel~zH(MwJ^s(GTUUF1<@qZrFNkl9C#|+f&kR_~KU#DB zuB?{3Mh3gGTI?Db?#jyAH8OU6R_661Q#x(EZOzN}fo4?0{x!jbjYB>d-#>O`Jb0`t zZgv}g|BE5-pMLK#^dgCJ`<*8;R>!vFkKG&l=ZvdP470Pg-ZT-V*yqvm%H2ERoYGLe zvwYmNts6H!QTkBIQ)yA6)f?BWx_aZJzN3fkoVm9*z8@W`vB4>aGM1e-apP%d2u7uk z-Bmg<%x+&j^h3+0`KRx~>Gm^h@ey5o|`oD2! z_>ktKSBq;W(SUfl;GTcNn##392VC^@pLgDS>&y4Pb=I!xLGR|hJ8{#Bldpf_+|GBb z+nTXAJnM@5hgbD3d30&^xY~0bUhtQ@UaQ-j{>sg@@7~8`t>#pUiN*7#z%bSmE967V& zmigC=-1Yr2a~>~z^ZI8?(r^0tsuOb#%x^e9w_W3=!pu1Xx{SJHSdV)j+}`g;*_{WC z*t++OuRpQ=toP;}KkJVxzF9kO+O3NV7VlY^8GHQNPdi48C}T zdr%{yloP4j- zBi+9H{WN6hsXv1#BXd#zenHx;H-Ix2_3aa+-FCGg9f~doW${ivKWyIzNm^Wh{e~T0 zfFx*fD*lCq6lbn9OUnYFkDLo)~0ZM9*(jNGq#o) z3&#dI-)H=cWnbQ(ufGCXlKp3>)dfqNd5f^`XBuhbOz!zPrkH>&1=RqS2VY0Eg&)m= z(zcNwO}lNnrHM4i84ks8v+a>e;rci#o9uBj_jn1G*0bTSwVCqYW3Bx;_!n-uAIfyi z$iud+TA^dGF(lp3h%G%NCngGSf zw?-WXU~3`!Qemm(vyyA;`EI1WOfXS;3j}OBJH8`&+!CJIM*M3^-{MMD8*wu0#rGrO zxZG*Ai-Yh4o~4wv?_AC@ETf4!9ziyMr|k}?A}dsg4vS}ErxUh25t=-SEK?p$q>FsN z2Ceke{rKO3H8ef-Z6f!Oo=QQslpV@Kt48j~AgnCJdK&bg$u~Eh_&BuzYn|oaPf4ux z$p3$phYQYycWudPgAaDMY{^e{^J~^ES|z+k2DZen`dC%>6|QERw@EAWHp%(I?|rv+ zo-gfjy}2)XqYInoRcwexv)3kj9ZT z3??%w#&Sk*Y0$r*;OMULlJ?z-E)Bkt;2xI-!;>qQ2TKA-I^uuvWkH{kwLx)<<)H5b<2V-hPB4lNWE`WrMLL1e zSH|&?16MX;fo(>cutYm0-4<kyB7I?yNSJBpSvPu69kga1G(R!3+QaKhJ3!_Rb(FTBoZ2V`F z$Z}##4R?Bn$R_+lG7CIM47~R+u<#j}CkC4E;Xk5ZlE$oL#*m5d&pG&V-2dnKOIp39~PpHfPcF87JVrFl+XOU*<#KU;I(yrY65c?*2Z%8Q$l_{=G0% ze8z$cYv%lQJ}S7Ap)%m^`UZYMN~c2ux{h=!F(;9O-Ad9D+r&vl^p|Dzkd)qm#4IGW z!mM(&zlJAfwvrOdX zV%yWE?DO6f*! zG|`dMi3jVR3o7Iy$S$)s?UN!QYdWkuhDk3PN5a*L@C6aAJ#7CHV$9C_kIWgBTG(#qjqqLqOa z&T@mE#oP0mBfl5@*lcfs+@e& zJ}QWVJ`Imiy13}vxL&To*=zoS84DK%i*Paa?>8B~8E0k@@QUWUpU)+o?f!?1%5YwONTXx7T)_xpvqdJ%z z&g1H!Jc%EbI9%x_mn$!JS@Pnh`SDvUGYjU?jrI7E{}{6!MAas$7_5r#es0Y8U>_{J zcX8ohpR88m8zL&Gk0BbqwyMvjDVF%!dn8Q3#n?@^N6iy2&Sc>H2EBEamwha80YpO1 zcfhL8z{@9=+`Gt*?Bm6TGZ_w^-+&EaG92vl#RfeYQsix}U+-fe_gjXA_F0dHDYN?^ z<;=c?vdtMW59`!F2k~uW=&&5fro(+x=PtzDH{X;uAg)lp3Gua#C7;kq5-d!65@Mz&)27r1=rcLF zCCZb5@BgS%&J~08)aSt#`DQYTZ@>BrCm%$ z`7kWO(nfi?W1g2VAO8?&+UAjAxf`?HFfJrhfWUGKc>y7?+)SsJc^I+-6!>U1V+-HU^*9`>VL z^K*t{elXGW=Q>_V*8Or!zSYm`!B!`4qg-v?mbL_q8zd+V{{f~Wqse+Kl-Rk3IKk|F znw-guiyZSlX!26WWsWNypXT^$j@h1=ojV=h<#?y#-HxAk{G#JuI{vle-#Y%IX#o%}S%{N>+l%Gh$%pYG%` z&RpgEMc?WqM}ioyaD1iXZ#llv@%J2WbS&4t)_H#G+3erv_yNaz96#y!dB-n0{=H*q zH*{YgI{BX+bC81NA;+=!{A$`lC+9c@)2Ba?abL#+9CP4-U2F6qG9Kf2oMZ7j(`$2@ zlb`SSLdSKErM=R$*E)HfUVt@{)4u$(tl8nQ(x;z3H6nGQm$oH zO1ZLJ*P5Sxlq&-h`}J)IcVlfkO&Ci)bzjV<{nBVH9&iBE*ACYebZ&Th1zE61@c$YGtcb-&^ zsrkqH^A^#Lo-zk>Gn&UJZU&na@yrl-aix ze=g|r`9u7<2Cdy(}z>Z=UX!AZ(IFQ+QAK95vpeIBFS13X^&E8ugK`HVA7c_?_c@(A!e<%!@$ z%9Fw0P_6+lSDp^OO8GqSb;`Bi8OC9^OP_G2-A$ML6RTq6vb zXq$`+9J3uXd8uQ*Co=g^$DeYU|d z?_Vb0;dr;>XB@xc_)W(L$oec3mEMv6$Dx8EOT5+PeFT?sA{g^BA(!ix14l*g7kXix z>A8(X$LrbK8;JFuSS*;mGa>MLQ?RbpT2xK%46OP6@&yyGVeXf5F5EBgCEngFl_Qd1 z_9*xEI>25DWVFXVquE;n_V(ERYSjQmdW=^omvaSSh_lDzF?+Xwy}dfD`@n4so3W7D zzB1Iw|KvZ@yAvYXKa$>k&}qJ3`-zrTnLh^hk;vs(7^dJj*k-X@T4Ax{;Jwz{+lv+6 z2Q8Srry%h5-hn-~jkL!qYWCg&dwT__!>>YS!R+maz}uU3bP()>jP`iXF?%%T?eUt} zhV2&2-k%}x_Ik#n_LTP6uQhw}E(q(a8w?F7@X83~zu9YxoqBuOMako3U&8DiulYl^ zB(TpT8P;{PC;d*9G1`v}tKGWkvArgj>$a8HFJ(LqUMJkfdi!$O-1Knr|uU` zO=7>7H?#LxtK_lMrrEo+nZ4b|pudalJPuTyguUyV*-J-1gna=EX79RY_J$psJikRy zwsN_(nZ5q7NB>w0X0M@{y`8YP2S%8`u2{_8U24zrbS^6Af@bAMn{v-YY6AUZU{=+BSNfcze6~kfZegMU=3|YaZf6xTr7)_$?j_hKyZt1ygV%D}&&8$cwOW zU%6ONeVf>;N2RNQ%!1jAeojozzI8;u(%u8Uv|s6)e7L|t@gB_5`>W^P8WfDm8t{{& zzw2h-+Synae=fc}p!XqW-YSiKiJ7-fL!J(vdaJ{z%oR0V4l(sshiK}pE{UnPrtE55 zY*TL?cHXT6Xa7rLU!!fBuX`}>R)c<_yCwZH zkvH|RV?QF&uM4k6`@?#U|KT3|muH@rtwzfRTqI%oR9qJ{6(oG@PK1*B*hOA-?M8ER zEQ61l>TU;jxLYaAOk-aij&*EOQ*P(Kwx!r0UUw-)rvjUM(@n$oI4EHGgzNdHDVh^0PGrcIH<0mb zfZ>^~ehlNGtnen#O74n9?7Np^HAj4uL#YBvPm2=gKGo-^0%q+Qqeou`2A|ULbgZ73l6C9FEAYT;d!DXW5(0aOiyLur>F8cD1(Qdo=S1s z0rXeHUY zoT}ro8u@u%&Wx?XYIYS5ShivguJ${bv~D;4KMQ%D%)zysNi(6}p7+yGR(oKzwe%ZS zFn63YuC-M3EB+v>n7>OZ`pVB_b^Ef`b==P?zN(3>EpL4pE$Lcielga*fh~Li#v1ru zSQX^YfskdkT7;9+;eLcEvQTy@Yqz7OofB2Kv%`K(N-uw{CVMbS#+)4~O+f?Fu(Iq<$gmanP{@DwMI5qKywFHg>uODKm=1DC+=9_P@$; z@k>n2)x>uYqdpS8gY8kdntJ)6gc8$aVQY?4#$yC0=5mv09l?3goDcc?Y#Zm5m~dCb zSu@YccIG+xx0#qru8LqRBiDgo(la>dK#voJag0vIf{CrREF+k9@~9z{Ct$eRRRUFe zM-%O)lT}HZ7mR0AfCUB4h~>fa!FY*?s~PcFC{7+zH6#*ffV+zYy*Dtv2n(DF8P#G* z2^KBeK!}QB97qCRPejSeBw4h%O1H`z-V3mTGskEimc)cuTw(qa6Jo_TaJ3!_)EP0G z&gqc%_ZSwQ84Ij94D6~gaQ{9WZu^V4#l>X0#{Y9F{9ioV6~?Cjb-sj0obRgWQ1e}d zGTTx#^U{}@?+Q+6=!ny;ucc5kw?6oLMZRB2_roL|X}+siR<3xA{SD^3!t_N81>(%CJlPm|9^zW6zOZ@rAWVkySLUOGD9@=FPOXh&h8oZT{pOe|#f z2GeH;tW4zx5Yskw>~_tx7R*VCw|MH=t^QCtQCB4Dk}y4WD8n5kmOUz3}wz-@JtDJcu+x$?&RL*>nZ5}1& zgErZUGaqEO+}|amFt~rR*}qNYEGM$rzenW-h{^ZR2tKT}E4;}NjE=${mtZ7F%`B<{ny=t)4y$dMU0ImNoFBo`-t6SJIyuM3n$Az0&f|`sbvpYTzu|QF0X?&Gz{xo#){ec%@d=K-cKN4>|6F^J6wE9Zz<=#4+oc)d!eKFpJgXJhjIB`OUbiWB$f(^5Y$sJ09wIq~otU zu5moW@m$9jIbQ6TuOTfDD;=+P{7uK-a=hMggJZeIQCs0H8j2BhTcJelk+dCHj9n}~A9p!#bhvSjVeud*x z9rNce(~+@7YG1O{y4&f7@8lml=5K#ypFjN?a~z#<2gm$z(B%Adu5lm7{T-j; z_;knBj_K=Rc4{2Ya4h$9eVk#R#Ogo$Bz7;8K8d#5(kD@lySiFJeJvAU!j5lqGAY-z z(tl8v{c2k23n}vlJj>7VY*$tPRI=(E4;}h_F!WRA;c)IP%GtJ+E7P|5#gu|asr&@+ zSml0TjwNQ=a`3szXMj1bnDVh;{@zTk0xwpc0OogCDW3*5f0-HJdX=-E@*U+1zzxdt z!CRHtf4)bV?c5{E*MJ{WW?%bB<$5sh#oTWLc(3v{@N3HVgZC@54f~_=PVh&{yTK_a zTiSUV+(Mac8|UGo{Ab{H$}fUDE3=&|R{kZpyYhbUAhMo2@u>mx^o^!m&m-^qWcDS` zR&EELs?6^6EM?Zg3zbX2waVSWmnruI*D14)d8IPXHTwzN*H^&wOC^65EdDj%O7Qno zekypA@-XmLE6)Kxs5}q6OL+-c{BB@>Em-_+zzyJ^tIkF+gZY)q^}+%{ zkZT0b7ZyxMt|Qfv>r{1EE_UsdIUeGe$74FI$Hr3}^LR||@5L*fob}Ii);r!p*7JUk zS{_F^$+y)k~r@u!acJ+Z*Gy>Z8-j*;|Bg*dd3EHSpYAGk9X3#kfxH$g7f z_0Bi}EXQtGn4a5sekycbi$dOAm&G-8OWESi=>LBpP zu?@$;^UdSndnRtTJVzGH-uEEz_IBby6(+?V?U+5bncm)FtZatNg4w$l z0&j0G?D3jl{&I91?LLEr_AJEF?oO~3#Aff`l*@J7EHr*Q!L-NoZ25Z~?CtSBbX^*R z8f@FESoitsi9+GC5ACtJFniJu)wGP#a1uFJs0BmmmzogqJlt?=v2P2e$7|K^_mwU| z5Ql*KZL8Z@E_p~`X|Njnx@A;P$qcrQ{a$bH)8gdy##d!_9Nn7Pqd#z*hBTPHcr$yW zyGHM}m_MAtggxmeTVlk0Vee(D+*mhzeVf@^2YUxlF0{vbX!#ooJ*MHc$dH4RdQG$P z<8~PwhS>CO!pW*&0u9vRG6Daz36(9sfZjmWVMHAUnfEn9`Jay$XRP-YOm7Cjm-Dr_ zv6euI#}UV3$8ibtEDglLv9QOovS7FX;O%XPJ?haOPGQ0xZ)2`lgQ*2UP-jN4&5*Gx au3$eZ(>@4c_ONpj?M5XT4;>3;@Baa1MT1T-Elyc{3C|yymYA^SX!&QH;b#r2T{J`X-@9#Tw*tvP8 z=kb}7cYB@(Cqweg!=_OJuNNt1%%l~Mnw!l{=0L{yD^oi!A|J0J-v-(1pqTLpf!&jYo&q`3^YM;U%90v!f$%kfn~UU!W9=CyM2| ziT^hxJLdU}cO@uKCho9V*ATLJ29H>38uG;bfZkvMkVFr?3(w=($vN`|@5GbTRSoLK z8={`KVAYJbgMzR|x7FT3ZEvCbI%Yep?jntNyZeWGWBtoF4tfJO!kJyBxA!hE;Dm#) z62HO3`j7O!t#@`9Zl%4qZx4&NZ=W3=^oBa8Zu-oz?H**EiAb>n*19H5EE(48xC#E~ zno&Jtx>YTxS?Z*pW`UWV8uM#!;R~V2m|XxJwh$Lq*l(1mtx3v~Q&!-3n>`#}@3sCu zJnhP2d2G2BRBL0a#e7h&j73dYjrS}c}>M@z+(v0^!2+AIWP8@c>?u^jvsO&Yr? z^V~|OR#X7pNhhhmnyTQchIoWnE=2#N0}RH&KFa;>;l4hnvL zJy*S^VQV|LV?5FFrnX+G*8Qk0Zu4w*6WPAK*?PkV^4VYCKAO}UY$}EJh$17p8yr=8 zFq;#{k00?z^VLeNRJc?@O&s9$1|?Fus~96sz^~cZB0_ zcp&;nn0@nrUA)=Z@@mB_FV18$#}?;LE-%ewPtGpQEM!hD-Z|crIW~(YlpV!KL%_Yo zwIO>w@aRxw=W)C6ivM)l8a{o?Vy1G)ui*x?a{M~R`o2RW1H>W&k;A)KU+ z!-o|n%j?Di#O>wbO-ka(2xhN63PC%OJU6U-t%=TC72c~b+Y+4_g%=clP~kHQ2MTi~ zik$Yf4e71As^bcdZiT!0_$3G4{XxWiCBERl-}*o;dot1 zZ;!L*x?%6(ZrUIT_ayVTA!+~E$98(BoE|bu(|AsW&^|ezqrsx$EMw|{a zkv#^i+kFXV2-gDJ<=&8Xp9PjWfTj<#Yc-)A+=YgdTpxF<5 zatCKwWX}O>dy_Z|#6Rv=vG+Aq2hiLHd+TCE$^H^p+bh7{5_t5FXQkMC5t!B47U`>4 zh}>&JgiPOYx#(SweU=d=C!^l?k=$`^rOVJeWKsB_4(UIU1hf2c=-or$NMt`pS@+{> z=m+)Kj~kqf>yLesJp^dJ2YbIJa3uDaW5^gzmVI2eHuIJ8YH@9(XNwILop@u0 z+W2$1z{VRjj(EhA#{48{e$?|aPNy9|`G)^@#z7Ga}3u;0<LAhTrR zTjV9X9%mL$e36ynU0=1OuIH)ZCI1bjMEq$KIzNC%{IgJsrMUCD;_>8HkSAY-ib<9s z@JxJ~O1+;8<$W(x@@Xso2A*Eh25ORD2970vjAz`$dE|E;Z&c+++;lR4NjNp3$c z`6fI&k|jK2$@j5Faspc+5e`aX_bU)|+e_T789>qql6T<===OY^@Ya{f1@&?>zZ15% z-2(6sK%e(;!tU-q@1aDD`>D@+w{YI&O~Cd%?0EY!5RpcZybC`Eujh;va0JNgf5do) zp8>d1Biy808u=>@-n|)!NVMl&$bi>#p3n-80bR*9H+-w@{-w+b3VSyv;D{ihI4ij7l+Ll^jLH>K42a zyLE7?C9Kt>0#pcV^?u|-o*DEeP<)b)}G>y*#XQi6H2ig%Lyoac{xqv}-4J zt3(3(ySL+4FGOAx3EU^Lp{=rSA$S;u5IY+}*F?4yJQ9=;H$%)ddvg9nc4lE=ejzHI z&MeF|eTQg@qtW4Pq4H=sU)e0zvzz52!kOZHwqD!_a3|O}8(Ev3yL;Y*A15L^HdOfN zdNIEqwUey{C4?VgYHR4OP4Mr3HN?5Jka-|GGndI`PMy+WM>`bi281|dv0lTFAViu) zxUew@(=*4GPh2W88JVA(pPMmJ>D0o!ZLn5+f53QglSJ8K5YrB5Yt8K9>CCCH*7W@8 zx#RQ8b4%IN^9$39SFzB;(0dA@@mgwSvsfyOh0iwIM+H-5K{a~PXnA&SacN=s_|okB z++ws|!njftgSB&S*&KvxqFlM)9K3c^0&nz69Uz{=jr{Q2;ib(Bp zoHUl~#i)fE z8@FzXYga1_ax(%xk)CuRXB+F@>P3US)rE%a^6jgT_W#p3ImX%z!=-}eSQoOUxJI_d z&Gj#QT+o|V5zD-AH|TdC_ud-kZnRE+qHCXJ$C`f0Q_kN74T>55_-Ih9X*8&>BLghk zmv&SkW-pIX5pus#0E$JsFJ#BeTcQ!Uvd!`}($)vcwZZ{XT=^$x>LpF1m&2 zMJ_jh#(P>g>hA}7<=e`aUGBC`iRtpHE12hs#~=-88&dei+!iC9--SM7dDk--1j3I7 zi`fomjC}e<-0OT}42gXDNZjj!Jk|~aLLh4gII;uW)(-e>?a+YO0gmhdx3vR)s~uY( z+lqC$9)^LrMwsM#2v@np)VZSNTLIUE;89}K-GiJ->W&k;ZOygC?=z&sNP?$`QFj_S zlhnP3m>mI~L>hMZoeDEn>~T;*?3>3>3?0}mx$f5{Lc#iyTboL?ApCZ?A9#*L)D-={G5tmxQ1i+DSU?n=8nb7Vc(GspR0&m4z+>btgfQQu*}$d2wK#nKmh zJ~%tJU02thbq@cM^WxSRztKqDJBXdmYtWHzh93CDJp1|Unwb7_?uJ}jI~}IZh{M#G zBz88BI82?p9HtJ*<6#D(s)u(0$@=fkf0jkZ_R;CsF?2c{E9sY=JJ-jfihmEW^La_( zGYXf8ozLeKeoA4$t0Es-7|Nz^p6r(p=aIy3qr_84q!*#YKHP@H`joNXM_k!;&Av<8 z+1u~xOd%(|s_b$6#omL!+CPp-JA347|8`-%#6NCXvG-Jqy#mUb*cOS=abo&Hx|H50 zAmdbAN$*q8p}oCGB-;CxMd2fkjB@*KK`!I>0GK18ihWX#^kpRCDJ0So`pdP$`QVvC z8Rz4hNVF^V9=n9SuR}-MyP)jpZ=OGFvG?31?EPzty`L$2Jmzm-Szc3xyySc^QE!fAKNJ7%q4K4OwfxTUrMB3wa75{E;vG*(lzYt@{ z#omz?y>nP}`8Im{TiPAK#guD^?edN)?ef2{Vw+}u0DD}|LL!@KvG*K|a4*mv&mOV& zaEra(PGfw?g~Z;2E%si8Jy}=0K8rnmwvjrt@mAP7-e#P6FJPT1DuIsT8-VneXRFxz zfU_rkEMrq;WK%(pZ83egMei$E>>2QdMDJMucZ^!mMd%$8CFIm2eF;D?%cIyd95*46 zeI7vfKZwFu2!2obKlD78{m}}q(iM{^;yDaWF literal 0 HcmV?d00001

    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 diff --git a/tools/sdk/lib/libopenssl.a b/tools/sdk/lib/libopenssl.a new file mode 100644 index 0000000000000000000000000000000000000000..0021fa4a2cd6be6dc058e012128af978e09b293b GIT binary patch literal 273216 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 F{{d@J3-AB{ literal 0 HcmV?d00001 diff --git a/tools/sdk/lib/libphy.a b/tools/sdk/lib/libphy.a old mode 100755 new mode 100644 index 70b64cf2ba069a902bffb13d0ed51fa5be18c791..c9c77a1347bfd7327afcfd1ba71dbdff72cdb5b1 GIT binary patch literal 327010 zcmeFa34B!5`9FN_%w#f?3^xm_0y+s>*b~;EpkWmhlvPo|AuFVWBu)kh3X-6OsHhOF zqK%S7TamgTZnzexYl{|_x>YUO{?u9*L|bi(&j0&;&OI|Xi2e8dzwhVse%{aL9k};C z=Q+=L&a<88oO|xgOwRb?Xz8-k(uRjSehNm79g{zl@)c7@@loTJQk@OQ5uPs7nem=6xS_R(c%>#uB=U<=aw%OWNpdHx=2M$ zw6r|3qNc1|MJsBnsv?!ul`*N-#b|k5xl=B$ixo#>k<#KSsb5`O8H;ElpwM@jl5SRw zjYR8L6xT<}>tm7P>S9$=5-F*xi*~LN(fa0>UC~K1(rCzIk3^LJ!v|hH_34#iJEnQX)8)#4K z=HRb7wxO7ejszN^=`9y)hiz}-m28GCmQ1@W0Z}^ zN0B3l<7{k%#^T_Jl*Xb}YAMUpR#w*uhq~I8QG{Z7g^Rwfs=T~5QdcpL%6W##peSPcx%B0W;0ku1jQkzzuZ*gG9irBS2C?sQFhI>I2MBq6Gah=+Rz`S zQ?Whh4H6F4f@wp79jQ5fCF(^}$DYxe7=3gs3Q^c0K_&)5GKVsXq?tRjs^YTZ+F0eP z@(4{z&eC(K&R#3Zi|aZD5vKzTY*z#_E@+lmeJzw0e=82-QY0Ul4|EXfAVtj9Dvc