From a9dec8bee18f1ef5da9c4158073f048fb40bdbfd Mon Sep 17 00:00:00 2001 From: DHDAXCW Date: Thu, 14 Sep 2023 06:57:30 +0000 Subject: [PATCH] kernel: bump 6.1 to 6.1.53 --- include/kernel-6.1 | 4 +- include/openssl-module.mk | 78 + package/firmware/ath10k-ct-firmware/Makefile | 5 +- package/firmware/ath11k-firmware/Makefile | 10 +- package/firmware/intel-microcode/Makefile | 6 +- package/firmware/ipq-wifi/Makefile | 118 +- package/firmware/linux-firmware/Makefile | 4 +- .../ap6236/brcmfmac43430-sdio.bin | Bin 0 -> 416477 bytes .../ap6236/brcmfmac43430-sdio.txt | 54 + .../brcmfmac4356-sdio.rongpin,king3399.bin | Bin 0 -> 580258 bytes .../brcmfmac4356-sdio.rongpin,king3399.txt | 125 + package/firmware/linux-firmware/broadcom.mk | 16 + package/firmware/linux-firmware/intel.mk | 17 +- package/firmware/linux-firmware/mediatek.mk | 25 +- package/firmware/linux-firmware/qca_ath10k.mk | 17 + package/libs/openssl/Config.in | 94 +- package/libs/openssl/Makefile | 94 +- package/libs/openssl/files/afalg.cnf | 2 +- package/libs/openssl/files/devcrypto.cnf | 13 +- package/libs/openssl/files/legacy.cnf | 3 + package/libs/openssl/files/openssl.init | 79 +- package/libs/openssl/files/padlock.cnf | 2 +- ...m-ppc-xlate.pl-add-linux64v2-flavour.patch | 55 - .../patches/100-Configure-afalg-support.patch | 2 +- .../openssl/patches/110-openwrt_targets.patch | 2 +- .../120-strip-cflags-from-binary.patch | 8 +- .../patches/130-dont-build-fuzz-docs.patch | 20 + .../patches/130-dont-build-tests-fuzz.patch | 29 - .../patches/140-allow-prefer-chacha20.patch | 60 +- .../150-openssl.cnf-add-engines-conf.patch | 32 +- ...o-save-ioctl-if-EVP_MD_.FLAG_ONESHOT.patch | 58 - ..._devcrypto-add-configuration-options.patch | 566 ---- ...ypto-add-command-to-dump-driver-info.patch | 273 -- ...o-make-the-dev-crypto-engine-dynamic.patch | 2718 ----------------- ...default-to-not-use-digests-in-engine.patch | 4 +- ...to-ignore-error-when-closing-session.patch | 4 +- ...i-gen-LRU-per-node-lru_gen_folio-lis.patch | 4 +- ...bsolte-u64_stats_fetch_-_irq-users-d.patch | 12 +- ...-software-interrupt-coalescing-per-d.patch | 2 +- ...ke-.-cells-optional-for-simple-props.patch | 2 +- ...operty-add-nvmem-cell-cells-property.patch | 2 +- .../generic/hack-6.1/204-module_strip.patch | 4 +- .../generic/hack-6.1/253-ksmbd-config.patch | 2 +- .../780-usb-net-MeigLink_modem_support.patch | 2 +- .../hack-6.1/901-debloat_sock_diag.patch | 4 +- .../generic/hack-6.1/902-debloat_proc.patch | 4 +- .../993-add-fibocom-id-and-zeropacket.patch | 2 +- .../203-kallsyms_uncompressed.patch | 2 +- .../300-mips_expose_boot_raw.patch | 4 +- ...support-for-minor-aligned-partitions.patch | 8 +- .../479-mtd-spi-nor-add-xtx-xt25f128b.patch | 2 +- .../pending-6.1/920-mangle_bootargs.patch | 2 +- .../994-add-quectel-rm500u-support.patch | 4 +- 53 files changed, 690 insertions(+), 3969 deletions(-) create mode 100644 include/openssl-module.mk create mode 100644 package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.bin create mode 100644 package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.txt create mode 100644 package/firmware/linux-firmware/brcm_firmware/ap6356s/brcmfmac4356-sdio.rongpin,king3399.bin create mode 100644 package/firmware/linux-firmware/brcm_firmware/ap6356s/brcmfmac4356-sdio.rongpin,king3399.txt create mode 100644 package/libs/openssl/files/legacy.cnf delete mode 100644 package/libs/openssl/patches/001-crypto-perlasm-ppc-xlate.pl-add-linux64v2-flavour.patch create mode 100644 package/libs/openssl/patches/130-dont-build-fuzz-docs.patch delete mode 100644 package/libs/openssl/patches/130-dont-build-tests-fuzz.patch delete mode 100644 package/libs/openssl/patches/400-eng_devcrypto-save-ioctl-if-EVP_MD_.FLAG_ONESHOT.patch delete mode 100644 package/libs/openssl/patches/410-eng_devcrypto-add-configuration-options.patch delete mode 100644 package/libs/openssl/patches/420-eng_devcrypto-add-command-to-dump-driver-info.patch delete mode 100644 package/libs/openssl/patches/430-e_devcrypto-make-the-dev-crypto-engine-dynamic.patch diff --git a/include/kernel-6.1 b/include/kernel-6.1 index 7f8e44e90..3c02facf7 100644 --- a/include/kernel-6.1 +++ b/include/kernel-6.1 @@ -1,2 +1,2 @@ -LINUX_VERSION-6.1 = .50 -LINUX_KERNEL_HASH-6.1.50 = b27ac1443eea563bc546ee1f67d9802bc8d6c0f6f18707407fba01f9f78c488c \ No newline at end of file +LINUX_VERSION-6.1 = .53 +LINUX_KERNEL_HASH-6.1.53 = 5f57e0a04810d24f2b1a8fc95451241f80530e678717eda0f45104c6dc78ed7e \ No newline at end of file diff --git a/include/openssl-module.mk b/include/openssl-module.mk new file mode 100644 index 000000000..593d208ec --- /dev/null +++ b/include/openssl-module.mk @@ -0,0 +1,78 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Copyright (C) 2022-2023 Enéas Ulir de Queiroz + +ENGINES_DIR=engines-3 + +define Package/openssl/module/Default + SECTION:=libs + CATEGORY:=Libraries + SUBMENU:=SSL + DEPENDS:=libopenssl +libopenssl-conf +endef + +define Package/openssl/engine/Default + $(Package/openssl/module/Default) + DEPENDS+=@OPENSSL_ENGINE +endef + + +# 1 = moudule type (engine|provider) +# 2 = module name +# 3 = directory to save .so file +# 4 = [ package name, defaults to libopenssl-$(2) ] +define Package/openssl/add-module + $(eval MOD_TYPE:=$(1)) + $(eval MOD_NAME:=$(2)) + $(eval MOD_DIR:=$(3)) + $(eval OSSL_PKG:=$(if $(4),$(4),libopenssl-$(MOD_NAME))) + $(info Package/openssl/add-module 1='$(1)'; 2='$(2)'; 3='$(3)' 4='$(4)') + $(info MOD_TYPE='$(MOD_TYPE)'; MOD_NAME='$(MOD_NAME)'; MOD_DIR='$(MOD_DIR)' OSSL_PKG='$(OSSL_PKG)') + Package/$(OSSL_PKG)/conffiles:=/etc/ssl/modules.cnf.d/$(MOD_NAME).cnf + + define Package/$(OSSL_PKG)/install + $$(INSTALL_DIR) $$(1)/$(MOD_DIR) + $$(INSTALL_BIN) $$(PKG_INSTALL_DIR)/$(MOD_DIR)/$(MOD_NAME).so \ + $$(1)/$(MOD_DIR) + $$(INSTALL_DIR) $$(1)/etc/ssl/modules.cnf.d + $$(INSTALL_DATA) ./files/$(MOD_NAME).cnf $$(1)/etc/ssl/modules.cnf.d/ + endef + + define Package/$(OSSL_PKG)/postinst +#!/bin/sh +OPENSSL_UCI="$$$${IPKG_INSTROOT}/etc/config/openssl" + +[ -z "$$$${IPKG_INSTROOT}" ] \ + && uci -q get openssl.$(MOD_NAME) >/dev/null \ + && exit 0 + +cat << EOF >> "$$$${OPENSSL_UCI}" + +config $(MOD_TYPE) '$(MOD_NAME)' + option enabled '1' +EOF + +[ -n "$$$${IPKG_INSTROOT}" ] || /etc/init.d/openssl reload +exit 0 + endef + + define Package/$(OSSL_PKG)/postrm +#!/bin/sh +[ -n "$$$${IPKG_INSTROOT}" ] && exit 0 +uci -q delete openssl.$(MOD_NAME) && uci commit openssl +/etc/init.d/openssl reload +exit 0 + endef +endef + +# 1 = engine name +# 2 - package name, defaults to libopenssl-$(1) +define Package/openssl/add-engine + $(call Package/openssl/add-module,engine,$(1),/usr/lib/$(ENGINES_DIR),$(2)) +endef + +# 1 = provider name +# 2 = [ package name, defaults to libopenssl-$(1) ] +define Package/openssl/add-provider + $(call Package/openssl/add-module,provider,$(1),/usr/lib/ossl-modules,$(2)) +endef diff --git a/package/firmware/ath10k-ct-firmware/Makefile b/package/firmware/ath10k-ct-firmware/Makefile index 78846fbe9..4fd7266f2 100644 --- a/package/firmware/ath10k-ct-firmware/Makefile +++ b/package/firmware/ath10k-ct-firmware/Makefile @@ -4,8 +4,6 @@ PKG_NAME:=ath10k-ct-firmware PKG_VERSION:=2020-11-08 PKG_RELEASE:=1 -DL_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) - include $(INCLUDE_DIR)/package.mk CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT) @@ -294,6 +292,7 @@ $(Package/ath10k-ct-firmware-default) CATEGORY:=Firmware PROVIDES:=ath10k-firmware-qca4019 CONFLICTS:=ath10k-firmware-qca4019 + DEPENDS:=+ath10k-board-qca4019 endef define Package/ath10k-firmware-qca4019-ct-full-htt $(Package/ath10k-ct-firmware-default) @@ -308,6 +307,7 @@ $(Package/ath10k-ct-firmware-default) ath10k-firmware-qca4019-ct \ ath10k-firmware-qca4019-ct-htt DEPENDS:=\ + +ath10k-board-qca4019 \ +!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct endef define Package/ath10k-firmware-qca4019-ct-htt @@ -322,6 +322,7 @@ $(Package/ath10k-firmware-default) ath10k-firmware-qca4019 \ ath10k-firmware-qca4019-ct DEPENDS:=\ + +ath10k-board-qca4019 \ +!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct endef diff --git a/package/firmware/ath11k-firmware/Makefile b/package/firmware/ath11k-firmware/Makefile index 7acc233b6..fc7968a95 100644 --- a/package/firmware/ath11k-firmware/Makefile +++ b/package/firmware/ath11k-firmware/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ath11k-firmware -PKG_SOURCE_DATE:=2023-07-06 -PKG_SOURCE_VERSION:=69f6b7346b64784188dba791a9cfb614eefa441f -PKG_MIRROR_HASH:=0f0203f755cb6713f6a1f41397dcd0f1a24e5cdbe75258af961343b927ebb3e9 +PKG_SOURCE_DATE:=2023-03-31 +PKG_SOURCE_VERSION:=a039049a9349722fa5c74185452ab04644a0d351 +PKG_MIRROR_HASH:=ed401e3f6e91d70565b3396139193f7e815f410db93700697205ac8ed1b828c5 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git @@ -60,14 +60,14 @@ $(eval $(call Download,qcn9074-board)) define Package/ath11k-firmware-ipq8074/install $(INSTALL_DIR) $(1)/lib/firmware/IPQ8074 $(INSTALL_DATA) \ - $(PKG_BUILD_DIR)/ath11k-firmware/IPQ8074/hw2.0/2.9.0.1/WLAN.HK.2.9.0.1-01837-QCAHKSWPL_SILICONZ-1/* \ + $(PKG_BUILD_DIR)/ath11k-firmware/IPQ8074/hw2.0/testing/2.9.0.1/WLAN.HK.2.9.0.1-01385-QCAHKSWPL_SILICONZ-1/* \ $(1)/lib/firmware/IPQ8074/ endef define Package/ath11k-firmware-qcn9074/install $(INSTALL_DIR) $(1)/lib/firmware/ath11k/QCN9074/hw1.0 $(INSTALL_DATA) \ - $(PKG_BUILD_DIR)/ath11k-firmware/QCN9074/hw1.0/2.9.0.1/WLAN.HK.2.9.0.1-01837-QCAHKSWPL_SILICONZ-1/* \ + $(PKG_BUILD_DIR)/ath11k-firmware/QCN9074/hw1.0/testing/2.9.0.1/WLAN.HK.2.9.0.1-01385-QCAHKSWPL_SILICONZ-1/* \ $(1)/lib/firmware/ath11k/QCN9074/hw1.0/ $(INSTALL_BIN) \ $(DL_DIR)/$(QCN9074_BOARD_FILE) $(1)/lib/firmware/ath11k/QCN9074/hw1.0/board-2.bin diff --git a/package/firmware/intel-microcode/Makefile b/package/firmware/intel-microcode/Makefile index b0379f363..4c234ddc8 100644 --- a/package/firmware/intel-microcode/Makefile +++ b/package/firmware/intel-microcode/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=intel-microcode -PKG_VERSION:=20220809 +PKG_VERSION:=20230512 PKG_RELEASE:=1 PKG_SOURCE:=intel-microcode_3.$(PKG_VERSION).1.tar.xz -PKG_SOURCE_URL:=@DEBIAN/pool/non-free/i/intel-microcode/ -PKG_HASH:=4cf6c3638bb52d9d45c1916af866fd0929628a6f459daac3edfd369149e9c665 +PKG_SOURCE_URL:=@DEBIAN/pool/non-free-firmware/i/intel-microcode/ +PKG_HASH:=e6717a42d7b6e92280565fbb180cd0d11bc5d14874ef06ff1bed2b7a11d17c67 PKG_BUILD_DIR:=$(BUILD_DIR)/intel-microcode-3.$(PKG_VERSION).1 PKG_BUILD_DEPENDS:=iucode-tool/host diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index d15a1ca4f..3729ee65f 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -2,15 +2,18 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/version.mk PKG_NAME:=ipq-wifi -PKG_RELEASE:=1 +PKG_RELEASE:=2 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL=$(PROJECT_GIT)/project/firmware/qca-wireless.git +PKG_SOURCE_DATE:=2023-06-03 +PKG_SOURCE_VERSION:=cd9c30ca47b8e5388b770c523a7f6b8b969e2f92 +PKG_MIRROR_HASH:=45e623fcc512b514ade0f22e217275536aa8de4afba7dfdb11696482b8fa71a2 + PKG_FLAGS:=nonshared include $(INCLUDE_DIR)/package.mk -define Build/Prepare - mkdir -p $(PKG_BUILD_DIR) -endef - define Build/Compile endef @@ -25,44 +28,23 @@ endef # ALLWIFIBOARDS:= \ - 8dev_habanero-dvk \ - aruba_ap-303 \ - asus_rt-acrh17 \ - avm_fritzrepeater-1200 \ - buffalo_wtr-m2133hp \ - cellc_rtl30vw \ - century_wr142ac \ - devolo_magic-2-wifi-next \ - dlink_dap2610 \ - edgecore_ecw5410 \ - edgecore_oap100 \ - engenius_eap2200 \ - engenius_emd1 \ - engenius_emr3500 \ - ezviz_cs-w3-wd1200g-eup \ - glinet_gl-ap1300 \ - glinet_gl-s1300 \ - hiwifi_c526a \ - linksys_ea8300 \ - linksys_mr8300-v0 \ - luma_wrtq-329acn \ - mikrotik_hap-ac2 \ - mikrotik_sxtsq-5-ac \ - mobipromo_cm520-79f \ - nec_wg2600hp3 \ - netgear_sxr80 \ - netgear_wac510 \ - plasmacloud_pa1200 \ - plasmacloud_pa2200 \ + buffalo_wxr-5950ax12 \ + compex_wpq873 \ + dynalink_dl-wrx36 \ + edgecore_eap102 \ + edimax_cax1800 \ + netgear_rax120v2 \ + netgear_wax218 \ p2w_r619ac \ + prpl_haze \ qnap_301w \ - qxwlan_e2600ac \ redmi_ax6 \ + wallys_dr40x9 \ xiaomi_ax3600 \ xiaomi_ax9000 \ - zte_mf263 \ - zte_mf269 \ - tplink_xtr10890 + zte_mf289f \ + zte_mf287plus \ + zyxel_nbg7815 ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD)) @@ -89,14 +71,18 @@ define ipq-wifi-install-one $(call ipq-wifi-install-one-to,$(1),$(2),QCA4019/hw1.0),\ $(if $(filter $(suffix $(1)),.QCA9888 .qca9888),\ $(call ipq-wifi-install-one-to,$(1),$(2),QCA9888/hw2.0),\ - $(if $(filter $(suffix $(1)),.QCA9984 .qca9984),\ - $(call ipq-wifi-install-one-to,$(1),$(2),QCA9984/hw1.0),\ $(if $(filter $(suffix $(1)),.QCA9889 .qca9889),\ $(call ipq-wifi-install-one-to,$(1),$(2),QCA9887/hw1.0),\ + $(if $(filter $(suffix $(1)),.QCA9984 .qca9984),\ + $(call ipq-wifi-install-one-to,$(1),$(2),QCA9984/hw1.0),\ + $(if $(filter $(suffix $(1)),.QCA99X0 .qca99x0),\ + $(call ipq-wifi-install-one-to,$(1),$(2),QCA99X0/hw2.0),\ $(if $(filter $(suffix $(1)),.IPQ8074 .ipq8074),\ $(call ipq-wifi-install-ath11-one-to,$(1),$(2),IPQ8074/hw2.0),\ + $(if $(filter $(suffix $(1)),.QCN9074 .qcn9074),\ + $(call ipq-wifi-install-ath11-one-to,$(1),$(2),QCN9074/hw1.0),\ $(error Unrecognized board-file suffix '$(suffix $(1))' for '$(1)')\ - ))))) + ))))))) endef # Blank line required at end of above define due to foreach context @@ -121,7 +107,7 @@ Do not install it for any other device! endef define Package/ipq-wifi-$(1)/install-overlay - $$$$(foreach IPQ_WIFI_BOARD_FILE,$$$$(wildcard board-$(1).*),\ + $$$$(foreach IPQ_WIFI_BOARD_FILE,$$$$(wildcard $(PKG_BUILD_DIR)/board-$(1).*),\ $$$$(call ipq-wifi-install-one,$$$$(IPQ_WIFI_BOARD_FILE),$$(1))) endef @@ -129,47 +115,25 @@ Do not install it for any other device! endef # Add board name to ALLWIFIBOARDS -# Place files in this directory as board-. +# Place files in this directory as board-. # Add $(eval $(call generate-ipq-wifi-package,,)) -$(eval $(call generate-ipq-wifi-package,8dev_habanero-dvk,8devices Habanero DVK)) -$(eval $(call generate-ipq-wifi-package,aruba_ap-303,Aruba AP-303)) -$(eval $(call generate-ipq-wifi-package,asus_rt-acrh17,ASUS RT-ACRH17/RT-AC82U/RT-AC42U)) -$(eval $(call generate-ipq-wifi-package,avm_fritzrepeater-1200,AVM FRITZRepeater 1200)) -$(eval $(call generate-ipq-wifi-package,buffalo_wtr-m2133hp,Buffalo WTR-M2133HP)) -$(eval $(call generate-ipq-wifi-package,cellc_rtl30vw, Cell C RTL30VW)) -$(eval $(call generate-ipq-wifi-package,century_wr142ac,Century WR142AC)) -$(eval $(call generate-ipq-wifi-package,devolo_magic-2-wifi-next,devolo Magic 2 WiFi next)) -$(eval $(call generate-ipq-wifi-package,dlink_dap2610,D-Link DAP-2610)) -$(eval $(call generate-ipq-wifi-package,edgecore_ecw5410,Edgecore ECW5410)) -$(eval $(call generate-ipq-wifi-package,edgecore_oap100,Edgecore OAP100)) -$(eval $(call generate-ipq-wifi-package,engenius_eap2200,EnGenius EAP2200)) -$(eval $(call generate-ipq-wifi-package,engenius_emd1,EnGenius EMD1)) -$(eval $(call generate-ipq-wifi-package,engenius_emr3500,EnGenius EMR3500)) -$(eval $(call generate-ipq-wifi-package,ezviz_cs-w3-wd1200g-eup,EZVIZ CS-W3-WD1200G EUP)) -$(eval $(call generate-ipq-wifi-package,glinet_gl-a1300,GL.iNet GL-A1300)) -$(eval $(call generate-ipq-wifi-package,glinet_gl-ap1300,GL.iNet GL-AP1300)) -$(eval $(call generate-ipq-wifi-package,glinet_gl-s1300,GL.iNet GL-S1300)) -$(eval $(call generate-ipq-wifi-package,hiwifi_c526a,HiWiFi C526A)) -$(eval $(call generate-ipq-wifi-package,linksys_ea8300,Linksys EA8300)) -$(eval $(call generate-ipq-wifi-package,linksys_mr8300-v0,Linksys MR8300)) -$(eval $(call generate-ipq-wifi-package,luma_wrtq-329acn,Luma WRTQ-329ACN)) -$(eval $(call generate-ipq-wifi-package,mikrotik_hap-ac2,Mikrotik hAP ac2)) -$(eval $(call generate-ipq-wifi-package,mikrotik_sxtsq-5-ac,MikroTik SXTsq 5 ac)) -$(eval $(call generate-ipq-wifi-package,mobipromo_cm520-79f,MobiPromo CM520-79F)) -$(eval $(call generate-ipq-wifi-package,nec_wg2600hp3,NEC Platforms WG2600HP3)) -$(eval $(call generate-ipq-wifi-package,netgear_sxr80,Netgear SXR80)) -$(eval $(call generate-ipq-wifi-package,netgear_wac510,Netgear WAC510)) -$(eval $(call generate-ipq-wifi-package,plasmacloud_pa1200,Plasma Cloud PA1200)) -$(eval $(call generate-ipq-wifi-package,plasmacloud_pa2200,Plasma Cloud PA2200)) +$(eval $(call generate-ipq-wifi-package,buffalo_wxr-5950ax12,Buffalo WXR-5950AX12)) +$(eval $(call generate-ipq-wifi-package,compex_wpq873,Compex WPQ-873)) +$(eval $(call generate-ipq-wifi-package,dynalink_dl-wrx36,Dynalink DL-WRX36)) +$(eval $(call generate-ipq-wifi-package,edgecore_eap102,Edgecore EAP102)) +$(eval $(call generate-ipq-wifi-package,edimax_cax1800,Edimax CAX1800)) +$(eval $(call generate-ipq-wifi-package,netgear_rax120v2,Netgear RAX120v2)) +$(eval $(call generate-ipq-wifi-package,netgear_wax218,Netgear WAX218)) $(eval $(call generate-ipq-wifi-package,p2w_r619ac,P&W R619AC)) $(eval $(call generate-ipq-wifi-package,qnap_301w,QNAP 301w)) -$(eval $(call generate-ipq-wifi-package,qxwlan_e2600ac,Qxwlan E2600AC)) +$(eval $(call generate-ipq-wifi-package,prpl_haze,prpl Haze)) $(eval $(call generate-ipq-wifi-package,redmi_ax6,Redmi AX6)) +$(eval $(call generate-ipq-wifi-package,wallys_dr40x9,Wallys DR40X9)) $(eval $(call generate-ipq-wifi-package,xiaomi_ax3600,Xiaomi AX3600)) $(eval $(call generate-ipq-wifi-package,xiaomi_ax9000,Xiaomi AX9000)) -$(eval $(call generate-ipq-wifi-package,zte_mf263,ZTE MF263)) -$(eval $(call generate-ipq-wifi-package,zte_mf269,ZTE MF269)) -$(eval $(call generate-ipq-wifi-package,tplink_xtr10890,TPLINK XTR10890)) +$(eval $(call generate-ipq-wifi-package,zte_mf289f,ZTE MF289F)) +$(eval $(call generate-ipq-wifi-package,zte_mf287plus,ZTE MF287Plus)) +$(eval $(call generate-ipq-wifi-package,zyxel_nbg7815,Zyxel NBG7815)) $(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE)))) diff --git a/package/firmware/linux-firmware/Makefile b/package/firmware/linux-firmware/Makefile index 3ef453672..ef6cd075d 100644 --- a/package/firmware/linux-firmware/Makefile +++ b/package/firmware/linux-firmware/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=linux-firmware -PKG_VERSION:=20230310 +PKG_VERSION:=20230804 PKG_RELEASE:=1 PKG_SOURCE_URL:=@KERNEL/linux/kernel/firmware PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_HASH:=5968d4e5178ca1ecad3c41c36bba4602c288f25c7a48eeaa74113537578199b2 +PKG_HASH:=88d46c543847ee3b03404d4941d91c92974690ee1f6fdcbee9cef3e5f97db688 PKG_MAINTAINER:=Felix Fietkau diff --git a/package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.bin b/package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.bin new file mode 100644 index 0000000000000000000000000000000000000000..d87f27affc7f13640e7fda7c76e15e929acbba17 GIT binary patch literal 416477 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 z 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%0Ai^4=5=Jq54c3|h?qJ#Vf0j`yDmHH{`- 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 literal 0 HcmV?d00001 diff --git a/package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.txt b/package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.txt new file mode 100644 index 000000000..8f0bf6906 --- /dev/null +++ b/package/firmware/linux-firmware/brcm_firmware/ap6236/brcmfmac43430-sdio.txt @@ -0,0 +1,54 @@ +#AP6212_NVRAM_V1.0_20140603 +# 2.4 GHz, 20 MHz BW mode + +# The following parameter values are just placeholders, need to be updated. +manfid=0x2d0 +prodid=0x0726 +vendid=0x14e4 +devid=0x43e2 +boardtype=0x0726 +boardrev=0x1101 +boardnum=22 +macaddr=00:90:4c:c5:12:38 +sromrev=11 +boardflags=0x00404201 +xtalfreq=26000 +nocrc=1 +ag0=255 +aa2g=1 +ccode=ALL + +pa0itssit=0x20 +extpagain2g=0 + +#PA parameters for 2.4GHz, measured at CHIP OUTPUT +pa2ga0=-168,7161,-820 +AvVmid_c0=0x0,0xc8 +cckpwroffset0=5 + +# PPR params +maxp2ga0=90 +txpwrbckof=6 +cckbw202gpo=0x5555 +legofdmbw202gpo=0x77777777 +mcsbw202gpo=0xaaaaaaaa + +# OFDM IIR : +ofdmdigfilttype=7 +# PAPD mode: +papdmode=2 + +il0macaddr=00:90:4c:c5:12:38 +wl0id=0x431b + +#OOB parameters +hostwake=0x40 +hostrdy=0x41 +usbrdy=0x03 +usbrdydelay=100 +deadman_to=0xffffffff +# muxenab: 0x1 for UART enable, 0x10 for Host awake +muxenab=0x10 +# CLDO PWM voltage settings - 0x4 - 1.1 volt +#cldo_pwm=0x4 + diff --git a/package/firmware/linux-firmware/brcm_firmware/ap6356s/brcmfmac4356-sdio.rongpin,king3399.bin b/package/firmware/linux-firmware/brcm_firmware/ap6356s/brcmfmac4356-sdio.rongpin,king3399.bin new file mode 100644 index 0000000000000000000000000000000000000000..63896b607c4450238190cefc8b17f98bc7d01ebb GIT binary patch literal 580258 zcmeFadt6l2{x`n%-g9FB83b(@K!J`F1^LM)4d>Jx$rS2)fMnGHfm~zxUdEFzeen&+~i!d0wyQ zmAyW*-fOMTx_{PZeb!}@TfFhmM)8HljpA<5LC{gqanP5bK%@JA5#RlP@Gsjrd-jLJ zhY&)H%KtBzL3n`U&eiLC63J@)6K}M zaNrPfd5jVH{{HXx9{9Zne(!Y@P#5XcaK)o0vJ-aCv!HFDG7#l&47;za zG?EP~jN}#2X3&eEKY=LE4Txhvb3ly~GmPZ3SxWqx`;6qRB}VcI+_a@eauzPP z+(7b_>oW-X4_%Z;L~`!lL{bl$ds`w|3Azn&|Lsa7`xhjVJn$sL-vIgx zc*XgNqzOFx5Vsg%6~L>3e_hXqzE2`+zD^<^{4bUBIKeJ+XI^i>iWdnSqe@Iw;G z_%Vr$1aYlNWX{DTV(Iv~AB)c>k%^!u!8;9f6KJTU#9Jbg$xo+~$fEN}WSf{ozD4@6 zaB2CI5tjj?_!;p0gtEIpe+TamaDPG_egNHuvdY?(G!v2bepND=3%VQBfOJjYpghEn z|1OD4MxAMX-y%JAv%=|OQBE%E6^Hac1(Jw}bd$sNpnUxl+m%EgnPl1cOvKZkv^HJNmQEKenqCd5aiP4`>nmKfrB5+%<5Yy)}_^%t<7#%t|C_s3*cG{5JX| zFM-_P#W>lG@4Q|f8TE;6W1Uu=INdLFwfsao^OE<^rgp0 z9y)-z4my0$NCwp#NeQR|^=tyo_=}O$fEqw2K;MCWIAkO%8<0Qf0{jU_P}g^$AAoQ8 z5V`_%=SSfC%t#iXoyEsd7U)^f9#9kLOOWRT^u{;PN1*q9Fp~Y}l{zm_C6Kcqiy?s= zjs=cOAkUf;$bOL8mOyNvG|<>#31kbX1{9l`K%&QkW+sro&rKjxZ%-gyixP;KkG{Sy zffWBSfiOD~i06d_lKff%`QVL&D{>)z{4XDmWpIklAo) z6eYb@Cv)k5DFXvi;XhqCF%ACx-|s!}dk_5H1Hbpc?>+E)5B$H^1Dizm5!$LvVnW!x zv5%DV~wTmx(E|>lUSVX?U?{Z=$YSoG<(D5+9c1?-HMv)2|mFl>O_)zlPmU z!fx9knr^-LjO?xz`3CA=E50w6w^n3jf3Y}2&Ijel{z9=$F0W8@%J~$Fb#nS5@m0C} zB5{n&_o(~>#6XbNO#f9Pgj>~*S;u$&pO0idtUnx4}bSp)#+`g6K zsc=8nhTWsGyGA_INc-gxaj=|zg*Z=c_X=^N>@FA2%lW~T`BsYm2=hHC=eu0|H0+*| z!CF-k6HnRr1CFA$##htHSO7l>Qs^abK9 zIevb4oCPsQZl56DDTl)^rxU~kxt#k%y&Qj^cx%`#3cDZ6^}SF0mz@87VoSLEcjR;h zVw>z2#3VUh5Z{#j_leib^|(hoFXwZw7?jIfDjt*L?-es;{s+XM9KR$yPWfV$oNvA; z$o0$@ACvj>#r$yiv2gf2*W&X@U%#81NcO_0+q79W?(Su8#rc6Z9@T;jrTzK(D?N5bX5A@kiW9+Bho z#c#rXWxm}l*314yqFGLNhxjkKUtD6mT)%~)Np|lLpOV8DiRp4ai^MZ>y%vd5IDN0| zt`;|i`|)!*zt!P+x=_3^%*Te?t;pX(u~p_@D6W^?A? z`-AwlobL8;|K2Y4$mzi^xA%5&OW17=r?<-KZx7Ft+eJkWEfB5YdZ)|oJ>n|4-2277 zGXMQzzU=0U0XaV*ERXk!Z^-_9ajIPID)AfHze?OEm$yRvN_JO?7v%KI#C3AMt3=?@m(ekm-&{7qvdqV#JlAD3c~d( z5H)f?FB1>Q>FyN|%Wgq?XQ_Bm=3gx8%!yizv0Q})23N8fxdaZ(sfM*vg z*bTfZj7x!E*rJ4&1AA{&a3ye5mV$QyAK^4|eRcycjZ|MDp&%(d5nTdf|2aLU%@)y z!p9VBpy6c-HUggsV>58dAC>SF;O1=#wgbCgRB$Hc-=km$aNFM$oCDnJQ}Ary*G?#S zKCu6v3U&dvo>8y>T-u_Hdm*r^Rl!BTng3F-8+gSR3N8h14&!oQ@4u9MDk(mv;9bBk zoLBgF1GfbgTnn7prQk!r?j8j<11}9J_(R}wPLVw?@TUd^w^E*11^a;y4N`C$aEndB z0pQH33YLJghbx$v&?im>>ws%#E7$;>G)KWk;FJjpHUsaPsNfV}-7*E+fmLf1oC!QX zj2*z{T(v9%Ilx6#3eRld_!ksBANXJxyMVubQ3)4-buTNp5I8%Gi-0%nR>IxD(jEnu z0>8FT!R5fm-c)cUaN8jT?*h&|tl-_0zfr-pz>fD6d1!Cv66 zFDbYcSl6XsKkyxRyF+EZ4cL3FGT#Hh--odT{PkodoFt-8Zd9-i_$jA?4Zst!6>J2q z4P!I#rd%aF1^A6w3bq69x;gWrK*>h{{`$PaUkKcMhZ0@{{NY6<+ztHH-AZ^Vu)(F^ za^M%HDfw3dmoHVqcL5&@VI6->YCd@R|Jz&IGP~OTiA{oO%W403T~q@ND4BcNIJzII3B}F5n$uECBb0 zaUrnuUkXnV@S%?t>;|6jcLkRM>;9qOa^TrvTnYUBBT9RB0UwkUp54IyE(O;Dk9k7j zIRv~bjGKYoTa@q*fgNQE_5$ltlyPYVej!!Ce#*a9;b{XtmZpRUfLotd!X@BOCoAD( z2<(Rbpc98`FUD1R8cft$lTrNAqWDm>-D zs%j-|C2(OF@1po+C44t<^D7Fj1qF7kL!i2K@asN}mLPYu{DECE(ZmN$^fLkso;RfKsOA0mulP(3Dfsb@6 zI0g7%kAm&MJKj_B&jeogzJeXVfj?`N^%wZHS_RJrPN`S$d|>lo1-pRP{Y^BnHotXYXfbn;)IU)hI_Pf4f`|2i1o994b{sC_0=FHy#2458$p1D6 zuIU2V;Mn+YIk2h*GX7&8YH(P8!Leb>FYBlQN9=#((1L>;TEVMChf4n`Uf*tvIry3w zrLwrVfP-1hYsLB6d-*&0d3-MK<6zKq|_SM#s&Z}ZR8hK}fJ8^0sXgnSx1ge-ZxaQafvV$cI&O87BpsA}fac9w|% z;$}qrc>U1A>HSxm#GUYCa!ld$K|dPsJ6Qf5^rKzIv+;{-&zZ4;!KLFVre$31e-Lkl zr{plgl$mTh!%mqob-rG>E|+U(xtLTEP`jB_&dZ1@=EApq-!h_(nIOkaxVgsJ?jwQu zU2dKP?&&J#XYlsiPv(zXI9l*?Cfp*lc-Yf=gEt!+tsSPfPuTGo4fRe(-FAFo!1_po!7oeHFVY( z*K)q5L&XibWyq{?E;5D$bne7i>JF90{fYa7H=Q?i_PkYGEAV;k218yuF>FQ+1t~t~ z2|oU2^Yp%NA(zwz1y@@}6`YxI~7gH050+ zahq#ZshLeG8)xS#%mGdn>ii;fV=l1{=1)kZb_aibF0(yRU@PMI6u(a*yI!4UJAv7! z<*KwDdfl-Oo%(%|L`1Z!)s4=PyhhBU4G}Q^Vs=}!|{;X4T z;u+64{xH9ZkK{j-RBjzVRUo5I_?W8P2HQ*{A1g3vv93(NlOHGZY)_0$G>nQkWfamA z946glqbqIB0%4A8q07oA2xTVDw@~<0QkkRt+EMD(fw{zN5}0(8>l**U*{_H?*5q1b z9FRk-3Bp1bD{M8gu1M$?T^i#mGwNp=gkmQr>PTr*tV>tJ}UBrA!fqOIP zK~OFFFta`(SIy6sbYpgjI#q(O)nsxF$~6hP>rAdtCm&+{HBRohk^$C*r9 zore0P)+poGrePSHm@$J-MbD&ljujRgb=Swb^fQxO6vw(Epjmb3Jz`ym8vQx6Dfnm~ z@snX@-q5JDt3Pi;J+Y{Ghjl}6U7sP><}&2wgK9wMK(@v3gK9wMK(;0DgK9wMK(>7N zK{cRr`803(%?R0>EK@W3juMr_emzBXRSsj8Y2GO_X`%cPAnMX@MC!|-BSW1BLZfDl zDk7uOeY(ns7lxTMUMs&LIJ!?)X+iA6A?pk)Z_U{doZd&QmRwUIgWu7G3Bo8(WKp7L zXs%IU10P63aub9!gxEZ$T*gYn4ofD4i3mIA859olNQ3=@Zb>WJ*`TkCyi(T1%X+yi zM@W}r&U(J$)p+WEQE|)kFeRGWAGc{ z4%m(tJE#%Ws8o0NW2(b-^(D(PJj7PA#4VZa2K%PqbA60i*T_PisPxh_@yMe;4aIcU zzF4c@9qKfPLY>D$+i&?o+Px9<>b5);dgt#UeRX72%+BMc0oBnj9_?TvVs{#NYMPmS+_*41KH+nT%pPXkm=m#MrIwtl;wEmu|K^Y`YE=QafIz8tYr zP2troYZOl^cs`=~F65ne`L5i%^6t(_5Hgt+8C601$K!Xc*1xw(nLQBQKwXPyORXUmu#bvisqe()y74M=xZC+YI~D&lZ8#eRee-WPWFxBtvtskAf~1_S=M?~zfrxn6Y@-T#BR9Xg2ud^EbBo7 zDn1%@`*SZRBsRF)?8L}tHs%FF_RPlqxEFsT4)X-_;=)udAH{D9 z_FXnKggWo+yUtHWnE7Z?!z|jYIALl6Q&eviR)+? zcQI=2(PD$WvCZJv5Pb14Y3dCza{rwxTcEMDyjsLucf9V^LNa=!@2jFEp152yKUcEO z{to4T9J25!s9C0i2@HMrbM@esD8$ydETx-*_gEyn;>x=QxSjZbU9N*XH0n&eAc1DswL%;4JwwN51V7@-1 zTNN1Gt-5&c5HgHw*Qn#Oz&Wk3(a58PO%qUW2WTni4bU#onHbnNaQ$!%n1`E!n?g}o zn-X1`Tw*Z_CBZ^T1)a!wDyMG>K1}UQIiGT*8T(ymdTy?YZ(YI(s#MN51GOy+z8|s) znpBlfMRg0(v>eXPop#GTD-s2_fU0ff?PJ~ju4p$ z)wK;`OpH!sbWE#v+Sfj;Jm##6?))d(aMmODM5r^bi8Or(T}a1)?&Ff6AI#8ylR(Qs z8$cDHzk)7-;u;j2Dh)2xbCrBzZZxmq^P$hUKeWaN(crTDE(7i$u~Z zosq|PNalf48zOl#uba6kII4%SZIaCCg^jLdJEVxkyQkZYn5Bq=jXmGyUbx34l^uB$VC6NSoY$DcBEtcz;5wS}c+FjN)BYVH(FJ}Xv z_iaQP5;*VnN;<5ve)D90W3dC0Yk?$$I!Vao*&(UZb3JQvX>3e-oa4GZ4&EZMH!yw& zpSg#%t`BYrAD#i9LZ`Xqk}%w$bMKzc$C{_N@lko7I7Tmy{UAc6kllcb31joLzz4C240_a z-JYqEVXV$dD%J;QhIUAL%O)w(QYuB5X$?trR624pvpaRxNxLaeW{9i$gl8+~Bu%RN zsLmP)vHGk@dnRqyp^l?Nq`E(cg%2RTp+(wdnLA{W@j%b{3v;uo>l&r6%?nKXrLXMO z#yyh3z*^A~d$jl!!&JYVWaQTebs^??WhCZ8W0I7oe3KzRw_@bqlim{cl|^OzS&WK! zUQ)Tu{0EY*d|z>>b6#J6zb2z!zYh0nPPkul_{nm=p6)}O+^?+FBB^fpv#2NQgWkTJ zfFnQaqGQcK*LAsr?WL z;jFfVM0ur6v2;x;#_TG!u(oEbE`RB3L8#*Q3o{+m5-JP6@h)r+=twCG^F+&Hcbf@0 z`6xvHiUCP6^DRw4Ix7F6&TlR|{PJ85aNS`^gm%j0r$UpugSSaH_=)XJ%=H8J?|^2> zc!1WN)_ctZEs`$XwT#I)2KRwSN9S$~xY^?o)zCAC8d@aDUg9|f$7MxV?|D&{o|A`{z^4detd&L1UYgRUFJ}RAS~J#!F+4_s5KB1V;(gHxl}>`RM^X zGy*uHPOzi(K1D0#T!uZBhM9nNy^(gvuM$&;z5!YTS|T0i%qi*(!M!2Yl7h0$A(FzL zrL%8FD1~P%8-mw_s9cf23+@)_wK>|cLtu%edzrDEmvT)CJp(I`>L|?#>aUXR$<)wh z{|;%rg^YFtiji&y1KTdPBzUs#AsU`$Yq&nwwJdRE<#azrzB27)r}21;RGUUp7kOKx zgK2eTRnFU62ZVXk!o2n{FMIqznIqNEO3Pa!mv;fuw>~ZL04*uh>406giTY8qTFZ8X z9<)?A$F&X(=cDG!8)({WIqgX~Z7TAnX{{1c&Y|g3(yb^zCB3IX&O01GP$Cv)IOWyz zCBc<_lpDOaM$7G;2`SmZ(0JO~yX08tPS~ZAye3dRUoI7;ZLTFF)Y#K(=c(pnpJSej z^f>q=|C54OYQ2A^Fw}9iuGV4(SDSLDr5^W4QMF#_>sSZBAp4^PHZZwY!>2SrBg*U6 zyxvXzlhC$xWp1Iz*lavus&y^o4-~&5tPfu7y&?Bi#h$lwp2SiMe_*47Cs?y4_fFvR zuzuB)Ax&Zpb|t%9*Fm$~eVOLw^b+8>IpE%4~4hk9O#Ee@2W7s|Y7+o7WH< zWmiFqE83|DU{78j+}fLha&JXViu>%S z3Dq>rh|O?`UxPB06Tg0agEKLkN}$#N9s8CZtlMeJF}9IuR0mf%qr9*XEY&7h64ujo z6;2i8i|U>&!8_iex~H%{iYKEcdUKYMlyrGbC#mD$(lvgx*C+KtdPjKUZ}|r-5^9eG zFeio_Un5&7{niI9bCNMw2ODJZBDw6B{!O`sDA)W>zn#)w_w{MC?rqpv(wc=jA8GVT zB&}RpYl+Ni25R>#)T&RyUb1Ahv-vcH#>WNpF-c9ZRc$mRs{mn^&zBM_d=@v->a0}z z%so;#y|bPSSHZT-^4oGh-dZZi`@ceB`(&fDs6`s~J{yQ(j}{$)-eP>JDa0Q&<#b)M zksV#?DlI$OLAWQ22l@tiB1=0q68`{xyyvj6sE7;1aBQm4o5q_9$Ozoo^iJdl`b`b+ z1?qdF{mf{!kJ+{k5jAdCm(D!*6iVm;yloHf&cC^gL{0}zLkpQc+Bov zhE@%%#Ax;N!D0ybz!&N~+D&X`tY`7*)Y97$T+pD{jHIA&`X^p(t-rsDiz}$9MvB<&F8u8)qG49yUnok z8vd-5xr?M?4I0U8f5r2(FjE-*3p>xbB0jys$sBhJH~OC}Gu&Xvc-r-3@oYc0!nvHo zUZ}`e?i|tds%X&BS$T-xB}~m`15w?y2j_V6S8Nu3FzQ4Dx7k%v{0>Gw(kril-Z?yW zQpAaw{nzgIvp?+6YRPkZ_*!VOdzbGL{^HDRx)CG72EK*GnAw0_p`+v(na2h~4Rdhw z;uh+%n-bRtU+*T>qf5!NRU2vkjF*f*>zjqunyFgm;;Pu{R99S7qKevNj5iB?xX-1^ z{Q#QK1^G-YsGP3M^JaO!8knl$XPXD`gZN66y|qir@A44KY*<^J-FX)S`Tqs2vo=5P z;$v%WboJyX*&cUISsG-_k%YC9Da^bYhrV4&-^fDnWd6Al0It2*=oq3R`fpCj@&;X45x~c#gOJ{mGGz(GiOd0vFzCx zUHw|(SH_vsG&>BfZwT>|3WQ;S4bJy2#52~5F7{Saol|v!vFD8JMn zU0pqGOw;Fl6;DTTu6H*2|6@s8?l|yKhh9I9kMplxen_Z7+voBLyt)GRzof1v9#Xnw zM(svDT48qG=s5~rn!fFf_60IxvVY&!TP2&}&5exp5YG9}N!m&_@TPQoZer1CPjt0r z=f}o{)1pqjcgekEW_E>Bd#dJ=JD;&eW3=?!wG{`y)$C-fZwT*oL~#1;G*nv=<3EHs zGiKN7fJqx&5&vaGwc^LV^V;Ygnu>q=$(Ty-6q#o_q=?F$8n%uWb7diw`!W% zcNlkIj`NLf?aqCoF0w^Z?b1ysYZ&awfMhfNRM?u^1zmcT>lYzqy6dWnBdW6kEJyqi z)n7=jm1`<|*$tOo-H_7c;~OrOY?$fQv^I!r%pbfB;^mk{K7-$JUK_V_TC&%1J`(P& zKAiItV!38!t8~4+B>0ye-d|Ics9I74oo}-i#bte2L^-nBnZ@qlkZ}-1vE4$hU})TAT~edFAg&BxXKK z&LO6|v|(zlg^#XE6i7Ku{c=I{zC+VFND(1!?8mhH$NU7ePE&=odul}FzyJ$VKV~28 zNnH~e##9X0hqH`Ywt}&76?(s6-&`qb?9**gWWYW$nsTre9C9Y)R^A4SJu_qw2gGQ3 zy-#1Ag_A2~He%HfX57fu56jE}ExEl&6VTGek_;%tbUCfMSaI!@F-lEb6u@_o#+<4Bk6{`&F z7qk<5R5Q@1qst@CZd^e|YtAy0w>jTw;#SO+EOuhU*(J{TiG`i{p{*pC_YP^IvZt%( zatSp2B4~IW&TFU~(zBWYyhDh^$f!dM?-xRyH=$4c9=iI|-QDedBxTU)QM?N$jNa~u z+);d@a9YstW}$Mr-E*$srG)%~Zx%Bd`HNZqIqdY#Ex{R6qq25%=8<7)ek(tcXLgL> z7y8q4-;oBJWgE!-xummKNNjmTASQyYe`+tJ&0Z~AH%vvFFb5XHyif^G4!_org7+z* z&MhI>pdJA+OyDSPX0-f7KlMR71UB@+7Kqf#ekO3RPv_xEiJ#-oZB+4A|31`f-;%$} zdrh2SSMQw0LfeoSgO}LSz;hj+QLuaYX|yQCvu_z0hWdh^@zXNim$mOJIG;%^U@}q{ zpZ>P7t?wB#`mPy$Re`S|*3{!J4R+OdFBv`7TfF?yh7XpLu_?ay^DTTy{=y}5myl92KOIIZ!k zaHp!8Q4*XC%bfAkle~3}f5Z8}pgbc9b>4#0E<^p@fycV;4wQCX?)>=jT>)p$-GQ8L z6@OQtr`yag4b1E9>ukg654D_1f{!2aN?tRSR>SC&CWCdGbJ%gxQOq8f;^#2p>+EdY zPB5aCB``R7LDMkJ#dU0CXA6w@9D7tMCG-qyP(zd_3w*%lqtZMp4L>SjRN_F^vMzre)*IUiW977)PMll&>RPNt)|~SUSLK}Iv*f76IEJ&L z4wp$vhVRwK&pl4pDkfFyRi{QZtqu$(s{_e|YNqL9ho0IYjkPDLc1UB);L6`2jW@?- z?U2S%pDiaNzPsc?<+P|113b*QXdli?JSx%1*pd6j%LI2gfnux+a$fy;$~Ik-{C)xN zWK>z2pp@CT8=4g^h*v zn+sHYvL{t2z|2kXKe3LvF~)Bz%lG83i)(;ZxRLlr^HJEHsyg0h=L*}v#Z0VO_oDOr z)A{R4Fy8slt%Z$-`jU03)Cez!H-StB={TlZ?0VHzf;fYGc5Y~-CqdI!hB|jaGv+j$ zTNelI80vfjcX*-B=MYxtxwq)vhPyrYtu*tmtQ^fVwnNj+o>4e64|Q(G**86{pr>-U zD-78lkMpoL+e3!Nnspf-+d3OgPLy5E^G$|EdLH*onFc2rtf$FvP|~}}@ObR$zbso) z#037;Q_NSQ>>03{4)!t=Gd*@-x*~*npc^LQjuCgShn?S?#@Q5BbCbGeoegEg$)_{- z;rxl7Z7m&@(zMj#EaUiX&M{3o-oRI)&y`!_sSPEl6^B}JkF%)^?u~8^k%`78X87=j zaQFH+u><1{L5+7qxZ(0|rKj2k#!g0c`LO25XOX!3Dq>Pux_%WFPG27!k2_cT{^Qr- z-(p?*{}YZccx8UesFYJBWxCWzU&-2p2-PUYcXVxnUo$Gfm&m-g_H&5L z&wM=iZ7-LjYs_+TGhsawU84!|{pWX*2|1ih?Deh&gFm~dCTXWL@`SqRS!aZ|*|-|= zm6-UEkr^en60;pz4n*gFRvG_FZ8^{2W}EJ#jnE`Ty<~)Y_zHfAe{dj1tHsWH6dyM; z1G;5j?=a(76B(<+31R|n%}4PAP@7$HXv}!EFEXb9T=RQrYGx8Y?O(nE{wXKxRU_9~ zy%uU$mCQS;Bk!QDOW=xaIbF1IJYh|N%^ zs!zT8Xq}Vw?MXQ*={?&nF$8Pr#WS3WwtXVTR( zcq8>`Uy3KINQ1Ksb80Eha&?%iQP6W^W^h(D>g(*;-Oy2_OU-TlqKymO6dA47MMlqz zA=&30+>QRci^W+}{0`e>zuR`L-)x)cPvM6k<>SE-J();HQqz3{8Vt5kew}S3;*4^f zvB!lt`rdWW2{zS&Tb8_w?j>>fCHe8-GRR!&o=TZZ<7L4$z^CyuX0xlXk+oV~^u||Z zv$YlxzgQIydCj&q&K|m zJlJ#{Z{lM;dz~pwqxlg2kl)5)_KeP7i`y$VbQ`UurJJOD<$F~a7*MfVAI%B&f7dwy zcA%^3Tf1x<(>w24Y36L47UJ#G0KObA8E^Jy&3JjMT4eMGrJV9Ap|UJOI3O9C=SU+9 z4@$g&nXGST^dC=K;!WxxWPoY0JuWRBe{?Nc--{-!C`l$uU;w+;% zi>r7V@0sM7xm?8#=^yq)4}2Hh*coyAm~zw`@0-3{&P*&0IxeFuJ2NHOfm+!2*X?tT z#y*v#)*}5v646pH1o39(I=zGDJdpWv`IED03Sr2?AqK~nE2d(H{TfM*I~@e`gV>> z$GQ3oX0GGJnpZpW^&C#@Uoao-VA0Pz?4PFYpgkCY8-j8&@{fo+LKH0&>U_Fa>jw{d zeroovWizn1Iv}a}`3=`%?I;djx~ypa(6=_!+qU>Ye+}f(fEOVpf=&#jCNM;sN!v%SP;aNX)JwP8m*F*odY@*yb}xC3*=|`8^+|DXWiK@Mx>{*`mExjCmqgq4(q0&J|0$3TZpwClU$Qpq@|Ni*VXo1xPbG+!ueU${^`uZ z2U%Jx&Z4$cUrDi$S?>s5&+SD2j_@57B2#Uxd4b*c?{o}3Ipe(1R^?QCX9OKM zv%ba`H4EqYvwp7gf~)E=_NscEK|RLzsa@#ZrkxB!-UemXXTi3m^*>s0=T+%q<#Y^A zpJ;18MaqGFzgydoEC z@eVof;?X6fg7$8+zjgO3fKZdSl$$VBpIbAXFf~JgTw{zPgQ1V?Gja>4U;7z}1Ih9BU zddke(mPMuJ7YshDNafYiFygA7{Q&$amo>tqsJGQ`N5}jBr@Y7fiaVBa>w|TSjf~vq zpt}PnPo58TF6dL^RBT|k_ChLpnQT{LLY=evhPM+nbM4UaKcUCjJ=|WL&xP3P;q9EB z3?Gjfci0ivu7|Cmr0A&&b(VxS!?HkrNcE%7wro(U>1@pkIx?o{eGQ6aMac5f-wQ`B z_sd`2#nWihyLgRyN=sVUNref@sz>b|%}Xkb=}?UOSJ=rGdJXLw9ckBU$NZbQzU@k` zj`K;#wW60wD^8>ShqSKy73X@CpVhA8GF)W*)tcn4t7g}dD`}{lYzZ#?MebLR*sNc1 z<{|f?S=YL>)m5Cjh3=2_=8eJYyYZ^#{MmUYC4X8q$FwllU+~em&iWycA*$o7se|}P zNY5gT?uy(Fy-c2`eaFhPoZt;oC?oIU$EZ(Ih_*Hg{k%XEA@f5IShoZmh z`FTrHaWkh1^)>$IvcBv6t+GBrS>Hgf{8m}s-d~q>hg{a*`hKgd1y{A}z;BjCby)3{ zvKIcLT~+_1tfg{Ul_)E#Ag-Ryz-YPm^jCV%-J6Fugvy*((LF#u)s>_|(Qa$|k{apR zDBWk%*}EmUqK8X$5uHnFIh5^-%I&~AqDz-*RC1;ye!Vr)c4t<7&-qLA)U*^jWp^FjX_Ka#oH74am#1PCHse%}*3WT19{n(; zhxU2D?!8*x2Fbj1jZ-+U>EVPIo$>!>mh|=X&pm~k^r(dtyq(UhPvVnt4*7P7;~j}M zXm7gSV$Cb3x72jSt>hV;*1sNN%70!huGZ?lD>>&~d>=JF(cOU8a718yx`qM%*$sy} zrVWiaWyU=-&R_P0I{z9PYdrNWJ;`RwE1AgZWEWjUG4u1th|RbOq+e2U&oRTfw;a%0 zxAIxRN*j5Wf%dAy-m9%6xuqkn8aeqkb##LuFRA=9nofUlE_L9?oDg|pl^t*hA zK*x2bJhukObL*^Rc1OHSSJA82yj5~5`qw5p(^q$MSerhQh@FnWuUEd?ue4gxI`d_2 zoF3Zg%%0+ce(a%ddLHmn|4vTTqMV+GI=5oR{+7)$_DYV5rWxN&%l$1qX8aYWsXLTK z>pI1efjxv$*Q<3Hxx%m1mHkD|SIbmK_s>#7b?FaXR98WdIj(iFem(5XGa=fZDvmkH zTp#o;#aSSIJLPMlvaQ@4Yzcmf+fh10wgmswhudj+u3YLFg*Ue}th&#RU3EY2+gEs> zxxyRl?&sYs^TImB*HL&g>!RmLZk)47^*Q)n=Q@GDeJXQjq0Mx?U36u=-6FT+>UmV! zMSG@y9$no#_g~d!I^))K{dyi<-9rn1#eGMYT5z5>6cz{b{>`{f{Z)!Axh9(5u%^cR zigO%l^3pG6^wl*P^egUbx-`N=iAzU3ly!qEQ;-^IKVdGTpGx^{SWmYENe}K$QXGNL z-EFq?TtkqY~$Jc+A z$8I?ft&7& z+EuN1;xaVg2*>%c*C;I*-#oc(72Y5z^YLtN|9qS-zss{IvWT?5 z)^FcP{bNY`?TKI;UPWIhitXkujN)0yt|{E=EqHS#&*$mX4kp%;Rdkn0E#Q0)?tKin zNn(6b3$d&!#dn;pRh83=Va4o(e%^*sp9sDk!b&_sk;6asQp;0WaihA~m$~Oco+;oO zMXlH8LY>_box_fHEn#s+aP^)q9sTh1l^WAAdm{J@>{rgky`(unMrQQqf>q?7;aoI? z3+K`=FV`WLWmj^cy7GzO3al-hi`Ibl?;E{zOt#?e?cAzGI92)7tioN`ajC^%U9}A- zqpnpm_{!;xZJ{m1(%bocLuS1isk*Rk8Sz49G`}u*FGeV{vA6TFcj!qWy#dhiv3zgm zjh77`8_vjVF5F|`8xmrTLdu^)yBhTPZsbXispv7!=Vd#bQLRS4ud}(w>`{lmb2K!n zt|0mi=N zxQk@2z24a5k!F*p%LX>7_$1!Q?{L14^F8+TD+skWrWi|$Q$66Y$Kh21!tC_S{FnCz z8-qvjodvx&FyKr%j#pW%*qPI}dt2YZ>*tI}Pi0-?DfUXb8kLbjw%;R}2> z`a(0qVI{UFg4gxoq#q}$u#L^@AT2#j4szRVM+*w;qxl6|oEe;Kw#M;};Dd9X2=2l= zL`M)cw9-}EI*ona&5h%{^hNiU;KMyFl0D59P;tlLGO$Xit2(6`7u6JPi?HG4rHva$!|uWP zJvheE+h&;;Jd1p&zmA^geDy#U?h5HwNlyfaUAEekeanw>=o7)j%PHZIZ^9u1FBi)p zw1#a6dm0=wSF*Kv{>m0o!mOue_bqIQDAKF zO+B^z@y9wshWg@_^e*&luffVdZmA4EEHM^0#*^Yg%rgeHDYRmwGnBb~?;%1scVZNs z4_WScMfmEsU1ckAw-i;#=%{<%qj8VYFnq;VtioU4(3ZtY17|<(xScSQVkJ%U=Ju#D z&fFjB^4gQeWJrT%M_qES%fPqSPvL8;T8T8@lg)~(ZhzfP32Jw&WNc&1gnK11?q*nch)EcDT{2$V4{%zX* zbsr$zK=U8(bhc|ota2=KOwwyExgXAu2D^@(hfT?*H|;LM@$*+jS2)9{ibWw!*anTv4-^COrMvG>qnJb*1ep-8~LEl0VeZu}sHUqMqi`c2?)j zp0!rL*4eJM4(%?LHn!{7lialSTiK`AZp%gs&u^1r%BQtQj4EqqBlbhP=Cyw`aa#KV zNWlKOWjd-Mo$Vh?d_19~Q1RrGORds?@0AEb#X_I zcO~?kgubVGY83uVjX-xX%;_&^% zaQLntZwi~wf92jGElpz(<99PVxxHq7Kw4?=^*&}NyVsaTEuGTf%kYu$@lCoBWW<29 zVmYiHVRY1}jHn`DOGFscZpo%QiPGSo`=~t97#7k)bj(gZTV)-PCZF$5Qb9U!p0e|k zQhGCgyRQZI2>o`8e#dol+PWYQYsL}S;Z{}B75+JQ6xRRk?l0OjffQ|dd1`ric|sb9 zFjY96#jMe#mj>VHOA!os$GIM-Il_c%koMKi06FrMO>WaH`Ghgk(Y@j2MAq zC`0h33f0=BEiKY)d|`78zkdkxF9QF3uae_!SLL{-?-oDa5p0-_I?t2S%u9R6%O+F`PX;GSHuy*LmDuM{YwpRQ?hwBDp3V!fIL1x({zFo^ z{~=|T|3ix3HLYNff3@(uXEgtvKx|QdRk~MjOw;;c$?TfS?-tVWx8Dv;$6Nf2C!GP` zSd{mz@4|B2A-d>!?)*@Vz)Yck(P9l|lck_i*cuFmelA`90(|<`;D=2z+CpEuEcX0= zbiH|8ROh`vezsW|U|2N6qR!$1jL`vHP}61{XB1MDcsq^lO)6amm*KDtzxQ)SP44S{e}A0)Ip;k4 z^I6}YLXTWHxHivovQ+6A9~>2lhu081=~`EnV~mKokWIP?|7;ah10U0FNeeP0!p7BW zip*}MnB6uQ0=qH$k+%DodIR1G?e^`Vw}!X@A0-?3Z)x8C?a;HqZEOxaYd*I;8{EY1 z7XNG+8+;2kunZ_q;;-FnA(j{-k-IM5WPG_jmZu%E(zD`c7OIXO=w&ELCQSTO7Wj4x zl;J6(VJn%lHf)s*tXFOiF~dvYpPH;T{rt&!B-3(WO!F| zA*^TgEqL=G%y3T+S$U=5`Ouf(q7^|F^X~zMX?s5Ow^0l13!kExQ(DX;@U4(M%O;ZE zQw=UwaPCvB)##!N<1n6+QDd(|?NKHJ0=Q8o zx^9*cc1iVIy}nT8I2t-XByZQAw|H{F3#SM*;#$M_;G%bk@4JlO+n%N$ADkubu9I?8@^5>N?n3`)S{ z_y`_;H-wL{=C)$bSs2qt@WB2^)UM371Al2#7*h0)V1rriS-^MW8c%|l6>(1%0Q*@exuO34=dftUl*ns|EAj>`hiHJ_4TC( zEZajXMSZCZSFhlFInGt^f?kjFCDQrR7A3y?UD1TzTC}oN{A{Hm&|lc^IU^=I8?X|m zNh^Mb*bA#urSa)Z6^DMkZ>T!hglk+F^ z(fmWOHn=WYoZ&$oBsf&sQuK@y_y#-+n@x7Ix<@rH;7vbS&VL|s?yAt8@ni7eN%53C zOMFjCenOi*5O-V1>NC*?zCqsr?Es;;PKa(xgDAr_L#|5*M~-7|gUCwuw_ML_g1!(gP2vd}3m| z(!>p{SJXnIvX7_r%lL&@!+$*fq74Af)p zpT;}YcxP=`!P}+hCC~?i2kqZV#fE0o4}CaP4X!ynSRkd( z59i=KFH9%|h5wsB{C(_k{+|JOZGd-a5+}lX>N9G?F8IHu?+7J^8$8|tEqoBX1NvB* zpD~r}QU^HWhFuECQMB4Z&^(a3j8W4*3CNn071Y3gIV1JKj*{^(&nIiT!bOo9(UKZb z4{V}fy=@p9+&1z}4MZ8g_{vrxU&sw?l-G60KpB3ytEQ3-vMllP|I|_y`WT+mpXzVy zqv|&7qwCZID;UUVD5maoB?J39k`uNri+?Uaaw)$W$(aT@+cviIUXA~5Ob*|`NU1f( ze}vfKx%?)n-rpQk@GHHfM&BO$=K1ZR@9@RPz;~^(Z&Xz?;p=Dw+sZ+W6qiu&lX|XM<5v9mq`MgEvRh?tLp7 zB!7vZ1*qV8AYyDxqcVs#BS8ojlK%cX(4R9Q548r* zICXcNi_L!1frKEZv<6>uny~`wX+3J4&~_I^J-k?7bFR);8jFRh5V2LT1`jz)gtb*{ zdee47Gsc6`bvs{!o;8zKE>vbyb&7#R=H<|9V}*fY;ggDlpgy)$V13HW)&ZpkQV|?E zO;p8c^HzTW_M80sD_HZ-{GU}&v&#IjmDKDF{({PN-p^d~)l0$G&sj0A<2_rEZ^``k zY|;K71Vr->{GYfctNEL(>EZ9CbaXD4kH0f@hzo0gf>emArO>;*{p0@Yp zea@t)DkrgZs$$J^{88J(X4=P?XZz&~Xw>JQ#>_%d*=cxd9IzBSKCXQzpZGlOT0b#= z?|RKVL16p;Am1Xq4GH!Z`;O3uVpkGeN3qftJHms%8>N9QspZuHC9e!vc{!}txquFO z07xGpql@@Qw7ZqmZRhy-ORn+pDzlQ>xG>@yvA3PckUTOS6TM8RT7;vHxR{AZYyZI-;6#U&@?ZGKNMTP-)6gpe$Ypo0lSF zJ-bgurLRL>PV^T!sEi-@++wzY%22i_KEOd!8 zGbzY@)8H2$g|FhNwQbe#s zDef%7cLYNd_8SdNwJl<~;o1(TxY^Kz{T4$Ja=g{x6CX1a*?rX*Nq~wn%BV8j6bl zZ#hVP5PeR&$j5QK!3(R)%xuv3r^YF)_k89FToa$Bz}!wT5oiHQh?SaQ3F8(IF}?v< z_rWF}@54)vSb<-35Dg4vF7oS)*3zobe~pxsCJRi)_kq-^_C5k^(joym&`ry8i|kFf zQ(dKu%jt=jXlv;(k?ON9lz7W{t_#5$z^l6~rfeMBcUK3E0|QbG;xAGdl-N}J$` z$@Lh6T88xXrs|yYma{}w5Y4Nb9?E$1Y7(zA3K(fiM$UtRqRk8Z+}+nUMeZ#e*%?|6 zG@JFAC@=7R812Pmg6xy&*$*4_DE=cL`!HH%05VB^hNm9)68Ouw$LX0Sys;&XuN%32 z%Rw}jP2`NNlab?Xol#a_6^epPgN(pvX#`HC6zvw+tEN;iKpRp(o(1HoUTSJoxhwUt za^~*4o8+L82B4=PrH+131H0M@ZBIOSV5?Z~B525}X_yC9r%3t_hkL#645=+`wnwiS z`Pjfiyf!OqNS=Di23%!IaqVKiO2ze4TFBaOs^X1-{5+QbXWvOk45tA_N~pq)?8Ax~ei z{jHChK?M}h2Z0;NW!lS^{=afP{XwovhXcrU26Dalnu*s2rtp^RY$?|aa;>~(F};s` zvm=ys0dS#Jw@k=4!}lZK87rqF-k!!zdZ`hJm0YNKT6!;T5w&Wb)oPIq>N$@?#yHz<<3 zGXpd{N48)krencBWF|iF2R?x-a-Vr{U(cF?dY0Vh?!H^T0Q`4VXk>`I^{~ejRI-$w zJQL67;yjIyoRe`tq+ztQpNc)q=6b}9 zD>V?y{Ztkk;JJW)!?47w(;2qG4;lVVC|IhTTfN#YDo>+{_f#1S8yMQ000WHoA zZGTBIprTtL&q$;eRo&RSunOzHxcy-3UJClL8+*Bd9LCJ&OZqxC7=~qp0X1$wE3o4^ z$ZL3z5eY{vdE%iBCA&9xctk^%4QsIhtMY}7$$_BY0`Eb*SJ(;$K5b)zUttxwZQoMc zE9bfoi`qjOdzS$Av}v@ZM-;AInF zg%bPN;QQlt;B1P1yOa0^MDDkiKsGeqQg)-P!3K+K&)DE^@xL1-ttHendl~9)r55*I zAOCSlj^y_kEqOM(MfIks`t7NOxq7_64>FmS4L+}4s&xt|J@;E?Z&)8Fajb#oMM2p* zg#x}sQ;ph8W<*BObE`r{B0Y}|P}64dr0@I^qy9Xo6(TcsmRj-G((%_f5MN2sL+{Iy zMc6deqt14Q9v{IvCNSn*{7U}~2W?*EM^7}h4QQg;>@yAVJ7fbI#qwO>ON`tanH}Kf zk(oCoaJw=EJWUm3cy2F|3S{DZqPXSYqCI2{xm^l;43?}R+xN_z-v)}d&2E`TX4w*H zmiN=!89(nkd9RFZDC5cSS*eV#lYR5avW7gAGVNWz4yD{; z|GI<&4PS02eVUXn{0mYp4&@>(v|~8ZLN)wqsfAWZEu?w0&8~S+F0_)Ilq)O1%_rrV zjFq4YJ{!CEcC?e+xPY$=@#E(zJ2!2wy}gOF(TMN{^pd0$q@A`@Yvx7TNh_5h(oSFe zuXf_Y-?S6m{HsVAX8*xI17*lTOMNAkLik^$5OaOvBbj6+Nf8P>$-+Vps5(PD_Pjyu z`4LbYyTzHSBJ}r}&jd?ru|g)274XUJJqS+Y5iFNsy=S#(q0&9x&SD=mj4E%}N`Wer^r4;cC!L zUyP1Jh8vfe3aYqiQ&ND*cOMfJ?Q!1y=IV6 zcii@7UpGp+?p`V3tA)Qj<^{gSEVCH%7iXU7uMuu1pR+BzQdWCauJ2ZwXaidwDK9B|q|8&KGEYI7 zW&f+pL*Dyk-f*wX69Z#|PmNKgetTSiF~{Efdejwo1>viEFyo`#sKxuUB$3>|?FYJ~ z@={(qbR`<_EA#whwJ1_#_54_v6(}h!bu^=0nrt(!n74E0iGHQYyd_fek$jT+-)kXl z;CYar}xt0=OGb6=ztOXrah#0ZYW*7 z1BmQb>1?uQDFQ8JkvZn;(bh87d!yuk%BWehd?lsFYGuJLfSjiJe^NH#j`RES0Zy(M z;1sDoYMK&bhiD@!LycpCS36%jkDg1$!!g^fKJ9~N`^R99h90!r0$zN+{+)^rNt|n`N*-fOP3BDtqMtCq2uUpOppTV43T%pHeeLKxR z1^qYrZRX6mae*Ipey@|HRGO!urs+pXx(@iXPRbnbpcl=YM@9>zl*W~qDKf_zMXg>n zkVx+n6?!%J@ygJQF)t+I`|uWJ@``HrY1p@)7BehS19TLT{!&q795m;h#yB993+d<2 z`l)7yATSSD*;ZiJKvLWck0f77pif-lE|khd```BdK5)!)6;k&a*yu4C(SFWIN|KDe zIQd)Un2d772VU%ap_8O7=}fLrW~BRpQ1fVVIVs7M2PK)3sX{c9NLfA^C8?9Qlak;} zOG=~7tPEX{?yqx^5|I?mE|dsmBW1!hl>@YC@l6RzM;k?*)C!~ws)1CxGGrh10;Q1T-79J>-{hQpi#8*tmU#aL z;Sh9jCH8z!Hv(*_IQJ*KDv-~Af~Oe&BYh|j9ry$idQz&_F~Z2Y6I@KtWnw`OPv_GE zWsdnC-P*Ci{1M7n=15*OSt=RpOIh1o$p8-k_mWc9t}VMHS9Uj7CIsd1*gYc68+))% z0NOBRXaY}H=FqLJ4AsIHl$&!_qEh^Qu^2z*U1S85pZyTr2KDd?KMf1d@xgatDVqVw z(D+~+Yzl#tDeaey*h|yF$5w`ZJo@9BzZVm#3gZvkoK=`xaNL7!63$bxO~E#K)rKTy zE;Zfx@N1&WE@JHM7GJc32QMbbhQLxS{y@~=sKpkCExtGm?GoWlBI7?3{;!F!K+9n* z5;sx~8Y+n@2L(sCqlX|}nCl0AV1V@eSaa4FkLkw-Pe2bG(SSXMoN8e$oMR*ibd{mK zKzYuY*S0C=(Xz541=k}{{#d2dnPpg4WS~mpGl|v%`N%ZwOX{GrH#lsfVWnx;{Mmm5 z+5w^9BD@f>35Za07hz>bI2e+bIsRz=;Q-+fj+lXW>9q7}k)QRF$NMbkU9`y0r4h>{ zVtY^-dUT}UbydEl`u=}u>Ay;#AZoLfb2%W*C?72nvg}XV$rs6dYO^S2{|WgZEf%3u z$T1c4$~W9k0W3{|OCL3p6`#6&95@?@(4(AW+2s;#;2? zJ$J1u5--Goo9pVR3R%Z#OPqf%XFuw;!NMEL)OJ^Dj z;2C2B$ES31&9Lx*<*-@e|6u1ZIu*9t>sUq44Iu+DcT$9_LN0Q>Z}_Jk?w6z_MLYup zHG^rjDLi;X1xGYw;de-%H3WQ9;Vmw@Bj+W*bz~%$2cMBn}dt@wo^v#P5F!% zf>w1Tfv1lW%YDnTF5mz@KRWT;U&JmamG(HS!!fUHT8O;=40^#lVkc}_%jWkS6BDRo z(9=-vV`7~Cn3#yGcngiI39!+hl3y8090pd0(B{JX+ddFqpihXqGUEb=#cCRezj2iN zu(%Uagk89DX41H-p&55P-V=vt6J?Z7BN4L#Lew(&BpzYwm|)iE&tQXe0drgiY5yTP z!EUnP&bA`(2lipa<}`IOWLDC4KtNO^Z4JIHFeQ16GTdFeFFHM`>8N`8AZLu zM7!m6O1H`_rL0FvcdT3MHY4vz%a6lvP{v!&1)#MJkLo3PMjw1lNSy`*Hj_2J5_)D> zi@s9G#$jgNj@qb@>ZTHPvjbOEQr$d{x>2HTO5sC5!+K#d(0dZvgRmpt)2gG0eHbb0 zZIrnj<&6d+(D@Ny3}m)>qdgypQ)%F^W_CmF{wmNIXj6RhZag#I{BrXR*v?@5z+T1` zDu?y+eJS=StZ^-nUB3Vuu`dO11$f&U_W@=yH<3PXF2a1{3jGlJXxcyrTEzUg@L=XB z;lpG7_QAZrrPjz1J5lHDRdB)AsHYFEPA z|KT6_xWFXvv*E!tqw50TM?kr+@RNK{<^n&F-lG3$nWmy#vcDp9`>2z8BqrK>d zdRfMz-t)j@`B0(mpIATVY z#uKUW6oQNlT-_|x=B;5;N2Em(P@2TdK1FOd16w!t6x|jc{7#r@S_oMY+ekN$555*w zLP~$5_=dymA&6zfGjx0~c6|cyffip8$ig?Y2A~*S zri`GQ44|PhN&gKG)}b6$NCWizjbh{tvFPY#@-&T~N|218*-11wB%ZAWXYV_hjCi0u zXzta<&%~&JU!j5)gJvSnlRdQYeSC=-rzEr^(o!EfsPxAn8L$TTICG)VA=>9%&h{a# zJ_{Nnn?Bhak%DeRJ7=P9@};`nEK%wSr1Y7Z`(@8$Ah3TrQL-ohrbDzO-A zaha5{q?ATI?#7B9WhfLr5Yy-epmWbLG}opmJ`iW3|Nga@=@~~GSkVT58~aXxdU%oV z;=NJ(62>xGzWCei{+G}YJWa@Z;lUxyYWj1e4X?qQjI{Om;CG6fU83357cu8=-cmtO8#(?fyt1exb17Iz=z!cy;rJk6yNOuj0bYvCzKIe z8n#)~cd0oz=2AvvVjF*N=3@?LB;SPNDP{5uX5DD zerM#}@Zg!Ty?B?E-VLJUEZ+Tlcn4;!M5(3BcH6!Gga_GhdEkE>)T|BQ6=f&W`HIk= z$AHpnwqO6YCT=ZsbQV5gs|Bq{^fzmA=YWn?X0FCJfxd3$eJ>#16PcHlnGyY6Ku>T} z>TTT@%=QdBu~y-vub&*_nziQ4FU$m)J(JRBO8LLWnS1W%etLLDfI4*l$~vrnP$x6T zlE3w&dN|=hDIOak^WH>?%zH`DRuj3lH1AQQH77w^T`ozOyM$=e|E?h&<}@;QT^xD5 zQ-wHFnum>k%v-RVMnr%iawM|}EY3085LpWu{gW~yGr$xaCub5(p;o5oS+~RNDJe_A z_sF2<3`s9Y{23p1~*z55j(xJck71{#)cfIq-?vtxqpVu(F+` zHQ|d^lIS~w`DPKm3mHTlqzeWblKWo`pTWP&q`Q-GcM9;)IMf0tFfC{=*bTlsjGQ6b z*ks>f%qZcEWZ!s(4(HmqQ(mG;C-Y2$uvT!73=Hgpmbd4-*QCEDlaap0ZzDz;@nia z1@a+M8s}4IhcfhSE)p5_O;AXBSYAi_!h>GmP6s`5Bk6UojK008^xz*vP5b8R#6WmZ z4sOc{j6ym3|4XBLMMVp2)hVuVHPY@y+A^e_*}i2Dk&&SEZpO?&PGSxI!FgXISQ+}~ z2(hEN;4Fg`Q!Gn3u_rfr0+vZ{0k<&n<;P(!W)1$z`4oID29NgTLSA_v6kfwRe(34u6;ru+ZzsR5%UxqM6QHF;`8!-99TnG*vC{#D5(rJXc9=nje7v~;@W!m=QvS_a#CI=dby zv`55Eur=OHD^8CMzK!^(jr;yyiPioCb~-g{QO=X~(q9=x|#daoH;g$)*H zw0ejHhlX5F0ju42_%qOD(tq9HSS`-5XKmb4wkma^Z=omYCKF2q?>aYctnw%t<=`4A zL}31xbJIpeQ<5hRR*hddQT7aL@P^YmJix?`r2}XWr0jKOIacRcgWa&?hd&Fw z8n|=d*}5u1vJtlVI?hP1{LsnX*=dVYXLy#87Sr#ub=^AW?5w2COM$w-(7&ZDS@BRe z8DV`gxiotgVa)o6D!f>iO(fRMH~kJ$O!Oh_100_8LOS|Ddnfg+eizX$H-LjDT4(5G zun7m#d1&@wm+!)TE5_Z&!_NeW{TLaO?eG)G_1}i1il#Q#{sTR%7ClTIs8uMt6G(o6 z8Fmsj5BP#b9r%Z<7Jba(CExz(L1HgJzS#h&o6-y^rOAb}Z}(w5H(IckRscIAQo7rf zI;m`>2bC8{`8HSI-b8vNh0zihJ}D~8Wet}w|B!mCvHeKut>hUS{$YTg56P7NsBJtn z^qXh+rOo#HRmY){d4GG>dml(>M`hhA6W$~0fO8nHF(aO@0UlxKhC8c&^Q%qsBa3iV`YFA?JK5QpCrXpr9 zi`uWj*4t5jzCp-y$z2<*(XO9cXXZLxwXVfh4bnZ~_0{&(Qb7e`Tr1d%_fUGFCDM1{ zE$H~9?fPCUM#vShX*nduJ6GIvDXD2hCQKrTK3;OLhR83T@Vz8#`H{>lM*|4@zY^YSlxfrYsNBoMkF8`wSwe0}$x-ouo`FTw<&M>!Qi->~5mr8pu%8Zu{uOS-dN&TFT6!)Q zIGy_Qq_T=N!@KVOt0OP(?3Gp_cS)UxlQypM0P0F5D)Xkp8bN!+x4tU7zNkRVs8<&=ewTO!qb?n(FYuRz?YdE zjX>D)i!&vuJLiK`yM=fqQ>u^A|5^lU`n#dg@%elw<`vovN(S^|2wvuldt<F%>_tLH)a6C0`YmmkzNTYR>M=n&JlutuJ-lULZY~)zk0IA?7F>c z79WwP{Q`)Y2_BLn3DM75gw=dZ@Fn;}Yc9ZUVa9iP9sH|kC3zl&h*;^s?THD#faj6> zM8`tI(2+`alYApL1)imdhqORSSNb5G^&Vyq@%`I!cDI9gu~T&k_+K;pxMZ+yNyquS zp{L+QKzx&~ka#wRTLKr{Hv%6uSb5xDI)!Ip<+~3S6<5TmPSO`=`#{+5T%Oku0iS2_v+AlK&!b)e_@qLLA{EcX;d_5iv~~^b?CqF`2%-*79;6Z zL0+!}vM8cofI_WXvTKQYfQ^a@jz)dlAH}fl6*rry%N;T|S7$&(7P~;=v5;61@ySJb z-@8^RyjGjaXHhh$v zocyYN7k{~ft7}rq>RzjD*0om8ycb{MuduIG&_uElh4>PGt^MeK#h18P?Gy@^YzzH0 zY~U;4OGF3%XXO4YGY9=D!hgJ`%PjQIW#YI~tZ3}fuJ`Oi-Ic`WsF0a74zjf;o;2JN2 zOdRn?wJ(O2f-~HMJCr_3vg%g?U&e(Mmh`O&yt;yDo?R5{dNQeE*8X{xzV_Qb$$? zKG2=0NSL|I|A7wP4sKOrYw`xVC?&zt1GF6!Lg{={c>ev)49>&;8> zla`}>M{OEE+xP@e&$H_GmLqqTE8?%Eb?w*sG-($8K=-!_W=={{Uk7un&35Vv^UEiA z>XeWn1Xb79#MvoZd{^)iW;wMZkKPX7lJow=k zLph@v+sp3xrPC`|e@0~)FdP`u2DIXA#7dn7>}>d}UxBwdQ*WD&cSuCCIgoIE*OMt2 zFh{-{T8W5#BsSWI9$;}ajt+JWacP`SmKN=!)1v*dz;sV%WrF8ragin4TLK>iy0Oq< zMFc@I*HN?Q!{djFo$McR^eUoyN}i9bm@kGrW3W;bmg9?sj`YCKabAyJOY9kUQ*>iq zaEJ7q)MB9{2~;MLyw;4hBOSRjGPq@Qkz)bh2TxQZZv{$FK2~CJaCAt9^?9N6*2v(r zQDPIQJ&T@f;rJw1oEQI~w4Eiw6Pe^2w?`QMlBZfAEtKMVBKs2^#uDtrYN{_{v{NM) ztBL#)Q5PZIa9MONvi=fXE3ro=d+{tm*0kRGY=boG&I1Rc(Oo#q!^efSg>;M#*3q;v zhF5_))3E!j$yVe7SjOaU>yj$W%yq~L$6a26$U>xji^HwJf~ptO9-`6{F90C~QVS7U zgro0hVY8QW_K-MVzu!STMK~U_QNsRW@~vjjZy5iX(kuWgeV3(1tkaTXz35pvfyiw8 z8Tt^`vuTL^cVOiqu}XW;w&y~<*ba?ohnD8sAxV+GV%cv?kYZx~c)S8F;nLS(hFIgh zj2Q#+0^^II-DxsL@rM>Y1wYYTqT^kBv{wG89QwCH#{|s0`LMrz$8!p;;1uMU+o1P8 zg19S?m06Bp_S=mO9(bjc;l>6dkWit^Tnw4|dqi_g!%jcHG|fXh4mc7$aqv!US*nGs zn1u|duvF(^9nGaA<~Pvp!3k*3=A!knW@F|eYjt3xMNkBtK)@?OE!MzaF`^y03GIk` z$bh+x&;pe3i%`u_OC^}7FdR=3b#OY_%>by?cp8wwPy`gmJ4cuR=w0M9x$l9yKL$!&5TaB z3y9Mg&m<}VHXUy{PtKoC*M3owZn(BQeTq-^g(7`QpE5o9`XlM_ftBeKeY(E&3)u9y zz{Pa#i}%xGuAN)}{Gx#8?rxymvtM}NQ?Kx|fmiR=ZlcqfULr39KZALJY?oZblZy0E zau?`9a|>$;0{(4y#K?X5x8`eA$@z#BLgOj%irDYybwTrPZMkcG>>CbizoX$m*KH@# zL{eGK%7i20D(e>>s+1GxnVkQu__;Olj&rLlz|4%jcSUWD0(Jg1Wu@iaeo;%ei|<)K zxNYSy2TUc`c`tq6I^m9ehOGy2Z znj*CpZI%*-jbn^)^-}c`3my&ZH{5%pGfa`(5i!jjtTshCWkQk?#SwNZ&7` zlEi32IZ0VR5%N92)!9tD4%s+=il?YT?Lj0Y%(tXh5Nxo2hnbX>s2v95nlfJOP}{XZ z>t^I|z`2w00|kGJEYLAP?R?mOu_G5aeyF+43Ayhx`6NnZf-Q1n8HTzO(35)<+kV&i zDBc9Zjy3=uQ#z-z)i}3G=hkcv=g!$mDb8h-o#X{NFA6n}I*0F$tVeWNpAqPJ&)DA( z-a;%>t!KA`p0m5yF9PPnt8x5Ipn(1Ji~}i(m0p$Ol2Gla)m0Ze${d~^PzLh+i|ffo z_g`e!3UuaLd!w*g*JLjTU3uRpj1>yYNc|n46a~%e70a)z=MbUgB3lFrEb)e^)iv5t zj}Ou>7qn*|bJg3j`)me`!)dYmlf8PB2vUvw|E(nh3URlIn$Gi zlv91hifP@6@W`CzV;bKL8KM6+`o2^!J;dKx?@xrUm0t3FCNXwoRK)v*mS$W|+OyJL zCGFMHej@fd$wvg#K4xY)_QYo-;w3`-jvIKt_^I0`Udq!VhS8^%#=ID4-r8(Re`{qk zqK~#?u6h-=1mlD6jZGD(ng5h53@P9&ScM7T!Y4xl!j8QrEKMn${le8VqNeM^evRf` zMAO@LbxqRhADzzF;xDQ=ol)*@s$esI>hGcxmrRM+uj#&@nJR}$G~7*=m-yja*%p5 zf$7r9PmoEJ*vKkGY>&uB{0a$QNotwuw=o^!#=|5&a09PA-Z~H?e;2r6bPk=S=p_+v z-wh>&wVvv{vP`oJcyb_?>e4N;LoX8~(u4b7uu=riJ(_RyP*Y9(&GoAl`4{Lpbasqc z^m86|&Icj6NT2kSS<@kFfQuwg}Pu{pkrp@DHa?IHiU?S+cO zo@J)Rw_<2hIlPt2fhI#=45f|6m^M`0D91QOJbEngS)q=W@)NpcCg!`Q^2N7k`k8wv z6Gm^OBBD@6OL;1>_mbhuY)w6CR)N3MItCP6M$T1f@GJ zU*&EQ)b1F!;w0!?H>c<7X*Z=$Y}OoR-0H_zw-T`^5l_w(dphb!^kHK#L5zb=oVqX( z@lzh&KvS!*O~7{H9fB3|$BweeF%L_2NlU32{|yY>_}-X@6}^-5)4>~@8|TQJJ5?1( zk*+%-4N1Hpn@UY3bN82uX+3$ciTzIQ=O}+V|3T>0VWo$7M7An)J?T8T`$6a@BIF}! zmp<`2HbG$y=7Nhcz&@N;oZJQ+1l37k@))-PlbRs1cZ)*SlWVD2 zxxQ@7Lsnn(Kr#b9QJEz&Q$B~(a)DQUYTZjfEMw^TMp5&KGO+HY{fI;miEF^c-tJA21|FRW*&ZJ~F=c5gnO<_xP(GbEbF5SMD}IAptY zffYGT*o7H{}#D^o`u!stioNl z!Dm7n#Smz8lAN9d2DwF|YQxzw*xUKh^_aIwT)t?cU zSPqICouqBv6t`L)5t&CW-tJ0xQ%s`{iVG|ZqW%(J`9FfAJ1FKjSwELGrCwhLOxP@a z{S?H2&EeyK{P0WI#!`q@^Vd+OsBJFynn3Mtg@)k+?AsiT%;cVuJ5<86!7Qq+I5j|? zmP=2|GnLJ84b8&jdY6Z-;vo6Yft|@;L#M?oS6p*FG)q@>*^prq?JdTSej4GeYX;A% znkVqhwaIG4=rB!OF6UDaty{xK`-?$SZpYbW#N!Qo$39*4D#y73C| zwz|o$kvW-gh{yM*@|5YnZae48c^AAS zTT8|yJpaVFg^#th!NRfn17Uao#BV z7#M>sC9jng3u;f@P>jCB(Oav%L#=$=*9lBfDs7oBKjgCS*L8~WuHAVL`S-0qoslT5 zhjG$+7~`)OSxIiI@+Vg=2M;E5Uxhtn4kS_(BvNEg_;(T+ z-misn)HY*Q`&%7_`zTPk_oe!j|KMubGBWa zo&}p6^Aqr=7BUk&&6pv+=kF2k%vt1Fhe(}-&S53*{#;o0eSx@ARN8m({L&oCybxny zY8LU30Plli7LKq&HqY|6m6e=3BHHH`oa+%sac8D)Drl3mtSDRy@gEm1^tdb2JlaZ~ z=d$>JM^I45;LPb&5)sUS^A9s_{q#oPbI5v zUT_$;Z8_(AL?!o}s1cM{tD_n_S;`H*gY7Gy?EIyt{uP}NPvo0p75OSGk~d+!|x{e3+0 zo)zQvQkER4*DYx-jX_VNmGoR<4Qqt_;~o7G+r>V_iNJHxBC2|_;=E%yW=p=7LB5)` zZb?dM4ZbmR2J(gYLpt!d2Y|6`x%XZ2RaLzv5cwwbrPJDg&2j%L*ZbrT&Y3=NWl*OO zsS*Qulilg(vujg4O4t~!;W?AK{+KA}J6-E2#zSZ4<}ctCMrHkTp$;I1P{8-`f>va| zfEP5YsV{?WeK8+>lGM?2p<ALh-JdS#QIPiZER(&6t>zlPT}LAKxC1gu((I{?Y~r&*b}$JD8txVn@k zS>3^}Da^{67G={KaT>LVR~Dtp()fRc&J1fB(maR_$j&jpa=|1t zJQGW1PuSS%uOgiv^*DT9x+x$ z49 zO6lHfWii0xc!Z9`l#Q-?F7#u3xj{aqhc>R29~4*V*`5hawjjeys4J31&hgQ3GGR&nTqtRT0%jfY*Qekg zr6(=;V!~O>Nr#(5jYFyDw}9qO<>kMmUOpH)6c(Vdc|+J1dLkT?i=)aCO3Ihs;+;>4XJet$((v0WCt~D($MfI{4R6n2R@mb0!MVYa7F+=D!Rqk}{gWOWzHO;>b%E}{oH0Z(m$^BYNZF7)2JG%lYJpbvI^LJ#?0~aHe5t)f zba%CgFT?7%L7xyfU76+m_7imga(6sC06Zbc%5nCR9&ZG)FpDnHpY~J=8<(rC`#i5Y z{wx9vEkkobXPj(|3tD3rLXVtyVR6t&8?a^I%1cm8g9=0g<6`B0V&A~lzZl9GVw+Pj zZF9#u@0U{CaC?>l+~^h8+SC-weRn7fMXQDXbUib8p5cvxY? z+6MMUof6gUg!0I{L~FCZ5139$P3Tzr~d#J?Ac9(v88YEH;)EpDqcqjx=> zecRK#y;qUaa}@pRBHrU-C-{zv*YwE+c+avLu>lB<0@f^e9Fa(AMt%)!@ZJnPF+vC4 z46Ox@K~82azBI@5q4pv51FyDaA5XpN(@5e1a}5N|{@3)BU| zGZRc8SM9_!Rj<5Y-@Y!O07dlV&4Nx>zSJd51O^M?@ypL1gQV46D+d-5HT`wy2;b^x zus75yEe+LL*ECV7S&6+|G%R$?5ZqlQ;t1IP9cPl*gtXK2-j}60vEHt_8-t2E-Juda2hav*_B1ej+ zPe_*VAO8%r6KX1*{a-j%1!^!OW$+(o*Vt=nKVDQ*Z2@wlcdWmbM7)1h$VdFg7$br( zAhtBIdpIe?EQ-l#t!}H0$v$ast9~v7zR&gRT{9t1B5VCjUzK2nRb=kD&k>)y&$Is? z50KK4a5uan!KaZ{pPl0CLTfFToi?Sl+QGNjHOA*cKNnZr%-2<$UWcWhxjI`|SC$PO zOHNjb_lA_08`ZA~^|eWm2(c#XtuIzJckH*NT+I)?MDMq~>R|kfp?#MH@f>lL8Q+}F!1`KOjW7m6Nv zYMCDEf@9pWkSUu_a@8Hg9Jb47iH;^kr?GkI*1-Sm@aE_Ggrs4V0 z@#W!p(y?yXT&i;{4&E87hLlv#XCbX?I8%DId)Oi!ox`)GT(z0LSv z2HyD@j_Ej-;+TfxGdRw`aRZLiaeNZTX*d?)I2Feq;AmP#c$eowD}VRSUnWuSV*5R| zKVbV4wq9&sVEZe!|G^f-Hi(T5OroN&C1RU|Z6>x%Y>#5&u@zujg{=^qfbCgq+p$$+ z+lTEawqw{@v7N-$f$eQ<=doGN?rE37Gev`b@Sh<VT&b@Z=# zbc%l$s528*g4~<7?1>VcKGCX_)VKrqWZzSZl!DfY? z(I#vrIa^~4Qnqzbwwo8XY$+kSPo+;*&=IjfvQx7f{oq$;L{LH_^3&kbqYgS4tCH~w z#1)7Ep58bx^gnX!1Erhq>=x&=P^RP{^{le~8DFd8Dpl5<8+5Ko4mzJ|Eq>I0jrmSD zv3m&*{%0sB(7GRAH=PvTg#E$Z(5pkN!ql^6a$g5+j_Ey*dn~*g>pGG>xyUC;L++6p zByTasXyB_w4@`%J^K{G4LvzB%M46s}#q~iPp=mHOStkYh)a8y`{H=P3o;ATA7sv<( zmvhGDH&ra6Nl?mD2SrX#(kttK9!dyPv)}fg`RXJ*wH_HdDU1z%I_?u2U`yPEy&^#F zT*RGMq&u%z<|7KrYmu6=QZuXlYKeM`V3#Y-5)|6;!JmxBoWJCPhDuw$G^(_*f)0++ zjpgy4#X$zg@}&i}1n-eGe^T08fk;B&bGuZ~byeNJ%ldT{UAMcSW$6PRktG&spre!Q z9^gAW0rCH*e3D^z3cUTNRxWs(in5b7i)qZU0TNxq64GtoXLBzj#~dzr`}g#pJ)F^gEv2 z#bvi`kPjrY{TntvpZz@1%$HT)dcIRSYpc$FVe<>*UVnA=0rRfgwJ9p|UeMFkm7aRX zAy;E{oS;%C?ee?UI^${^Vcgfa>rn00U6*T)21IX}iCUrRcVQ7T$KS{Y%)+q11BOQEGOs z?*f&>4-MvwI>D7b0zcw~{Le!t#1U@9a*7T@H@WT$M9Oh3J`1$JF&{@(+K#~4^E zas_uhua*+uN!Is~XCI_QR3Oe1^?aWqzPqGMN5_IwHG+2r(jGP7|J(OPt z+TVU(R`iWFkQLlROZ1DqbXBH@HpC%o-2@$gSSIK$Fs3)fH$d0M>tW5! zFm)N|{OC5<1UWJA~$4=7g zN&30x#W(aUM{e6W3ld=qIbuL?&ejqCoDw7@lGxLO2n ztsUCO9#RH1v@+cq9Cf~0J2iVBti!CgLQdr!=XRZG#Z9vrp3!f>hj~N|d>VQEkAOcy z1^?!R6%$RQkW}!m&VGm13>wHuxCtBProX`gk_z@X8CXbW`HRFTOLJwEchMv|0K7J~ zQ>41qx)$HmP)#l^d>yG^7f{Sy)3s%kH=!h@qE|7YJE5$|waS|8I&hQGASK-i4vcB8 zxv3#n8bsB&b$NhhphYuc<}_aJ!2EAiATGfr$fB7;UXi1yAWJc6$~)FgPYu_Ma{lu} zT8h0H*g|I7z7BZ0@6=q78z=*@IHG(EBzRnAZ3ojFeR!=7UY6kMa@?vzZ-UlX1m6#u zRURdBhvZIDnju%G7|_4tT5jzW|698l`!6l(+y%93t?Jymj$PjVeU-Jpt1Ys&?JKY* z|bt8#*=U7+1H`#)CHZC-uLJWil9OvZ`@yd&X(fW1+A3M&o;%w-z3Qo)YfMc zu&17l_bD1>{Yz1MXDoDoLITk5r$pvXIdJX>W)TAnQq+UK%R|tbsQL^ZdDSZ6gL!sT z@B$~ECX_YXOdZt*XN^b32NNK%B`LjGlJt;1d%pcLY`i#ra{ahz^6_Z?p!hG#MC|`< zQ3PqoCH`aai3jHBk6sn+TT+CHNB!{ESSzxYl!~N!AM_4Z;kr1pIz@=wORhgBQss)E zhK)Jetb_!)UUT8U&_#cXK+qTlBbs>DZSPfaWjUc{ z9`YN7#bACL7ezvEmkJAOtK=FAYEdqjPlnXUFKj+00alV|8=BpyvUzSNU=oSDxB z)X0hEf>yel*dRNuX;g??H8aG`scrkOf!jXq_@RvHNs*;Q8v~n#SHR7j^TZriK$_t) z$NQT_4p{t@Ft-bz7dNLLCUe>{a&1Y?=z z4p30Qgl&7kr=JriN_={Y&{nf2^xZKUe0rP2r?=JQALnMP{IcW3PJ6ysK67tKGxR1b zPm%&WO8aCs`Qp;!(6hvooYZyv0&(OBV#Sl$`Nvn&kSJ_Pu%f>+3AuR7B0G+MS!Reo zd!)_L1UX%4DeA2#UOhwHIFmBUjw{5{nF`S{lQtd{d-YE)S7KE#dX=yYA$B1oy1@rd z)BxI>R%j3%gw!Q_^)GU|n=-4fy$q=!3!W>po|&OMO3jcTjXwIzfT8rU<@+}#Ta8{& zx6*f5Qj2<@;%0Zj#=PaHh31(i&G4?{{}X@}y+n^Ou&@QK}x~L(j}$f;$=I(abt|eRTagc+qr=b~+OytJe}e zaFbnl8d2KXmIgCNBW;@xjm9N-o-?L=KC_V`<+n747LML86E!2NKGUs4t+zS;JU}b{ zKgPa1zKJsbez?N~L*i@fPGH8cuyCJ@SJmC_s2^fqupoOdktJ64VL#<*GuL*!}2 z(L`^#Es-11xd-!lvwKw2nMwyN61uDvySbjCCCHhwibk{@*{GQu#DMk?Mu_(1(Vdf4 zYV7eDTm z=556{;c^{}F#8?&!IU+ymyEnrAGp_Yq?={u=jGjC;nf{o7lWEY2g{H4L|YVwUy8pS znz18mfetZ^cEF0B7Fo~uA|1HPL>KOoe92VmzPFfP#+b(K}uV$3;hIdp4-qV zI+1H-w0E>qZo!%#?*K2TD_#i3D1G!it#=f*t-|pdwU2CN)Cc9e#N#fvo_dFuP_xgA zW5BDQ+rY?mwQm{k?L?l#6Leoh+8SkB5}IV-1`o$5dnyTa?~QEn5p_J-}py zUm0%0P(L+!lbd2%#(Nd6Nprdc$u(EoTW{n3c zrYF2_n7AjYJD4lS zwuE!AHQQ?`pXro0^zbP7#Pb7trHNDEO9hfx5i`+~^EB+DoW&c_ph&lP$yWY=cCsyiQhvl&uudaMI1#$lb?MBD|fuB95{pA#`*j_*BC6Bb(GW ztek6Sikt4Z3KssvkQ`H*i`EIv0GwCTG*?inHT7efPC+W5Jv;VvO=)f6kZz`XLNf|u z9MuqB?-IX~fZ|;Lhn6reG+^{UMc2mpPAhwnh1?#&*R^aY%&bmo>u5=m$ADsj+LKkX zConOV%}8y}1A}&Eb$CPOjzo7J;^{K0mA*XWD}aQsDYN?Wg9=C*<{hM;o2wPR@TLhH zpV%1Nw7`8(`nNuqY2JZ2)a#0zeE8nX)u9&LhMduAKDNQ?o(uVqdT#D9gR{M5zHtBG z*v1*hU$EykMmDjSDXv5+ro(5H6fY&rP&d6zUs)f=#&we4`dgrV!q6i(wQK`tRcN(T zBLa=q&M(A+14?*y8RItDUhxF%?77I2bw}S(J4t_5VVk|&wkpipz15zAeMYd`e{6ZM zQOdpI3-vPjt1eZQUF1>fG0bq(1GMNLYAL=+#m{V`Ou}?*k2s@uZW3`_k7yj(z}%RH zFL)#IN{Xu`NqIZnMZXw$&;lo$sl?c_u(3i)Z!&5~*KQLx2ZQM7U2`Sn%+z{y6FWtXzXu`f zEf5koikAJhS=Gc&`vQ{0958Py%5$WpcjO6rg$e)Dq)o4C8q%Z+WL>-lDY6W5c9v5y zAqtX(rv3L|zMs%aUu=QCUaj^dDpklwwv;_6{Zsc_aZBGNcw=T9o!gY#7!HpOn?wE@ z^3nuaKEfID+Mpg51~LCjB+HE7OP1{U_!bt-E^lHa-{FOxVM$V_U;L?_64^?6%9t*b zZGO|~$_vsvuzrp@-wbOi?3CVVPsOn$Ijg0_JLo*gx1;VzXo_o8cW+iOjva~fU55}y zcM*uMdHkoC3sg;`q{JCqKCXa-yj-Q}yuO{rEcyP`ia6I1ao^yWrZegoIeL5C@j?HJ z!Lx`NpgD{9FUB2z4SR$BR|cC)&_+zYu$60GeV455#bEWF+4J*Pmwipr%a)!~&G&!J zw3D}o_{<0)GSxQ{NDu}qg4Opae4bxOvwblKzkpQ~K2Gf2<74;1ABw#M@U8fyz0&&0 zRs0HgYRe|)wa|K4fpgtaG}Xg?CTeWZ;d^f4REIrZC_pEVc+BCo~m$IrHnz#abM*!uYku7tzAqWGxrwet z8zHBzb&#&Bp)rIAH?lmB@_Y_#?dQ-fE~)K6*McuHJbVaU8xC|W+0#{?24K1xpw(VT zY@7`{$ix)ejg={GTxB_T(~g*|2-I3t7khlyHM`Qnk8KLWvlaEB=W1)I{e%8-!L!nA z1jO)VF?*UTsUAn#_DLr!J7wnWXm6Br4dL(08-STSvc&}3LcXBlj{J&Z&`!uXoo0Bb z70;m+lVN|M7LGKlz2sGOTh<}Va+pPJ4)4mL*42mlwc} zUb&BMaGbW0ELJjioZP;jB2MbB$RlzD_JMI7RDw!2&PG&VZF6Og?2%>6c^>k~&g>lP zQkqSk1G2||swbj>T0d+4d&z~c6R_L?>9THYL)^+mupAN}0^_jot6{BNf!;caU9f!FYMZ4f}j)j5)x3Lda(@=!$85jG+KYOl|x|@ocZ!-42Gib2qK= z6dxT`uLQG0qWvS$Bi-2X8omqHW6g)nWNyf25|ML1B6>8ni6t|Idj>y)GzUJJH; zjJGy?HBJz?lyHq%&4Z)HJlER{90Uh>G1-gwa!aB*tWyhKsFhFVL#ER@rT{m~SQ;f( zpPY{vbW42xc(2xld=xmZ!1**E2hQ66EVFJ$qz97T7R>3BbzZHL?nh`FZC$u8bbRHL zYTPGu4`2p?^ISWbO2<0Z?YIOvg3f7i{~KVOPZo(?Ks_Mat{#yu zi`>u>P0$7zHA9cB#ad?J}p1kx4?#NN=HW2+kN4talQzXk@8Z`)C`rS z^D0xKFU&L&I(!0RgF05} z{BBVjOm~NlDdc0*6){6)lw1KalHYCFEsBG~Wi)b`3WXLH`vO=Ga&h+Rt+TpYcm4F% zG5xJ$e;C{)&0y%6ErYK~)0jN?+3Z_pdWTvD`ftZ7v{V^%5VTROm)elpDa;GK`w14d z2o>I$livzf9lTMLB^PgW5dX=WP5YZ}?OWyjzFYe`d7pBKM(GaXd+ZSFVL6Imh~xR9 z_|X8#^RC*HkBhjLhV59Eb%?o1={u_rB_Q+wzCe_rADTb1%ho>qc!s4 z0!WyRRu%r+S2tSOP6b+9X<}t=%p|W`mOHgwqvthR!_j7u4jKWNSAqOfz_*d;3$~0Z zyz+C#%w1OCEKvRUa@3o!4PKE*hk1Kk1hM}tzRnr7?RbBn1o{yH!HU=K&+eDUe9f?IB%OqH(WK?41M5AKf2vFcjrF;pfwy9%jz+E-*cz;i z-qn(rA3|YO*wgtB#m^93&49y&3(LQ*E5;VGt|?5|)>jmzW9EnmWbw@DQ$>2TU}BIt zEfq;;CuEkvD?+o&v`Z(XSF<9EPDrl+^ROalmAJ&L|%JxG1?KVs&-t z{MCweJ65+!n=rQ@wS0^m=O+x2Yw~UL*X&&5_rD*UKK|O8k(U_#%<-nu(Pcra6GFV=@utCI%%?l(*r745Y3I^Vql7(ygoUCv78on1`$Q zup#TpcVbfjeomF@dZdc;jR3}x@f{<%saDfHl_4ugF7K*X3|YvGuk?%FU;6OA7N>fo z=S}JF*)H(#Vt!>yZ0+Lcpc?j+ebRS!4YK=^bTFLf7r0p&JxdbyB7Lv>R$D+uU@+GV zwFUO9;1syhLYBPHJ#P+L!Pta*VkJcjolnH->;uyHhYp3#g z!h8J+m-hID#CYj8ZIrz73CMf;+7Hv8W(+F$>vXFZ^i0{n9&Ou`R$4C34rXr3bC>T9 zjdAif%4=HLQ;(it3kYFD@9|g6JE@F^fm+bFJcN zp3vKe{G%8X3oUNEcch2bzX<&8SQU=H_Eib(5rzbV(s$T^^%S1fbi+k)F_8L-V~yhd z1Bf@7VgeHAP~LkNNFH&C{XjeeO&HLFgVvUS{B=T5&O$oiS4+b=M}-ByIdM>W2XCs{ zGlGXl=|#qnZVWrxz?X~n4C)a3lWr^*=OWY9=A3x9@`qJr8Xxs-i>15`?eVk%Q|eKfdPHAdsn zl={^D<>JV}z0#sdm(-t1&(|tCGaow-ZmA}<23wRlO)(7;yb+dESR+_t$m$#q*(1W! z34QXf&=(0Ktwj_$Gqi$lv+R);SuVIur74IzP4IW9QPl2(It27{%e<)4*6a0P7qoqYsrq`{zT4tDZP?ZI8Wp_}bSjD-dOH z&9Y3Xz6cy;=-zmLIv;wg49o8!5C?os^@#cis9bh@K}5t_Mmv|U9`F1e=EmFP zd4Xx4y@TS=h(~6g?JHZMFuC_AFmGd6BVPl#IFu`j@KonSJ91z9^SAM_C_9QjCBEMW z?J<27z7?{irmyf!HjEbH1`%OSIXt=(!^7n4(bOki=$~v-8Q+&IwZ%niR#W*B+h{>E zc(`~f^bX2K#ZhhYM+=efK2^z;F~|qV+H1-_!<#0lSV#>uW&08NbgpbVxYJ_2EtPa8 z+s#2+AUT4COc3sKD#I>9&o54FS3@!lNg>>N1LeKSPKQiz#m2x}v{n3LKjD-^PYn92 z+U2bpT?T2zO1>F-frDp+7wr`7as|&z@Sc#~ne-a)&X1Y2hRov{v}>O9{AfZ6admTy z%00`VU$YK{<9;89@0$XzXaQIbEGF&kj7evU^w}rxu>qy8(`Im&!gCGCiu+_Do1@IG z$?FCJ*zec%QOw&f&}v$B3oPG^CKfr(6bcrz3bSX4WYkRq_O;(X5M0>yl#OEUkW(lk zmUl3RJ zgO50exNj+*@c#H3tgo6oBRvmd?V{sYr#Nl<``CV8nvnyp;@dFmN>k%s5Mywq1)ezC zHVoZG;YGkE~mJ@T3%R_zP)o)gkxWmGy{r zx-8B@_E;O9TpO0lhj;4~ABtc1u|P50s8Xi0-fzB~!naAx3F72w?zXEsyP3$s8>&be z-O--bZA)Q!&>Z}B2d%mvwR9l2A5bqU_~UL<_#ULOf7@CoVkB5ax0YdyKlmRAwqpFT zd?Z+alfj#(_Pq5aaI?ajRkX(lC#o#))n69j@<1JqRpmT&2{E|Hn8cuN$fi*)#)9S0 zDjcZ7zDm!B?_0sIJ-F+do{f4<(-`hl>}wPg`l-aus*B(^F4=uqtN>R(Bh=7-Rym@m zirs4uB5O8~mdp8+X1exvVK$H(R$+bBLHNhcN{{Fn2ks5q{$1R2;&`BWHLd5i(K{H?}n(m%>?Tn!XOXV(+V>ttHk5@IkNJwa%T=5)O=P z_?1~-!h)4!#{SvBLwYB;h;ktZI;1x&IcWcFY}B!}&V2qL^21S0X#~tg)K%*?ShDm^ zwYJlW{`7Vrt(M*e(k-b1z#0<) zzfr`#w7T20nmi#SJn;G9$cd58Xf9`ycmnJ}YJq9(_FB z?f1_PFs9~5ej`0 zq-MwH!^pd*cO^!fjpficQ!Z*P8^uw9Q)m|(ds#e$u@j37IfWG4p#wkcBCVIs%oct= zsP-+yoBv(1@EXHJA2T5ra`XYkT+H5Y_MLJ+@S2|2G@AKHXVCvJ-jLdo{OxlwZ)my` zDUPW&^o3OTLihAi?1)o2s`D?1!aIT}JcnBzC5<#jwgi^8$?Gp>xn=xpAqg@WVc_2N zc6_r!UVp|yE>+-t)=ow3G!3vAY7!g38}dH(@S~%Njd?onQ|?er#u`{hPqxCrK~Jm~ z|Iml?Q^}fPn>zOFCpN_70b?6o66qc*?CmeMnR*z-3T{mi*GV(}5%JH1rV>|WAzD;m zEck-O5@UK_5-jgaJ@5~G10))iV~ufwr&nJ>*|keyFEhalZ0hMKK2mfM*m*Nr_~k4U zbj|nipVpQ`;8AFW1ubVYT~ECCFNmkXdyn;G?iZ52R*lRQsbG)ORYmi;K)oeoC2ia) zg(V<5JAw1nO8-Li;}*mdZ^)kXj$;Z$#Feft7k5Zg(ZZQn&Gw0>kik0x z?Ip|w?*wIkdX83Lc=0w;RKp0w#ccF$w*dUWtONREfNZLZ^sqbIvs>8= zS)(OsZVP0{jM1duVh>0K59@4khr{j=4u0FWz)P8wNSQy>*n2~M;v!Futo>9ERv};e z>-JZM^vVnm_4(W3t<}dc-yg6iw=cMU2@!d$hT<=&uIiyHA0Dj1m3!^m!9S~y$?(1< zJu-0^2eHLNCC7qeku|4Ys_-$+rAaTROj?TrTV^3)|GPx6z7?|CzT&3Ta{vm z&L<9bsPFFlx=n>AD!>h)L{8>Nb2faoIxwJ;O)5MjS<7!pTqUfM83#!ov9~MvU2d$n z;}ot2*wYCc(J&{mYmQ)@L-@pLHr8|i*y;*5=ZtWlUCa5NUTfhS#V-S7XwnTp9u*c)y1tp zRD(~|i`fAsP4D5qv(Pm!-U_}1%)xY&!Hh+7$5gd}FAz5LQA|ai{xndw`IaN@VjEpo zjM-))W`YMTPqiJfHNYE85qFo6ywwLt1WQ!A+HAZh3 zEW&%GXm+m@6YJ7Zj#bVa?#XXs!7UMOV14+TwH4?Mj<%2&AjW{wSv7fTFRoa>g}gIq zgpwf}(#Rg`7S4k=!(3Wi^gZl#M`#;9h*sF~Xq&}$+0eEE+YIm}oZ^U$Y|-EX#=W}3 zxQlYz#1|KBP;#AgH>SL}==V3RVKi5!dsIK%U8c6o<3}1dh(8+~N1ZWn!Gf#_W++BTrKpaC#R zS<@PuqQ{=~yPHg&V-Dlp=~i~HW)`_|Z^X535I-MK`r$1N^Ik#T z1Wv$e`tllvNi*3FgJEnznaNfoEh>Xompcb+hMqfTpK7@ve%m(&nIyFBx0QBD=?f{_ zma6+mHpRLf&|2JzuxBLHv8L`B9U6jK#6$wX7U@O%{))yw5K%w_%0PUbXDc z;BCCyz!={azlBsfj^&O`gLM90PzAY8k8j1)1^pujxnp$hviJ$I$1>^NGKa`ty#AhJxV(I`Gf?=y!Ub-*uUl*{(U=0t|f9bMB z_ua@%@V2;PfOt)MAP>pd{VL*E;t=-=ofDq@1U_}aba$jJu+jtX{Auwi=on_Nu_VJ* zx$?YJlmli{Ml*}J3k;qN+lxbyeMzNkR?-@hO}MrTi0LEl4K_O&M^~)3;(zuL<0G8Ib0-SuP`b^70zGw%>m!0QQ$GumI)gA;~Yz>i)LK6n8_T$cOat z-nWd2aQQjl2CNG(`b^&$!iDCaS#5$B0Nj}C@U@CZ`*QgrTe-L(2+Iw0gFb&tfV8qa zeV)87P%S2+7Sk~Iv;EWttWoq&?32GX*2-U2@*^G5btg*|w)kIjt+mo#ped}vxoR__QQj^I1FKOsn4g2tR;@y9O(*=@4ak65 zhj~N7T4a8@3waOrVJ!mNBc}$&`#g9O7oiU>TBCJ5aMe_rv2KNp*s4Qsw;Zjsd<|m~ zzFB8`c3zS-*4-`h+G_W}ldWUhK5ol=+N&Pf*#(>0VilpObcV&d!EKlKQizvNk#|F@ zh|bpBsHQIrZu4*S-?uGA?Yfz+H?57X>4{UJdQc zpca_?L`WL*-I-5&z^a5YdM~1Vsl>tRu27#HHOiXS+91s`ecu-A+$29a9u~soWh^}K zv&-Ig|J(Lk_jKfA(g3F%<6GDEZ`&_`tg=~_r!vB(Y7M;ce|vmv+s3bG&5mtq05gxv z9qZcZ#yxWgBZnAfBWD6{s5BM5u|auCnrw)lm&5;2yf!!!@dC)v?ghHDTNAFU<9xb$ z7B*L%gTBtTClb7Lmz`}Rn@OW2M(;xO@uC1YRBL0r8X4nE{Wfb!5_1gE#pt7G`yPMa z0Bek@8y@Rd5s$TlTVYGF)#OEBq~p6uKaO-7AyQ;p6;E-E8zcMXGaSq}ikY6zZ z_}`CB;3{zFAU{9kiE%mRD{>C-QLgjA>$L1RFy|r3sGoE}WBJ(KA|-S@B;DbA7puM5 zdmfQAEmD}zVf*9F1g-YQL#Yd{FL_AY&1x51zwe=**)2f!#3Dnavg0k3YW+V-y@gVT zX8-AiHu~8)uyPq7ZyVl{qJ3k)Ibao zMC;<}5WxUDf!?OrrvzRnvG$5Mxi=gAj%M&a|NDcX@f@1RSyO^DzQ~8n4>UKo{*SpC zSz?QjpV~Ll32$#5TO03;ZisL_D=v`=B^9&u%+L5$yq#D3q8nJ_&n0CF>3X975wQ2n z=80yK&q|gf?teOW3?CVuJ7~4~400UB#jLQ*8vlhBS++L zU7_e2#f6&fx}2J-8e3dr^z@pd6_U#0+#a3XU~^VQLlXRx6b0sr868W;9GC-^QCk*| z5@50a;{cWH-hNr0lZ{xnBl3YO>tGC*t46vG%>ESHbe(b%^-vl=v=`;vJ7-JJL$A{~ z`x(CCjM`JY8wj%d4?o2Jg3t6d<;9-YIp@1ay7ac_oajczvHzNu`CQxuOmTF>daQDv z_eD=dpVh~@vTRzX!ZFgd>zV=fFIC+%KFq;RiE_ctbeOPJ$QR%LfTWy$a7`5AA312? zfA+2b;^sa)Z$@ovp3+0}1PlAa>%k~zf-AWwv=RgRhPilnB@X||N=!J;UjL^9jNXX( zDFNR!z9_n(99%W%mFOG2{vQVZ+sd1bm3Ou@{Ip*MhgaT2Cg~^g^9MF9Pm!eHg32OG zexY2S$Rgr|V@h^bos_yJeo}SH@TR!5-)eYSI?Y&0-V_)2gLy7C$M)Op#MAx`gVMLx zwJ`PHZ0G9OdR6U9HE&9%^@=^px(5p`+1A)hwhiKL>7>*#YI}>J`lR%`w7Qm;@c;cO zu9jl_|GnDY;;UwAmlSLeH=$f&!uFPz!D5Un((ABwLXT^vy0Fz^!ByAB_U;~h8EkX7 zvZ5VF-zqyPeW)<%9WE#W`Qf2BqNMElo7QO+TECG4%sJypUV!%H1vUD7LK}Ki?jHJ0S zm!)zTL*NI52LwKNd(6_U-+N63hxrZS2+0U34C7N?XNzJxCHk#JLO4aX72IIS1x(ro z!~*3alJ;%noMNX~CmfZG4Be^6n^3S`>_Mc>5_cT7{vBjYUnMGX>}K>AN-5`!#?h~T za`b-r=#ZS={(HpnFaL5h(}*AY)o3Ofza;$3_)Wska*{DT1Kp`!l!6L)+4b1E8AJvS zeiZI|3eO#hFXt>>FSZ0b^gsBMU}@F^S)Ku3_0>UzF9xN46YPNRn1jtf!$3L>Tc_B! zU%Wps0(Qk8{Mtb^$~b~pKMf@7S*%*YcqSLmUWngT{9eLOce18ZX;O1#=X1}&MzpA!>%sgxcpfpo`4 z*$z7u8kQ3J)g22Tgd}aTOmC}|42v0PgFq~y?wE(5Wh&K1p;=lW_|~iPDc|;facy9P zVBY{)k<|k;6M;KUweA%sor%brdUBy;Kn=My#Q%HdmX^2BT~nFg#%;<$El=buM>Zwa z&?qh(B%SY{u;kJmo)HhdI~8qvLb9!;*lGA%c%A!zXqJ}3vP>MK?cx(sI<{?Du5B)r zwfhZZI#WQ)9Vo(P=$wK?I2WPy6I3}3Oo}_5g)OjUthY=@_%0UALxnm;4jew-Q@%m zI=-ARqK{_t1z`E&aKFRsH8I$yFClLEGHa{YdbSLlT<1!Vhgk*mKFi&hqk4T?OR|zb zZg)$|<4#CRjS>0K4s?gH)e60FM`CM0uUm}2M$6?qGotPHW?v3tJKqwY0NP=1b_zIl z_53m5$Z4-3EGiU<1?easEj~wh4)HvDv&mYr75`~_8LWDA=9~V|8LNDTY7IOFT76&k z3is8L*1$OQ-L2T8?`8$Y1lS)5Jbg+{s|Q{Mmo3bkiX5U>Y%8{(Yoqe1y8m6@NJvw{ zxQo(v6BXIySyo^sDYM22hBgHE zqj{qcli(D8Il!6hs0Xkr2IkHL8K<#N{3CkCUh!Z+C2OU`g~lLV`4v6>@fl z=AfYe<#r2Z+`Y5oOW<8y$e8b>JZm>ph!}dYg3bB}evKE)G+nH5O_@V_$V3q~HTZ7< zYXY!y(z8}}Vio;0EczLajH^SggF5LM*iOPPFvcWU;Z~WbJgo;o|8wmYv z$M;TD@|QLe|L5L`j3N1#q4s0t7%FN#kNhTg0tZB~g7MHn2@^-wSb9em^2y(`zXhhp zM7e?RJzQcja7V1cB^r96>63THkXSoTG<`iruG2UqThrJPp;9*kd z^4hzz`O!j8FUOy7Csi!3NJk$zGCcRu1Q!@V_RgTMdBEcL1RoX@vo19HhK`C_oW{MDS%rH9_mN$F>Zx7xrb z3HRdO!`sfj(AK-6rSI_2(RanIz_ZwZN1^g(#eeplMC|wxu;mk%XEyr&{-6rkvB^dn zhUg3pa4@6!umk7C)Ls_y#x79+nlux7fCVdmZ=VG$cf{aYFDhib31iI1{4dP9CT>1W zHW`)enG<%NdqeShD&D>Tu{b+`JDCN&=VP%Q^MC@mT*BuSSIoPPSReWuewF@~9H~rE zu8~<)jFs{EUt>$TmTNE~yKEtU4LnFkVbxuPOz?<{-XHWI4Knq!cy>SMq-Q8xAB%hX zxCRAc1E_RVXh_crXAJ&^ye{;v&z^uaz(F}zA~$OfeIZS>E9$xW z4{YW(_(ihD?q;TtZJyThkHz2i9RvdW2>OZYnDTf%_%xL+g+p;v<>HQUz*^s6zo8$Un>_Yb74h7Y7|>pzg5k5wL1 z)hQjJ>uv_}dDT(kn!X0UXjP-qNzYg8;gFxH2>p}p${6>FHLw*^y$bt6QXI8=49{+^ z<#$3-OXgL!4CGa~rUSbOTa=;kFm;3$DnL|KKEA?+z+4|PMa3~0`Cf;l=vZ)Fd(YB} zd#*EgIHa%>i4_a3M;4CRj(u$x9es3ZW#M(;J1b#V3ddGtS7ii`|LfABA*FUO<0(qo z{s`excZ%ox!<&)c#F58qn%`1X^MqJDKd6!UOTh@?F!157OOybk#V&6`so zn^dshK>lj3jE7XQ7kc{Jd1E{$9@n^k@B^h|vhb~s%dmMZE^M;Y`mSsFSk{=K*CS(=+?AjeyC z<#deJ**PXWb;IrqNJRg_NWKP3qZfmj@)LHv_9%!(f6h7INlnpext! z4*G9{-9NG9P3e)1GlXR6IYjb=?w%mMEIk5Go%m zC_}_DLApYWyE+uNvK9D3U|xzgS+GGsSIK}x{=D+f;-IW8lYFIwd{wK=;637_ebhJ1n~C|E>O#^E z#qGX=?cfJU|moOw=hniS`QgT1 z+F{%g>-Y=wGF@HVesGyru4v=H)W7RmI>Q}APdBl~+IWh9^;nauPh34*yl$k+#J`UPEd5{-bm^w)R$fF2b z1-!XR!#;4wn`~Dezly8h6qQoAg*bpNJPuEhD$YyMXBQqJf9|qn$axCHR3T8+k?41N zexy(zAT9ad7y(xvC(U%5xOm__AI(lJ{rZwx#H7zp<-Dw+RXmE=!dCIqK3I17;wSfu z*_eNTd|k(xux`51dp0nzo*)MSwjv=}Y(-X2yXckQCHYCxWXo~?M#N2EZG^vW8RqsW zShc91UC45XR%pog-_AjIbclDO_dO%7=tJIx5oFQ%y+k$I668#Jd1M3QkGEbTd+IEh z!^y)FEv$mIhvsz0kY!-mvPF2`e7tXt8(E^j4nrE^>tbK;uw`JUc%+~3wU@-dAr5O3 zzS?)OtcmLVXVm5}yHy&$m=`|4Z1uS)%32I+7l_vd{Th6g&&B;%d7R=g)Yb_*Ce2Y! zSNI-r-*#Q8d{6qL73ZuIg`kQ<)}b&nG3$hl7x0}{o2pNTRjby+xfj6z^8;f#IN-K z|JvN)vtJkIc0LvdA6@zO{5eTi$eP3&X?(^2)wKk9akU0SCvlqj=U1|QiZyjR^5%pM zl?ox)o@*xr8`EAC@~6+Dw<5p(I3cLcber<=rj~!BZeg&tamuDVdh-$9JKE?Oq!$GI zX=l{qSR>_UdWkaS0V9wB{UP8_=}YJiPV7EUGZwWmF&IvF({+q7;MexixW-ZFeKc=1 zdgBqV$Rfvlku49isR(O+n0xZJKUGKb z<%O)FfWNY?VJ;yrZg|-#j{#QjSJ)ap-xuDk*7Fjfy_Du6D=y9kqF;3(Hk+m#SccnF!vfY(7$0gPDMy z(Bmh0O7_6ZUYY-k8#%;`%=y@cY<@j3EDs@fc!T#I-;~1ZJ6=cLjEvA5l`+UibOUd+ zd~l>Y2fp;ki&@YBX_o5sYcZA-21IF@di}}Z0$2*JEvgZfh!m1AdMU$luYXK1vF-P` z`VtuFKZA!kvMs0NitUo^#`e_tixJ zg~}s&=*%3HeR!+*45ajnlMVsVWV2 zU40f=i@=$LMB$#kbomVJofR)&cA$4!hqZtZ4`YN6(6nY1+3#Z=^Mck!ZB3a2KlACGj)(V5ZRfXAiG06Z)UM zuF)j+6d_8JL6jzy9OcdziX;{cEi>h;y(({78{`&dy{PTgv>vMrK&HFlw(*3;>Qa`8 z^YAw7#le8Z9a)%Yb8Tb5^`Jx?(_ZK%^0tmO5mT|k@tUM9dR;UjA2Vj48j?Hk&1R_} zr=^!gV-&dqV8eu5N*PZ~vW>$bKGH_=UiyYIaYWxekY8Q`I^MKF*{x9*Z@9XlQ?gDj zUhNRq2M(|PrC2whUyXQqY4+r+MV->-DOYi(w>Ov9uSw@`V0`Mcir1J+;0>@GS#!70 zI>=&n3;0ukUZf}DDdi4vJfuIGMSJ{}ZGQB_&$1AQ1li`OowJSkH8Y+;=3WPKRbwtmRS#e?mKPFoj+jC2EN?gE_S!kk~XwH0D`_zu}l3SOKd5 zG@S{y^u=JSKg@P3Bkefe;@e$11vwM0SsK6|^_P&(q;qG9OKrKRhP}DhzrR1{X$~?9 zmrtx@R^c_f!s)>5sT`U;BZa3BfsK6I@+`Xy<5Xc#IBAysMW4n;WtaV=tRF~CMI)^& z4bn#6PVl*?<@?OS`ZLybSbTVJp>HV|8R%|?<9f$FajB$&{aJBLf85YK;9rIrVy2gU zBaENwi|Q`GXstvB-(LUfzCX1Yz{xYRi{|vh;tK=Y+zQuanGe#?xa*oyK{E41)>YaB zJKH??1nJ%MeP^Y6^s!2HXQiCGt%zkD+e`BVrk|eAIM~UoBd*!d2wi6aD||4hcO62$ zoR9kHegiJ2mrCleR$hKEDiiBkHr6#G;ZkGZmpbY; z_^vz{WkxO@c6iN8$CwZJ9~hYGrhHjDG4GJpcWO}Uv!Ndw_?!OYK{Iki|G2Kh7p6aZ zt-mV7?N1n^kc;?u%`=yn`_z-Xd9dRecxCrrIp|*f;09?W zyLW@=2sB7zV9y{17X`-|w_(r1U$xDGwzic~)L*ulQJ+VGYCgS@wxk0za)M z(nXeW%ApeBsu4FL-m=!s8vDS2j()~6XgfvSWm^vFFb)_qAiaRf$6N?JJ~T90>(!kM z`B^?}kC*e(uzQ349}xRdGsH`SsOMj$LWe}_D3qwjuQB72r<$&+5ih_qOk@A-i3MO? zji`&_qmhddd6%k`h^_tiVMMZ)y(Zbp+FQJQLj5+eb1=H`0vLNbTHp6P_oGICv_@9geD>*Yq5)c!*s^wD9c1N%aLyNr$vEkq_^1YJFUjwm!8< zT|a^URN4q!$UXS2#BT&?uqK+%!wXV7h|@8wM5h2 z%G-RIIC7_XtvAKjZXWMZcHLzj?U`?0={5K|z*zT%`RCqAK6gcQhIS9(1MlksD}3F( zzSh){bt4?}e471pF-}NoOF@>LD&Bf)uV^r)Huu)v3xlI-v$38KZ$T!X)%*|f?4YhT zoY;VZA;%yE~L#uKUg=RF}_8B9b> zA$`pZUelh-$uicv$UvGHFGM+M#YlG|LwoDwd?~1aH^VZ`{SlgX30~ zCA`!VM>|u5e+*Rd;Z0*(qrjS|gwGezF35J2;+cks=%Zm2HTQ2s%_TbjA?`%)t8gQy zkuys^_YZO9Ani?Q*40wkf51K(Tg%*8;Y|Slm9@KMYoyGl_V89PvsJXEz9~LFkc*jy z5ms*HUJQigA%jct= zJH?BLp}fn(yNChpGfBIiLu4qs2Mh&`#QCJC-zTm{FCXunzS|_*tM0{Glj$*(65?R* zL^Z5j3$t7m9`R^z0l1?=cV+71gntc1wn5KuWN-cp(r)J6P%98smZqqC+NgAdb$4+) z#ZQ3Ch}`!h43hi{7GT!J%3VS!^15X<|p0m^6TF zK^?%+pCL;q*1#H))TZ&p7*$bdUuqo>j%8tgR(}+99kM+#!tZN%+&%ZWx;ujH5+6le zmCg-@MYaB-rYX%`f!5t8{${XDj;)IVV;##xBJcA)(KV<;^pni*5h>$aBX_$g#y|^R zQ1a=O7li}$$3%t!Uv|fF$Y4)l2h3|t50d8M4xMdYSjYI9A9F?KB_}U(NpH&`a{DWX{ zl7JsvhCWBWc$Yc>kwZ*Om}eB;l&R0+=kqZxjSp|hsbL$T{X(=NQ~QkAB}>_h^wZF5 zslO6iGh%g2=Wbd}H{|{u<@N9n)PYmG>z%T;lGqQ{iU7OFC=-Q-w zO;aHsBj=7|>;EjG$I2}?7kLG=#)(It5PvnGf8#*mRDPm^F}MoH87Da=?|lMtSw{0& z$)*GP8I0qv!5<7;lp)Na-@i-R>f0r4JMo0Le85s4(Uegi-IQ6+H<>Yi%IpgIUDBIn z4_w*6E(ff1H0Ob(F!oBHMEYT}q= zgo6T%=+PCMD(b|e;Au=Ro} zPbR-S9erEkkmo84{T(P>S52PLOJ`T?K9grbKOXNfZz^sj{)_m=Oz3J#@HeW#7Vz&X z@S0)vr_sHtclS-ne^u&`wZCc59Loc7KB_^C{DfyEEuIU0{;Cky4p>t>#JFP>{#eDD z<~2<(3yqNmH86oMj`F-E_woNZQX+ij%}d&d?e{-N%PhIqEz&RkFQbKP9hC1Chw<{< z|1n;)m>VWN!7@+d_rJ$X-2hpeY*T4IV}!GInx~@S-G~6@*3Q<5Gi1x>3?N;iafbBQ z2p~J{>>m&lUzmZkQ7{(bVI;Qdy3PZD4c%OcM#_KeP z(OjlC(maN&37CV1=P;?)QjebXKW4Geyz}EMMqY^FdCYFa{AHoJi)ORX{Kf27)F%m@ zgHH4cb~@z&O6qE^JkyrB`8d`(y`c_XXhmiWB4vYwszSzJSVt6$Bj|s$S1GUa6TfC| z&;L5a*f~5dNdDau7-4x4*a#KurDN;M-P^^Y!KKiHPD`n>?r}l-Fm^}cIq5?K*d)%L zh98~l8O$FWmvUy)yiEm9h;Q_smcn3Z!5Q6UU{p^_3O$QGrRB18JMgxbrA&sy-|>tR zf3q1C{!V7XY9Gb5dwLn+S=>_rzoVK{nQh3Pu5~cq|LU1_CECU%l7S(~qU;$b*k=`) z;5`r?eP&gm!a(-f8omfRleV#1Eb6b}E!ZYBK3Ek78R6$=m+^7O$+{x-EydUTdSL8v zvbMAW_qA~TqQWy$v@Z1kaZ)W?xoBndo-jVCL08Lei`rwT_)s0+d0#8>vMf`jU8J1h z#OW@3CG$d3M08FVJd!JINxomZ_~WVU5%_w)9+H)y5__!soq&MbjNY9chW<&aJygf2PD@3)X( zDm=^`PkPQu_v`43F?-HRi!HDfB9gaDEI||)0tFzs&JtekFZO+UQNx@BCinOFkxi9i z?MVNe;nq4a4+3ohjEAXOoEH?`5#ZEI0i!C}LPlMr{A*cYd3vlr9scFe_Qw9DU`lxt z@ugY#CK2F$dPX7}m_g|4jcX3omT@dcZ2ckeAMkxrMgcYNa6j+<@3oElNp0`#CmY$y zt*w;(9g;d^(emE8$! zg!2_~LO-NcVCI-Qs>c%4q$5E6#qU=RoCQA9rN-zjJ1r&G&Thw;gbo{9`@&EUyKG~p zolm-4bPqCBlALp+223~Em{XF#bdw#DWkY?DO3t5sxhSeJrhx@!VOTO;#z#8J#8rLN z-_Uw`#GF6MWIpK`?!iY5gmyk^z|3KwXVKg-8|w+hnVIA`v&)DSyj;vqP<;W`q>1eG zza@Pj9oQI&2&8*%-K9&uOV@u~xg1w6FQ%(@-WoA)$|c|YkCLHi82SD{0}t2jlw9_d zfw_YbmgCJsb(&5&B<1Ku*adOs-kMO`tVM~b+2oO)njJcmRBg7oN{_6Wel@gvkK#!>>C}Y;5kT> z2pd-PWdtkeS_NlyIyh4n^O3G-At3WZF@mjX zr4MzlUFM5$hGjCsnkseX3XCAI3RTk>YGkb4zpi$2(YHp@y}dt2p5lNn z)s8eO2zypV+BC zrMR8wMb6^uU#68%*=tq3wy}JuUSEF6jORTql}u*7HygMQt4G(M*z8fy=$v`0hYr^> z5;?aRq3Qp-PH+C#I#tPa8t&rt{!aREJ(KaE2iDeD>eVM=HxJEShcSYz=%rxnGXCmIV@b06yloF6c=xP< zbwH!QmnU0d7N1}wmJ}BKS8H#BHcm|A<2rVTGi9dji9Xm_(@p_x$%a#_UM|7xwE7)B z9X1A5lg7Wtzl_{>v^@peZ}O>-r)cjz{=08NSH=70^8ff|EUcY$j{|%pSoH1uRz%W8 zHl=-;#^3fOn}*mxJR9R|QZXd9f=Pw$2&XEOvPe^12K?LQx`Y@oT<*PKJ6NWS=>$&I z7Y&@a258|B-^Fsde5CLK)}C=4lyz(&R`UBi2eEz=$Am(b4pm*W9!P#)PywkUXgn(| z)geBJ4X=Aq{H{+6D;$@h?fRRf{b~$2B~)@``n0&naN?&8kK_d^{nck9(QifsdEOKZC; z*46|(0DAyI1yZXOcUNWW60j|iTD00-+wSf+QL%V*H|p-TEA4LLF&Pfw_jxATcE7*h z?~hDo-kEvlop;{jd7tO=d>(Ljl58+5Fj@%D%sc*{v+`H`Bfxgummx|q-$lY+(GTCY z58c#z2ocDLc;h<$i{7X@22nFqCe~XH&s$Bs9{oE!Z@<;cOfZR&x|v{&okoba?cuq7 zhdonVyKT2;irTm`#D4qM?2^3>nN6F%0`q?fBzZkXo*YO%@AG{Sk~R}B0Wpyjj3A(UHQ$>$99E$(ye9*%2xb@f zDr@$FRYYvoe;ze_1wI<;lhc5?V)S`J*9wK< zdA^|^8X2q{W7+3{YtV5!;QN*e{LuU!J+Pfy5!W!4OAI)%p4FwhHWJ>c6f4TBuwu4C zzXMh&6)@;P)!zz5918*0p@NOVCummzbN%9A=yO;&NXueEk66i;yw%Q+73D;+EGunp+o@JzwfoZ>gZ>Lzk1f+N!J3ELE8@36H4 zq1}Bp_o>aqeR=9vdxS)k_r8rm1sema8-6@Q-fBRbD8b;PTSYurQeZd9dupk&1bV>n zm_ZH>Z1rSrW}w5TgZcjVO42<>@NF445_;@QerOMIqweBAg>^FoPdUQ-?&5uY zS@2t6Opkks4QmnZck-Y0=sa1dy@w&o&-H$|5oh27QaV;Lc7a>B$pTK5F6IUPrQUFS zKC&Hwi#c-{5L?Uxh$5uh4U9vhr_MuYJzOg>0<8z+B&}g|O5+J|io&W>#Tci-0#gDs z2k8(?`8MDh2`P=Y#5;s*tAfw{gfVUdN_xFDTu!IY^^FwRK1m=~TKqxOx=2p*jO6x- zRbYvIK><|qm}g!9_eb$@u&A%n_{Ziw+1-~J-92m;@J+Gyq1;>W^5_zDFGg}RfQqz1DDw)1NcA~(?i}Ye81`5c5J6$bb{9Yun_u9zsi+TE*0YjA*w>~3>#)rCT&Pc zYobeP(sk7e7j^OT!Wf}1SH{l!awWx;zl61F*5)D)yr|HgP7i>40wbUtHnu$AMqot@ zTogohq5OPnv}iN?(RN6E9XzPHdj#{oJw1~UtueJ~h!{uUB5EX>yIepK8dA#B+HY*m zQyR`o1Cf%NSYpmjQ6~fSQ-iL{JL@AU$3@WGR9 zmbAWn+3b2dMVEGD1G z1z59v!GARf9ZUM<9fU0Yf|m@g-z;@M=$Sq|75aBrBG;cKj|3i_zmbA=^NhV z{|?V=;W#uh<}gQ1F}$a?JR;}v3mMZR-rp4N%6`~)t*|1QaFR=M>a!m{haQSvdKAnZ zV_|{+*nAnQrZ#hH_As9pIxHPlRJ!z$8}5c0@x1=fUx1Ck2n#7^F!atKwI(_m4DA|J zLhld@*1xw0P77^T7M_Tt?Q8=-;Kvy62%Wf{@9Egihu|fAKV9Vc%T;g{WDiwc0B&T7 zpvq$&U;--~P2y_$35Q9XX_q)Ug>s{56Ff6!L8t6i){yinaX{mwB)zejyTG3rbii*( z4Rpp8^Qq+4J99V7&arsb6$W1MSi34}t`}xOYJUh^g$h@K+qjm^G_I)?R+?Ky&2EA> z6F$Zlg$d?!$q}Z=i}~wJp7tJSJ%SlAZ5{c~V%t`HVARZ9=o~L_O zjJ7Lb;{x}R4OyOP-1Gc-jCx??2BO;0S1X(`FYq+ma&OF+oEJ{VzJ{1^gf=~6ZY&9Z zzXfw7X9ez6vFO9J9em+^nPTPrB`QM*LM52QA^<-yzPd0;HtB2?_7C*=!t zv=n1HlvLmDu^elQzViKV=1CSMl%He?eT2(1>3w*4gy*)d`%^HEA@Zv$(g zYa)z1SV_c`!O+_hHLkt@3;q(sfwiR*!kc&`{{-*cRIUkr z6~JZz!$)~1QQjinGSNr*BZgey!yej;F)V;wZkIqNN7NZH@=R4FUm~D3ij@rsw)Gx^ zt+B)jUX%=Y{$}V5R4V;qn>3B}vYCx9)q`41V`INKkc0VEe?k$ur;nCXDkB09#d+u^s#dk>G%)cv;N&6<$ati{iLX zu`XbYyL(3HX!iY-uLZL6Q~1D4=Pn56$C|PKKX(~J_}uw{#*$O0f#ENLcLDnM*mUgc z<0@+^g*D5zHf%L+T7W+Mt$8mvz>7-4Ggn-oLtw`3geMYf`u&Sa)Xq-9A8SA__T1en zTrCEBSpK+8zxC`yTVcUdNcfGds2g=)DC!T05(9kVcC))hFO1z4{FOmv*q<+_qB#;M zkl6ZRSc$aoO9%A$;_xs-kK{wY1qauOn@&fjZN=*gJm!K9zWHvdyV=HvW{TWPTdzKX zRh2YGeo=XFIwv!%LmUY7RHM?_H~}m!ReG=b%J2#DD=8C(Uuqo5n&P{({z(&}{g#`W zgm<#zz0xZeCd7FACdmCq@9fwd;kDdMLAt_AYtTH0s0+CDsAJ89lq>lY=3JUTA;%kW zB@tWpit?cdfAWMp??V$Tfd?E@{lCDf-e;Fw$$f~O!1`A{B%i?C)H_Vb*S8}V;@*q`D8Q1$4)!X({zE+O!J&o@8~ zgH7qyf9x}C=Z5FZvERI5*MWoPqP?l44DEmVh!%crFSYQ5Ky8od^-Ono|FFn~d;wRH zPVzH*Tkye{kry|9$!isoWLFoPLNbU9;Gz{vB~wVCfnl& zc4ct1x6#DOH?%JUM?cLShxj3PF9>z)-U6hx}{*TU4h8$jNt;0xefEiTf#JJCQ8bfGJKuF@br{|EUO7Q z$YLJw9V}Veem`xZKNGWaW~&*p{QSXWzx+;dvBW$b{H^PN_gDMd?nG=(J~xeX7v|oM zcxfHqa#tmKamQn;U}CV1V_+fFMPP3Pqr{eFh_6%1kY7y{BaRYfm)o==em{~cZ?0}} zpii9#LKok{yC1BgUZFULnJ~jU2JsXaqpVw@QiA^qv5r~~=wHmSYFBC5U~>f4jIqPb zhYN}dFl(OZgjFccE$jXRD@&JED-TJk<|4AebbLuBkCNQquyR6`8tDVA3%$|h!+_UU8_o0#kAR$%& z^GPzyVCV=m#4P5r6oKZg$SJZZx{2TVXm#;=@AU#ZEbn!N>-hcfG&Qpkfi++jh!3QT z`~qM0w$zNnzPJlpDF1#?Kn~4QpX)w{7eCk$RR_-OY*?raa9fP~i`%!^@tS({SajRk~YYg`rM+JnBzWPmkELjF+E zE*dSj@KXklm5f`EjFk>a@$sEIf!5myv|cqho=_Iuk9a-0J}QtV)Vas`amE~Fiueg) z&y2N1DD+y74*hx&cQZ zyEw8Vj*Haq-)w;1A{%%JX|EJ!C8W^ARl^_|>x^i(6s-einl160+N>@D2VfoUjk?D6yTq#moX0B{s$F!Tt&GnI&j1XZmKcsHbmD1+ z_q{vzr~Vpb*je4tEaR8JUR)a+@7`$hO3^Ca?ZEn|&VwK4&Qrx(g-r=^vkE0Y*Y{u( zd}^JF1{G}W2Nc5s8wb@cMg3xq!73*mZ!K}kf%L>^5{Y;&J@DbjTKNO8+s(oVKhR$) zB0ClX<#@WP9P5}v0>i9-;}FKIbeAkM-KlgXc$$D|PVg&&qt$aEk1pFZCg zgVc(M0qgk4zI0bpFhZli9S;IicR)d9N_Vkhxggaw4-5Pp@_(w^3N$He2!`hL=J?Zr zu3)O3xW|nz1+ocx*yalUwZ7satveWEd;cIzs#3a)?sS(XsL&{~(vhbIrCG|!u&;D& z!)hTI`fE>dzRJ^_FZZX{FGmad4EIfI4toXzL9i1~L|hB12`QpvKsH4mI0U>iMPFuA zH104e3zsQs*`l6jnGyIsj33#;cR~xGsCIG68r@#~J6^0QXl3)R{Xd?Oh$x2 z$w%8IO&jWCAZzThmp#7>5uqry=auIvGR^6mU zpU{ENZ5{tz@5qLz;B1w;#=?zi02g14p&_zH1zq)o=5_qny>eH)GuK0Sit*e<)N(WA zzF`5!z!a_0g@|on{7h(CbnlBR8mjnBf*o_yBi@(6Jwe#oxu^-u)vn~g6GB2mEm;5f z=S^m)3mcO?!#;%rq z*~)WO+48P$wI?>%#kT+wJTt~baZ{*VgP~t`6dxzP6RCkUO#7g$PzK5KJ6#kf1)mWy zA|dt~TMb`WySs4Y^+M#IRx4ghR}m)e=dnp5W`>Tp2v-*C;7J6|=UCFdmhpcfu8v2f zwo3Rokeu)bAZ(h2XCIgN%MkxY&KYdR!o`JbTHM8ZtV!g7%`OLTQY2dmDLy_pDEb&j zWIQey%;$xrMzmtC6;>4~Vv&xrNrKZNs`$x0;6*}BQgkSa{D=BP4XUvfqeJ~KUL=P6 z5~C$m^U#)MmOQkeZ1mUKNhu{V^xQx5v%%H^&newv@|@Dm!1pFrsbhR%kA$?8@Wz2I zvf%gpY-pRoxh4EUPe*Z(V2-9+7{+v37%o*@g6D_+_q^h+g*h$gq~wpA26m&^4Dt+q z6lZ$+PpG#Dv0#vJ@=~mX7|cZ-z=}Tt#%uCl$(en*(1>S~|H?S{uMn^EG!>PsO}9Jy z`^(9%Uqkt3n!kiLpJcB~%PMj8XjXZslke=6B9Cdx?7+%?rO4^r$zO%lgGs&RBOjT6 z`oi}t5tLXJkgt>ly480FX{)|VSNsPO+IUzm<-ISXz7ZMTxSM}mfIsy5Qaz%R!?%P1 zb}$*t+#4vGtORDxpcbTr~S;dWJLG=$(Dj zivQu>`TXg4XSNpq3WGB{5$TJOp4g#8ON{o8B8`{aw z>>Yy=_lG|1y>5GC{uW`9^^|Z0qlV&+z|_KnW5`ujO4EkJ4c2FSQ5a3GrS$z zg0V4Ac%}GfVwQNfUnMP0F0MAmsBq1Jn2}y3&eg^wBW)ir2ETGxkbWZOVH|sL{DOn@ z%Vp@#v~IQ`1`=sP%D}-w$5w~hmEW#zf(-4{kB|i;Bnnq2Kl84f)BEKvl>JvgkU2g= z9M>e@HIKp-z6SH~zD|C^UA(7R?Syv=R-o)S(O$d`_TpzAzM315XcXgs<_t(RN?7#3 zxTk^E3wFLa(5Kyh&U!qDd0?(r?W!+{Yfs*k+@7>i-AZqxL+Q7~j1b>};&)uqSu6FG zd6rg0F<)e1b6SNfx_y<|mWZ5Dy`?=DgRFWQ$uw#e$uw%Yzk-uuj|FQ^H8=;qWnynL z4AoF=Orn@`oS1X0PhpV4HY7v*r?q_i0OCtAz0_soX5g1j?uMa#XZ%>Jn$g2 z1S;h}_`_I5FoCmn)Z_>^zrCL%4JPn~y$maL;QV2GU7Jw{eacBYy{8$-$xgoiE-Z<- z>La=fE4zOHk4bAMa1-%2`y(vf$jD)hz(^Gzc=tAc4Ns!+`ZL4g6=ghS8hI^S*WNd=I)I?c?0;j*JJkC zEb+;p4UDANAmV<6N&#&Ncmg|64~S>NsL&?xt?B*f4Z>f0a{v9Wt#)O(rNO^Ss6}dg zs6Um;Zx}&Gi0vATfWCZf23A0xOss+xVtFlrQu{iO`QRP{qxuPt9|ptJXt59s}?}=F6FNZGa+xhfh*PZs(U&8fq%V! zl9*F7a(d9KLPYclKFI@VUjr@8E<=nuiKJr84At{v(wAmdYjTz zj@j{xOrKC5%VPDo%*LiKvwkYfX33-WYQGVF;^pR6!8>W0LIR6wZ|Ez?EO$biVTpQY zN|QT${+uv+(U5>e9))kSlaKE=7H$#V`NepQ9W>+5huz|BaGDumNh79zBe45Z15bgG zQpcU-AAmOy9k080e3ItxxUc>hH&|^?vGwZ&9^pg&aCwYTE zHBf~dz$t6|VriPYszmF~D^a=Q!O$hk)R}JkNDfbxM+A6Ciqj^i*cx%yPM#$Rb@Fns z@VE5c3QGIpjKl-yKy2c0I?$Nb2=twX!jZmz(*c8-DtdFZLN;zFe27YSN7^@J%qyr*TgK95 z)7)jS%t?XBk#5p>w(!j&D^UP<@}btd#7UPb-_JkMt3w1@9rW+o0*ZmGLu?mn6GsJR zEakIj*=KIkMtTOVe;br>z?*N#OxaKbKRaUZ0`EGQzf!Q`Mk=94&?Yi_NwfSn-~Al! zVm*DpOfBRy{DTv-c$Ax+`5FG>q317io7TC28Q6(9i%Z-u@&WYF-^Cu{kD}M$dg#9P z6;pm)zN5n0sVT_i0RANyect9jL@6f&Ye%azSJH|fR%ygC0FHqvRO&XMJ^p=J$5{e$ zvDG|e<`^>LQfCj~A;PfH9?kyE<(aaifn6R2l=u{0a~!t9CNsB;79ppS6JZwU8} zAbQ6>n?!#*H2rQErADI{0~VKsy-FI(%V;borb#6Ycsd$T-_Q~KgzmzG_MgP%g8xDrV5D1sy9!+}On1PyYXaWGl)pyig# z(K(|nBU6Em{zu}!?nAA-J^m?mn4 z@1}-Rza91}|E`$&-PBsaJC#NBSVn_L1F)blcM<8ZZ5YYekyOK~GZOuB{Ga&f&xnlC zi&&!jY*E0Z> zss0~1K}T_}X2uv>UBe9nW2@GgQC`&oOr=UezD2Q7Sa(WU$@ttGb*lRG@cn8rypB8T5{Gaow;SrtanMN|PvqmQhPsHXhpptgrfG%jV$4$m=s z1?}O>Ezu?hV>R6;hlh8q*zV7RM`c*mX#Xjohnvw3Xq?elk08Ei7o$Xc(IUi3Dh7&_ zT6H?^jg_3|Q*npRor$<>TIU%~;U_(KJ66Ge^Ksl6PU}i?F2EO1);IGH4=AgWs^H_L zQ^Kmo=#|xIX;}YLkD8#1X#MdmCBBG;Z4ZF9YdVvn9fH3Jg0D%v!{J zr}dg-OOoqVqzpw0H<0J)xvr_3=832ukC>n3<_1W44bT1OIz1)dljPE%x30}_3UYlK z%1`l5F55z(mVT1PqkX3*MtaXrjPT;EkednlTLNdxOq*!U_Ls7Dn;e>cbptdlneA3* z3nH#K2u1H(%clF*3_F~3h;-59;W7~V45L9<&b)*YTzc-v^xMEf+bKa&JsQC1BP z8`|4ahO#th0u4Q{U)R~HglrK3RZ>6Ke5<7jPxB>mB}^{(|fD^{Eer zIpZ`9F;z^OC9uWbw4<)&eXL3~Rm)IQS?(lAUi5uqT<7^0?lOKAH>?WiCtx1qoC#P@ zQ2m}09yOBx%%jF(h&%#LxOhz+q24FOw+N?orP-O@VXjlaT#t@z1P*DDUmbj3CF?!| zo5ouH)w_0lw^#;aCR){K`0=TsC3w2GqK72ZTA^+7f;s;@OS4^^3o_*YdLFfhD6gij z4Y7U(=ON}dp11`^cp7X%7OseA2O@yPZ5wl6PNK6^ z%7ciG716NVt#vJMC)JgKEfLt!^psZ<+=}`#e(u0Ad?!_1V^E8j)>^g4@kdyPQ{571 zm4|21e!C;8{sg`jtZ8woYN^+Y9=mU1oDb`y<|XisPpYRC&oFR8JR<5S8cV;zT^|AI zKh&>isN)vP;yaZlqfLH=YIphbkm;VSy4E}~!yB&cE8;s|(Qmt!H<1a%I^w!?_|Gd< zbTRmUv@{mqx}@}^-;ARUy9GxtmHx%wJTcm<=&~bis$(D0Y^9c~Cvddi;lMfJ{Q@gZuvN)ZI-RftpH&X)>;e~RqRfZbm|C~IfbhJGPFkhYAxijId6fzpmN&n( zGKdzmb0FmGO}a*7!SeJk-G~EVb}5E*hRYD=OE{8=7P$x`c_?%a{5e>YH-}jRC_=J) zm&`fIui8T%2aKKFc}$1}K3)Z*=K_pksd9B-W`Flp*a9-0J(I-V^AC}Ab9uU^m7Y|m z7}4nyROwPvk}oRwsG8yxg`c&jpYmsRvAZN-gpO>MIWdD)0pVN!u>ma#F~Yap{p6}@ zj|%I}WrW|~d5~Y#`vLTTRHwglB-PP4b;Lp1Cq#C141*<5WLdCB2U`2zLz&)@OwbPr zG!NLZN~0&x+Ixb5_z>vHGFVAtr5Ly3xAPA}|3IZ$L2n7$v&_DQA12lXvk#bmtp3@Z zIe6bZ7BQ)W^(cb|WhfNiG%5X6QDVuzC$T&N1Rdpezcjs}%fgC#Z~bHLH?RiDV`+XL z8HmD4!v>#yCh&+OJQn3RBE+|w2_5EtmrDqJB4l1=jqFbNs_&6HW5I8tBv0sllAVL0 z2l~dKY|wz*8tzCEBd(2f;5%CzN|v|lxMB4|=v?oxI$#MP$0v45^ym0T2Zp(*Ma2hH z5)Im6Qa#lQzDmtKWS;#XVnJ%fyaanvT{t#_#{FA^k6g z8}H@s0^4Fd@*h5cxK+rJat4nQzO;zznY`k2(o zUMj)myWuy!hzKS*HaJFfvPkvbJsgaZx?0pGW!L>NP!LA}L4UtSWRe&fVfGR4a5`Fs zstPO}>(P?ztk`xA@_YJ*xt7}u0cP=XE7j4nUepOZQdWDZo|fBO;Gt%H5vJu`RAbMg z#w3t|KJ8!ZXHxUL(t_6P$AIc3f2|yf@4Y_9O5f(PGP{!^RETc~JqNSzr(Yw#kG|x2 zeo60xs3U32*sqi77qx0ia$3Pc+e$NbS2~US-O2?`8u%ewEI>?Y>Aix=~-OO4TKf}V`R?w^_`8c(EZXo8`le6r;);fJvIaVkDm3uh+V?7z!6IR z7IIrwyL6KYYb??}NBX22mjJ~=I)qI4vpIzgSa%Zk>AgXdDC;)%5JGbWSksm8hzyVa zZ91B5+jPi7q7A&<59FzM@B8>Ngxp+?2)*Pvkpi51Cp3Uzf0kYRzuKmu6u@O?%elsq zR*V36?hn2RA;GxGgq7X!bkZVyhJSc@pyiS^b}+QBgCgftq1Ko&gx&h?iA=ZsUVT0d z9PC6`ZwEqWunrN|8Pk44=N4__bMgML%tNpIDnIUrx(LUB?rg5Y_gW47O@6(cTUe7@ zqjY{PY^b)r^R=+W-OMlQIo6|qPlM8hnCL>{i(Wy?UO=p_h$>CB{*pGp#*kcn40xz$ z?>q(!Lg{FI%|?!`MeA=)ErQ!=VAm-T9b#$IEym2Z@FBa3K$DRiIFA7{w3lGkN zJkZngG(5rO7jqASHa$ z?B!ywpe!DH)3FzH$gnppW>(;5jw2Z39!A=U(zf72q)c`!yxtaEiIk@tDqOXc&e_|7 z%W!U-<1Bi~lSo_8+6up1f+hy74LNC*5+A(^Y(Mdy9a5qZI+uOjdb@H$n)_} zU~k0{A{uUsz_n^zu^m^85wGyzirh~K<;VnnhtxDN^$1eGLu%A!Hej}oz;n~Z9M*5w zVE+Me|H>B2%?HJ+cjM}~4$I999I=5YyX9u4n7+f#1~hGm9V@2m?R4*CabJULrij;+ z;2IUKnJ%Vlk)9={uS1@@I!uL24lh0=&7k#V6L={R6ESehzDLN#OeaR#0&~zFVXi(Q z$7p2(|7@e)IW4eYV0s`#(Ms;2q?o5|HaT!oCl)UPd%r|PNuA+$0y)a0vVknS0Z1EL zB6*0#2eiGL^*ZhhU)N_U%t_SaZM%UYVlsgr zFg|`rW|$?!J`6Tbrigz}0LvEIDWW+;_pTeE49*r??M|V+sLWkb^ddZ}A{lDOZwQn} zCemO#ViX2hdJ$hLytsz!s!bdyTj4Mk9EGa`2D%)Tp0dw9$4+TPq?0n4uG8!M8X~ z{~KXB7^UgBr*{jY2WnuuO4`^TI@W(d7@ZD#fAJ%@`XHYI&Xx&&|QpaMsKQ^li{MX688~{ZGS6V7dABc9|hh?9K5)y&%(loi+@NjsFe} z7dZx*K`gbw0(_&qQUgnB^#-k!ZdlHr_l z;%4D?y7Hfc@OupW1MIKu!Kj!wh1?h46z0BYx%Jd`1kkc9Ew$tLj5IjJ-xkXL;Y;p`*i!_CiopWmo!O%;+};PT7;qv zip=k|?4&%`JBYySfL-yL7p*h!>yCC5#cEWbiU(K+c*Y!XT({aEMbx@CI z%Lk)e$)ngbRaYn0Vd-4d;gmoYS~U~s{X_~&Tj{nvf)_SjmbC;nZ;ReL6?$X3>Jxq& z*k8W=WbQ$gVR3aK|IFY-7ZCHVU_P=4rvoP2$T~_my%q zu)@Xb;fL3{TVO@Mnk3((gGI16&uzepGfqb6pwY_i)6(VE1BN6=)FDZqtaxTpqPdU< zN2Rg7_z8UTrcW5djN&wrza*U-k2tO|hh@&iO_G{PhviObO_VFTVOSs%a~tU_YPV%> zTHvAHLTff+T}kI!o`)`@cd@u;+p;anRSB;b2JZ+BLb}XQNP4=!hEF~a3MWxNW&$sL zGOD+-_wXJ2OBOy&S_ADUbF*hFGy2y;;Q>8*$zqP3Wao2x6%#^uf*A}0%D`XxnZPeT zNqa}lOv2A(ONC{>+~VX9^aUUjyrVlWoJc>X1+%{HwD6Akyl`GTI)I~nI694^)6lw; zm)B8v3SUV-4SURKTy+`|MNbP}{Qi{QxW>5Vv~ULdr|~<1Ul%;Z9tG>g$JlSf?`Zn< zRmN4o(O~~~_#I5ow^DE3vo+D2#LdOKZX2L4&VC|FRmDZGlicOx7xfW)^5ZW}Lpyn8 zAVS;^*rwYz+I8+kGozqu z*{vkq&BU7163E}W5G)kT&DC4ywa`6u#}0glC$|z?%hx?rt`F|r9oPRU?q2*u-icz~ zzqxl-(tiqPxvdLb%ZIaRl8Y>I&!%ffGvg9oVFESB8T4&)y3x8*xB_fVvNy#o!8Ms% zAND_b1pd&wauM-^<|Eel5x=8{*+o&9RoNP$7zi?;2sKwBaKgS+nU!5tR52> zyR{j}y~vJu9itlt)PyBB=7+P9UOK12mcbQTT%qtkuOkhl#6JS)5v|V7$joJP&Tz0DJRKz> zF%u#6NQ^2VggI)HS3oeR5et_gb^;xoSo2Y5>v57keLekA^lbAbX- z)qlZ1K1lJ`>$VK@lMO=yK2H`~%gw<|Pf!vQ*-;N^gHcnQ@j*4~M|u)n-zbc(VyEK0 zz}`UPj%!1E_S9db7Pd8^(Ukx`a?3y9Ds@8vMOto_bkH=nqfQil6kqxDm5jnGhhiAnVLC}TVI zw(Q&XUqq*gES`^|gpnV%P+pJTP$K;&%xNOblwiVG5~}WEI#lX0yZoOS3C{|N}3I$%1k!c ztaR{=(<`ojB(f6uz>Gw=!LV#?wDw**hT3Cpo++hvJIuRF_(+V(ehSapKaVxM#TSQt zsRI8jU5IGs+i<>9_`Bj~fw|zEzI+YGjqs+Px0rhiaceFJZBm+XepCAI(04sgaDNcm z8b7}#=83uW^ffxKbN?IO0gMsnG8aNNq0!>Q-i0Eo=h4zN53*mcF)nm2bScI>nIoG_ z5^7ryt`+m$RGJ2@X(9h^FLKIU*uacSw$@)u#aepG;hxZ`yDZ7#_B!1ZSEF^R%eZQq zt8vwImvQwBSL5m|mofh#S7ZLeF5{Y?xf<8ZbQzzqxUBYXtk13bX4P}6zghiU{x|v0 zt@&onbI&wBGs|UsHrv(sY>vzL+-z6lb8}p$1pwr*EjK^n`sSJEp8e+8=broKxzoay z;?u$#_*G#xt}R}CjnS*HIw|D6y^N9C6nX2g;5sr`M@iUD8Pbfl9M4B3qudh1C~mcN z`Zf58S*Kj1c`QccRqB$mopQr!YYT7@^|)7t^Wj#(isxa8c!CLxEKRs=pK1y8IHWi~ z^cq$w(x#wR0|cF#e03H#ft%aete;PqM(LZ7tHbj0b%zXE{N>!@x4_dw~^%C&2<-UyZnrbVcs%U0~@b;Xi=i zeVt4@??ZU7a-u(Mb>OVtBTTfc^sw->-X^FfNsW*Q zoa4BKE=}NW&-$zE1WVv))ToF$MSKZO;AYQ*+;b>%E6Uu6GE452dF2mf9wU~S`=QK3 zQ09eK@0avpl$7o%(7;$b0WHo^--ynTg69;rp?y6vL59 zda!5YRVmubaA0OxJ>%2__Vx_9x=T=tGHmQs>h;XHZGw7q1X5LEs{AV67cvri^#h@J zT8bz4_JiwxjXgS|ne2|p8B0+kAKb`{!|3r0tfzux^ewHR^v{wjR~ zF|ERF>YSZgnU1A4h4?V|mW$D*{znM6sXyAU7ocsh^PNXa-WMjYvU~08_`r|t%hB`G z_LbHXZeK33eQkyGQ72nIZ~kFwT{rs2aeJ{=rq=b2{l8mRbWe@AZhjkh%Qu0$+~JSm zDv%PT+=gwkvJBf1O1qfynz-F4ZhwVsvhrnYmC6^fWtGokJ6u_Wm3RU6hAN*GxB1wn zD6QhTCvk3tn7UNl{#;Cj-gsOd_L7y4VQ&HUSmj)7qm*;7RVcH?{h2uTuy{N}Jf4be zl5&!`O&7Nlv1OGeTsPkT1UC*x$;#0%WtEZG zi$IFXKMuBOT3J#qVnjOSH16l3zL-iTd_&ti-$d)c%zupO(5ELeJ1U|~geQ?9c4-uR zMA6dAX&BR(;h3H6WoFvc)W?q?DVj>oC2L2j}9UL&~vDTE=RUJSRs%S1Q zho+EN8M4HcufyJ6vcLlb79_I^Kq_zW&*2!I>fNc=+7VYU3-R4>4xZW7@K7`r1qKTkFx!E-O!MPPs4dfBF{3;!BARigZ>XQnT~a0?D#^Fz74qow|5a{oJ@66=X>_I%7{sS+KWh(L z0G0zUxO}z!n*nI7@8>uSIkx@eI1ZeqOMx;FEe4{G>m_i*vYB6CoBvI?tXYU?hxZ4Q zHpxB@dJ$J>2s7RUtm{dB)j(!JS@sxTCYZDg=STRH5QU1O6p8Jim@%et-KE_Xc+(}_ z4%T=p^gn~-Re~|ecsukpkR;(aQ4e$9hlUO?5B$xSim`MTtcXd#WX|zf_=+XaqOzzo3P_-u<@nklTWOLJ_OchpKLcnjq0lN~e@j$YllB_6Re< z@0*RbbV-Pe?FkLS8oOmG#aU?`%glb9v-isb&q;W1vq3F0RP-b*;LqG8cF$x_ z7^A81Uag1&v#|sg-9r8^(8TJ|`ocbjv%+!8a^Gxratipc41K2@wjkNQ=mI_WTi`Il z<5V8!YLPpO_~*g;A+Kw`!{%oAM!I*Q%`zq{G*gd*Lw}{WFMPG3rX@k162+L7_^wwN zQ3p9U7H3T7t~pc(BMk*S-`{B4Um=?@YQ%mAo?%U?{O@NxB&ZHW8f0i61-!psUO$&# zE3MCdz$a@MmS(wG?zs09W5xWG7AIt{%?_zy`&?x(fi2*V_De*m=M_g^Wm3c}afBsV zcby{-?=11tmO-5=uu}ceuKC>6tPRBRt8~&jjS2k8t`sBtQ2R1+ukoLY(bInJpq?!8 zb_tkJ{E(Kab_rP+MDyHd7aD>Y_uyNu@L79 zc_i!-Jp(L(I$W4JmQh9TseAP<;vI$_;7ZADoGfz2wbSDW;T716^xP2LhwRM zT}x*#wT4TV?+%w}DN1B^(>h@gYfoBZE3wYhi{*P`z$yANrP*Y4K!ll-fCx)kvuv$e zyKD{Wd~$+&Spg99tMGlm-rOa`#(r*7`C0qm;1t9Hx!+fkIMrI#tXh*mSC}u`maUc5 zQ4ULrc8GoUdPT-O>bGC6Oh?aEWlFkFNtc8DcDc2|R;q2VQhR(0?NRET%OAzR0<(-> z#APzOxAF~rKlVG)j{LOW#SbVOuHmT%((7f~PSPt30d~54D6O^o% z#OPYF^BNqLD^CG^5{;Tnex(aB%c=I+%xsS0mm7gJ{v~)#7{fG9R-eFihhDfl(meBa z{gEC2j1uLo`|linrx!Dw8c- zgJU}Q(3oCLeX`+A+nLo4j?kzFM>rq@?5I#=DXYq@I~-Qq`@#%eA+Ut1sx~1Wy-0T6 zYLgi>_1}led%Md~rmi+khd-?(0TU{!rJNvutqFszXZL@EYA5Nc}vuq zmljSAyeH87^$EWa>!CU~qFNEllQ9n|?_r$){rOlO_WvfZ1_yZSDE&IHa}KZii`kFP7$WjYZSiAS^ZCa?9(J+)hOEWD=aK z)UFh9-!65oiVDs^BpO*gQw4dZ8d2YzIo!?A&--G7nUEbE4jMB$?Y7P1H_IAk-C*?2 z3PpF0gxcwT;b<(LT%pJKuE~Lq0(;Jpf%lfhLQ?}gtSqo=KvR$MnJdBGVvnh`4fCFb zb->J4S}QBgCV$>7l~y{Uf-@zqmN&nh&1eouoH0$Z21TG&9H|=YPQRpEsy?^!uqo3= z-e8AK58@yE{3a9rrRJP=*a6KZY~|oX^PrZ+kr%etik2WOXEw;9a;i#Vz`O@kC)gV}jAr0%Qo zXb}5Ou@`!_#i~7*9LHhx-JHZ`Dt4ncnKgUWd*r({J7@Uib(%fhl{0K}-HQdIS?W$H zm)Cz;3VpaZZzHWa%XXtuws#3U=NW^>8J1LTly*C2yk@jTW>_&hyTD=u ztYVLBuNNrVPle$LX9X<~&l5U6#Xo)t32Rqq6V@zQyCTUeypgwLP1b9wOgToqr)~d} z^t4sBmyQ*CDP@oCwWK{(V1_W(K3T9%`{XLfOJ>Dhd*O(+>$D@*Jh}G!q$k%v9%ar7 zk+$|&$ajLdNQ_t&;ma@F2`^n@;-r|FX70Tm4vZaHqAz%X(B@N9RK^C{345oq?#bKyf1?>_%m#8 zTr)y%UMwCJr&IZJJgVSQ=wDuEi21ppybd+R80bt&Ykq;tmh?ur@0|ntp1Q?-hj}6X zm?iM4!zmbI)oR&zOW+mkn_vsI1d1J!KyglM(3%S_cE{P4!8A*trF6|z$~_kT@+u&C zErA1ed3S{xdbHRQcQVFRiSxVAj6r#KxkTdn6l1e0xKQ#rMwU6~Bhw;`qmSbqJ}ZJ!8=6MwojfB0Xa`HBp(k$)9r%;yEmqfXpP zWERU~wVw!)x-GM%-ID0PbVo*~Bv;th&u-9GW}7eNao>e53?N5_q^_ljZu`8T0;At5^cTFh!N%te z7TIDwIj~uw4uAuGIXvc*erxiE6&px1(^!^Yw8Gt3w7|Uz zK9JG6O6_VZ{>}Ss=aL((jYawHl#Mcz%r_0v-#H%Kzmb`tv@WmKjBzifEcX` zEn{0+J6c6%E*kOB*{(eV{#WMU?k2NDOTUp3n5%e%_ohs^c9 z5YHr4EUkE7NW{LDsjuk5elqrlGf9<8E8iD%*f%is*c%;7?>Nh?-LY)P`xu2?*rws^ z1aspKNK>1oz?8~-vO}w$GrCnx5q=f+GChhWIp(G2Dit#Wa&kn|D%&*9_?**rs+(19 zg1s`opuWQ9R*tva^x7M22ZIV#_Utn_*I;dg9_QM#asDWr`&2v^{a@#d72!45wP&4< z#-bwB7;B2~N=+)n3L_k|5$lK{SX;psY;P5=JjUw__pZw6W{} zAfWRpl;;~N;;^2S7^cpPZ>h|lj}iJEeap(1#Peqr5$Erh(kzxz;vGA~nLQOu38eja z8CrxgY_9p+G@baS7@dEt zhhgFq)V}-zoY66eJ2jrme_=2*To~cc!aD4*xDH!Y@I^)RTv~~hu8f+yb!FsaT8Vuo zFR~qhm9fZL$d?1aeb7pMiZOf_daXaaW_YW7aPTO8KV3V}I_&-C5h&fkDjBxFtGZAb z?Q~V>O)*>*j#pN_DR98a&&7W(evjg}1;0G}mQ=;mjIa5#V6S4kq_%mmGOLorrt)?P^6;J4uZ|l154>>YoL;Gl;IYEib-z$MSlODnCKwpNNI#K&aDZK#y=rF7MbTGn$hwN zDH{-D&2U*Quc0)?FGqAO(pUU-FuHz+O_907N^6}Rjy*W5geD`!U4U4ZEUuBEu7~vl zsX(4VdRD(jcuWVT$ZC^Q(taFo4xgdT>Uy=04aO?KvXCxoFg5x3(fw&va(|bc?TjA5 z`Vos$VR8|6IGuZ+KhSHcGP%Mw);ER6%_dg@;;-*P`Ne3N>Ku={9`SM0-{(K*RS*tp zEb3(JPdviRMXjVeoC$lo$k3&Jol2rRD_5LHF1loqec2M2QATBrhfiXjZbmya6{77r zs*Gj^8Ad*eO8>iF*>#hPycR40rYsjxW)uBXk`xbl&V)+gD~JCfloK=(bSKcMr47)U zqK!rD5f+*kv{IeH2NBfzB2EZ z^UtoVTp3>z9f*~nEt=!w&;rpK9@RxONHQX7qFr?r7c1f*TSZ{y+KM-DVKqOE!x*QI ztogiKA{ozVY6|#)0d>RY-3${|<$TTeTFwpD_`a~;OxEgkzBF*@F;3H=NH9O-z|VOb zG%4UDDgFI5lZf{!FD0)vnJXg0$5-~IRTV=MzM>E#-bG6PT8QLW7VLfi838*x6( zWokDy#BYjkJqj%}d_KS?rG^h+OG$$#V`C){8{g^@BvI$pbqWL4yK%8*X#P*wz^VE* z{#BlgO_d(tsMQ|P2k==g&E@jYljtcjmye$hT}oP&`JO)h6598rXD46NaX!AJ$K)a( z3q)yJf*xvq{M!ANC-a$HDezdB;ZxwdJ%;ZVKF)xS_kO-3`_ihkp4e+?u9O0kb0mDm z8Vb`~4XY_nZJex{YHN&7Y%A^I_Cu}7i)f_vCA1gk_Q@kU@#St?UZQ6K{fl{tF*amJ z-1B#9fGp7P%-?>92NP~vulJB9VJq|qjBzVu!mWalad4)(GO#W0!CN$m?J3?nPh7!g zqBWlUVf}ub9~3e;7M#fj##DElm-ME=&t<Gm4SI91+=ZQuy6f{8%f{p)9T&AY~B0N8PB)nDNLQ{ z35=!nxUipLl%sv{L}XO0s@F~^N1jIwGACroomEn8XM97oaFNODmE1gwh~vmH6Q0no zcER&}kMJmb6@b|Zj1YAAPpgk_*vo(4AO6nvr_B@i9l+!hRZWH{0X$%;! zYc}P$)pdV`4@#`rhIyK1`&)K(oy=Uo>wEG%CioxCF=t|oq7kYE=PiNjb_FyR`*r_X zjZr~)xD1+-P4K{tNvl`Bs{|wW8mwDRVjKL|vqpvA_kZYm7q}>{yM25vdt+H(0WZtN zxa^{G@v?vy)TC|}95kjCFHI3`vVz80jJj(222ENQF$T0rfK>y#uaRilpwxy1X+u(r z&8mkVLRy#2Z9v;_dPx)&&(|V{(BPK8wTxt^dmk;uRwPp#{MYMzg?``Hu8NymyGj zc&6^Vw-Rl^DiDfgCNDf3i9rjL2k!mSCjZiABIQ%r&cMwIGp`R?_h1EUrvvBOY2gF0 zZfpYd)^$D68B?Ic&16jQD>Bvwk_26b*`JW{NMNd9$+#cC7&2z~(=&b)un2ZA2tScg z=wFgi1eNZ;$r@u|vCOq%8(M66@8fd;wypBEHFq|)iGIub_?(GtD7#>LNp1$VAC|Wt z&NX4XSl%wqO~v+Vd3$y41ZiQmIhKb^qNr2IJ(CD~PU+^i<@w?i`ui^} zu}vSD45|->+r<)Bcf8bq3IsYrzB;|I8_=8bvQnMYJ@=e4h$%B`toxAmqNUyc- zS#+F*SyJ0qn;`@G!<&63hKkaLzY|1NPe5^U2=! z)~cKXOVwKBy3yJAT~BP1B7w@ns+tixmT0?gy>=zwW12nEqM3ZBB zmfy}`I)*eBk5zrSqo!A>xQs~T&J;z8uEW()lX$xjY~r;pGOt!6=B!W~f`h{)zMTh1 z?l_sL5rOva5$6xn!mZHsvAhF)>g|^TgT&`7-67y<5lDoE_Q;sQ3ZCvd=H zA7itxN%y-HyrP$G(KRVdo5c6S*RbAXXHwtPxIVq93Ni@`tOVP|i-Yi9x)$&3B{kB3 zy^;rS#kpaLnz;_MAbXNIbwQQ*kC7FNy8@{VWTmDbwl5k z09Bd!0m4P|ZD4^=4XzYL+F#)-N`g0g+isGLVuIGe>#n^hY4eV?=uEH=NSJH^jN!P~-D@C^wC*)>qUxsa2fG1s`!I#s^75S z3t$@zyop=GYw}uc?AznGP#`^>J*t$LWqB1TJd>S>_!|)3X(m%Ao`0Rsgg6EH-YNbA zs)(8>Dq~zXlTN1-Rz5n4O8=OPGb^#JiDJ^h2ngB@%53NS0*GSq{c3>%! zAjM68$wpuBFaF2HY-rUfjy?dSTC%DwFFgMMaiXIFGP5( zsmJX9Plnce;=4e_)qz)tGVOYSYKR$(V+@XLE;sllG`!vuw-0A>e{Q$)?}>jzWJS%H zk^40#SPTwY($71@&O1k?IEx+@K&)SpXR2s`wRX|)F9e6Sv{N(Q=w|1f#;Q+OtPvD= z;{UmC4^YN9Vjg?4Tc2iROdXErr5GnKzBmGYLuh2EGcBEQJsw+3&!Vj8o<-TwJrr1a zpEYFun4bMB!%^GNHQH#w*c16P`W9s}J=S&M3@Y$}##yBAEaY`b0&nmQgiawt{JLF_ zF-j^Rnj3_7IhQwK%-{n?fz*v zOFaOeU?m+0XUF;-@DhC39uEB`T*c)hf*UEX_s$YT@1<&Hj()}$0cwg$FjZQ(^_7Vj zkzWckbC}tS7k_(&u**xpZIe$*-i~}aJ9XRyD1d0V$!Wh4Uq`OHF)bImIj8QJfeJYR z22eBf*GW_pIyF!gg65ZrU#^K2(8{r_3rYt|o+R}Ohnm7ljAj!k7N0DIahx#fR|8#= zG2Tz}QQ$ysgLnBsesdN(KvRr=E3~R;p`^rFWaXVj1}+}!=SRCVoUM-;KLz3^4zRl0zVLHANj(Lh|UynIs_+|KWXqlFnQrnO&C6EBYE->U6bF4&_g3FsUqCd z!RIuc3?I!kNNvWYe3q{d3U+mL3K;*Nkmuuhos0Q#+z*qopE&{EZ?~_Gudj_6R5M?O z{NWPcP2j-Q`f$iG7D0bd@V6NXgsLAPH+oqmoxSAR2bBllV}&9?mMx&pF1V)M{qSze zXzN#`pBU6I@NZZY3z}_opCW7MDwV0Q1BkpS;^N9-A7NKc>+HRF&+7!JJ}4g&p7dfTz^2VLcrFWX`QzfOu? zsxY-VgHC&;(V(zw5)Y1)Ba^V)={$Sg(3q;gubZF|RbHu(_fg%XOpFZ6!Gh6Tjc5mn zTQzcVTO48ukQ5X&U`V8RAr#>VrwHNyiZE#82i_Q*h@62=mjOucwM#dNkBn5pD<~f! zIgN@e7C938fZqk{s2SE6R&9(~FSKqgP1X68GFGfW_Pna#d8GqNaBV4IGXe+xWF~ig z2W2kduKx@uZH6%)5`Q2~nDTSvL&wBDbL|??hpdT`n1y84dSGeGV61ABIB|qBv!?6Y zNrr6x(tVP$ZXaydO=2`u)iZ&)es6dpvfG6nF@APt=`~<^saZ=|w8hA~@K!DB!ds$ui z&K#7eV_8IhI_^sbCoIs;YC6EofenytzQ&r~NKIU-nzKoK7d((1lXq`V4l3d%aB;Zv zao5xXdo}c2%^*W*<*T$0|E`@eE9TT7I!&2tCC2`=bEA`)vmr?yGob}%{Kq6}z5LvQ zPiryzYmI)#m!%a&dU5Uqw=%U_Onn4r=TAcHPd?Q8vdnf1O0RH;DzqjESDJW9LbD zh$!#rc10d#B9{7;9c4SLw@#pB4NVU`OCL>530hTbJw3>1PNFrZ`;%|Gw#5h7S=L*1 zE_y0yuO+AfDKiQ4l+u23P^G54M<-Fj1TOiubsG~%x$SyP?`LN{bxkv{KZ>4|w-XnDOnzteGa9eKm8xB6WlRURbXVl#=1UUw-> zgt2CyR1N)_ePHE(7XRT@xEHaDjt!@`J^{^DxoV~kcP@^g6*JjOw60ven6BRY^ToicN{8+`ZC%3q7v|=)|8aR$O3b67F6$?#k6a4`|h>pS_#j zbN1qX51}1Mt~qHBy+AimHLRb@x5adLOz!vm-e1S&n5MIgw%6Jq@M3xeSbi! zx?TgkDf>I>{kt_qdlp}J&Ab+kx}K_RO}(I2B92mRv|-G^wTx>kUykg-)vfZ?Y46EO z9ASr_LiH!{jUlpPup(~?N84K~_epMx+W&ZPkNlmHZH~Lv#@%PX5zjxG4|RU(Q1Q!n z_|KqGXCTq}1jd@&W!M4_5tZWqn16u(1GN5@Fi9NMK-7bjgN3Y{aHINkW@M9D7Vgss z1o>&YtE4(VXo8=gD5nxmkI?c4^sh-A;Zhn0u4Ovz6tCuDIn(WPWt97r-TKXEu0s-g z?l|UG9p+bSu-AoW!(3=*vtl9NYaI-r2fD?NxQ?Hf1!ZBOS#l|4wtgD zyH>UBa-`M{;q#|YJRK=-BN(^!)NHw|cAWdu!1ZV7Y}&6xOqTK#14XUMR{J%GE>fNZ zi~xutWiOMrU2#SJNUx-OHP8#r+kyzpHYI*r`i+rI#C$y8-^v%RHpOKzZ zq+JuA9Mkv|=KF=bEgtMcUKjRNU>{@76-c&wih36IMq%$`*c)X|20~MVZzcGqF(=}i z7T;Fjo7SwuHzmG3gl|f$d5PZGHL(ESV1Mi=->s3kan(J|lcvhg?&cWTSH6Q>r%@eq zX^lGNQmHEXa^4n$QgJC#);PJWbOHVmVaYcxCfQo*%iEG9|E@ym3jD5uCB&E$gaz_= zlI-)S=*t>2BHri|dazj&-VR~~JPvM4tlDrcB*(C_d_Vel)}^Ix#RL>-NoLl^<4)yI|W@GXjD2HL>pLTk2}`#rRyoiJzs$ArKzg47t*#kZX7T2zW zN(*?@j=m+IK=oS*1Mm*x;J6Jcjl2XGwXphj3UGJ-0Kj7gisl|v*(5)c1QCh-25 z@bqPJsY^DA+z`P*pe{`Iq;Tl3K};z!QO@x$?c%6wR&p%+iNN!c`%U4VsA zWplHGPljLcWf*ceZ5{CM$lODe#b*S%Ka1O3sXfdPPgPMkH1|z;>p7~sY$4G``~G=+ z8Tw>c`0jbU1wWXD`;0H;&9zkhi9uuRD-OhuS-QRexSh`&Og$8Wv63qW^DcQ#9y}+a zf<~Uy``TFe0?%C}-z=oZGQh37)S^tA824mVMxI0e`+EP)h^V zIX4HGQY$q*&(HFQ4>s~oi6|R$>bMgfp25`UX>mxepPz3`1|rAeUHpFOx*?P zw$lqF;YL3-RiD$w&EeWP1^fqeJq-=8O&9|h%oO?lY6m@sjFP9@tJhZ(q}nQPJ5VNr zv}Q6!#Tc-$*lF|%t$N@=`hyx)Nn284K5)6Ke~r4D`9_{{eoq^-EM;K%!h)ACP3(BF@gLAbc?-klM;YXw_>+G&kV}EGX z2>h=doRmdTX`@&>J}#aeWz4TRmvCl``|nD(T@Qk(_+OS&&kQ_6H5`^^8R>=vz+eo6 zZ`+xhj2LY4MoLJ9U*YV{(dUR)s}5P2MBOn35sFmTm%bPIi9wAzHL(14qq9Gh0)O2H zz)$1bj>n+~QYb|ggX@o)Zr7x}CuIPa|AcXqcx^PF%t+N5`7`2?LZ%=^_7OfgJc)80 zG_LwX;;_@#vch%KLLHKt^US`mncY!PMM0&V{BPi#hzlfB&a*fp?|ez)Zf8-Q^eXEt zig2Gj+t$P-!rMTe+&Fls@?C1)8tibnD|IGjgiY*_j51FQ6?_d=M>v!**5;cmGQ+Pfa9FbFyKI^swrLHH zJIJkF%wQ!+#ZC1?cZ()j21I-K4sPU;>tVuK#2)DTGvO;pahJAMzE0sec)P! zF%WB!|HXK^51-_W3@&o?Vey-2O^lw5a$tfl(Q zzI(ND0KY`aC*wDmBm-vj>Bj=3t~uFjdy;@aOqT1w!VXKo*j{R<1zgv@8BFz-00o`R zi7Y+scqQY`<1)YxbX!lqLwekTFu!6**%eC$nfSKO{czW-l@&J(5922WI0PRm4RF%)F}UE-K!%5?9ol zh#Hm>Z@(E@x`i9>{n{-5+H9K8LDWFXhmAOj1@F2M*(x@SWM!itbV1*>E=hoHs?pR1 z)K58w-065kDLLeX{Y5gm$aOrMR~kI!DnWBZAv{Vv+EejM8?H2mc(uZaY%h_whEYqR zr6an?_2vx^3atlIlxj~(jMkm|R$^21ZlXsP-EgHn&V9Z@wXj2?1cKFTs!3|0gNx`t zqIU7Cfp81P#e$QN-WuE!tIzpSKTXH4PC7v6j?1gTN=cFRc_6xh=nRdc)tKZs7!PzR|AEo1n(vLbW)&G0hCVCB@*KQ+k{!KE>`A+*ZIkje;$E#qf(=m#9pJO zzJ~uPf#a5%@a!#-oB{QvrI>NaEEEhqHbkdUf+9@?RM)Ee)E*DAHsF&&9yB=Y@MQlw z^a;>iZmc$!!Gcg&N)$@)l3I}WM6%s$?$|L~k#W~iyGKx6B<@S}+7Bmfn7 zJM{H1_~t#!Qm-JFQtdWhD0g7JCoK_HNi(UYWmh&g7Ad*Lu8G1j!gv#X61vVri}Wv2 zKK?TBHyeNV<1ZC|mNrsWy)ArO{B4Z)hnRIOZNQTGG5ZR?hn=^(@_&$R6tPJ)SALJ@ zLXh;bB|2b>n|kFXd5j}!>#R$E$W;X6`W z+GWXVDlL2upJ1QDzW4CiCz@Ewi#H++eIa<5V$b49)O4e4 zA)L+hhSPA4o-#*!4B+#L7NU>E46cs-1rQin@FOq%%mACtsVR}#H|Sx9AleU+4i zvCX)uYiXD2Sa{Z*xMpu2l zCmz}Y>Z;xRsS>6kYH%*YG_8sODoW*&m6>{z&m%;UoI!WTm(i>>i(EJg4I3`tNC{+X|D*$h_OP*;d$Bj(0Ps zfV`VIQ-lf2KEIbs=8D{vu=hGxeJNn|*rt4rsyD$)QNVp2>KKOImP5W3a*u9l+_IKy zE24yX95wwaqQTR-%o`Ep$34tD$*m{-@mL$yd@iD64#ZKzBzLMi5uV-H<|MZ^sMa<< zlptx1M=J{W}BECFaq$PBZXSFx7kI0ed_ zj7(^iyZSQ^bkliF0%BE4KNwpvYabA6N8;Q&gbTp=<)`Yklcve3nCv!~T=cJlOV><1Rdj_TtaxLDkR< z^?_rKKi`4|4%o`V?I^ctmQQ!;>kuDK@J@115hk5FAacV=-tl!BXbnJ*ob&SI8VrU> z-h{d}PbWWZ>!(eprP;>bN)NovWP7eLdDog=GBTnm(!<{a@F|H}m~d6TvgW83^MLrFkkD4U|~q%Hbz*L~%0$u>bN zJ}(Li&)yE*DGU08-9QQY=8TmU`#k`TH1eA!96)1TwO16Gi z@?4ahZ&~4TyQo>SF(%J8#w*4hi@B_5f>o=bFirx0Nh`ebf=`5Vk&{FEBYG3`s=zRX z+Gs4R788u26+L++r;}U4Enbz|jmp>)Aa~?d|Kid--fkC;X&33^Ps0^~ljeSg54 zp$rJzCivITR%EppRBGsHF@qLe8ElRjeLSWcbL6uNvrgK#FnkIIHNxZ@*xu5oV z9L37`%bto;w%EXxT9UoIYH?IRGbyU+adF`tXkEzI&dT4Cb>n1t-I!`#&#@yK3B2{+ z-dAZv`=`3bLhHtonwkp_I+B(9xJBQNe|`K7pr|xWH!u>pj$m7*apP01sk=dS2RjRX z@od|>KysunO<%H6TtB)3}>Wq z8E2$~{4m$%?=^*b7BH~w$N-#_rT6aK&gUY(`nJ}gno z>zj+xt1=VGtHvT>ZZ767_ycWz)@*i?bzvSnU1b)NyvBt#G3vD%%Is6Sav# z1~Q~1OT>rK3j`R!>l0tB(|S7;I?KSc+%QC8CV3X?VA*fxV*1D` zElW7GYt^oTeuX(u$p-I_((hW{-vmslIxeM$%*v&>uQNVVC6kpHSkX@zbpiOkn3K=c zgPVVOzdPly^e6LU!v{le+F~vcK8yx23o{8>lih2bh_`|8RyF|5Ug~S-d%(|Z3Q{ZE z?SZXNUB@B}Hj+W^gGnufh`npD6qR#L|2f78CIw zkZY~kQfpYVk)S~|(%r=I9<C`Cs^`)dB^LOQN<) ztc3&O7t+lx+QegS{xWo8=q`(i%(WDmCCP|K>Xq1)_iwW+aD%|ezmL!8K{|T!@WBz* z>s@>XxpXTCw$m)P8&;x7D2JcMSrmdNE)HJaNt_!w#o^HJFj^Wdxp>FtV-z&*}iUcfl$t`Vdo(NOO!_P5CH=x6ivo|g9D!kBbIjbjU=i%%E-I|>^ zn`BIda}VKow@u|Y?J#wP;T_WB=%=~~7BGTWR$!*D2VPnCGMgQHOwr4>kT~f^(Fyel z$`#*a3~NFh{7SnBe?CE!(WY?d zr{VqbHU&-IaOe@B!lDoprzsUaC&_5M2|(jnBHlk)E09=HwHObSCwuTzFoxhQ`HT3Y zkv{G#VJDAxK`xagdk~{bS?l0+R}bkU)7J8jNNgSQp6Xc71*r$49u@qH%UnrV#6JYO zJ2BWnDX86)m!i!X@OPNt1OFTfhyOx5<@o9B%z(~xq7wdIcgimv4|z55Je5gb)uhGS z6L{1>>$bJPTR%>Cr7{ZMT*m#l7#bp@hjx(G(p<5FHr)&b!8qwOG2XytD3FzV7T>%= z&|s8lETkUWC&2#&F-HwB%o%t)2saLC;m5|F!Y^L|0|2!@_y-3q+u)U34V}9~*rxNy z9>Pgw!Wee^4%x?KKPvlEiSIRn{hwxDK;~4GmJbx>y^;qqh!DC_tzzN zz+x04S0r!R8>5Lh{u>;>5XXOG)b)~^_uSULepot}mo0m4SpR__RyBebSy|m3=t1&~uYm1MqvW5xNze}P zAh^7UHz7iewZR_$kN63j}t6q-OmW)bMEVBKp&yZq9s?M>Ry5=mzB}rojdsfFIo<xZbRzQ(O5-a;lUYa zvOs-DMIFVe0!(KOeS9{&dv(aJhe|{`@>0p&JZI?yj-S(_SESQ4-pdz|VYM0aMHKvo zv$1}u7wcgw=40!yIE<~xQS}m8>GubeZ5GUEQb7~EkxaG%w%vFxw}<2e&FUdO24s^E zyJ z%5i!I!A`?hlQjVcn64I;iuJ|hv?V3pLV-mK*G z##ruVC>u4c^XW}g+6J-l&g~Up^FAmF9v;d-PPlnTc@-^~c9d0_cT$M3kn<(ry%n3k zkE-94*XAUuP7my5iM6^ z@kLnc`et~p+Q6j>hUD~?4WbX(KRNhyB=k3^sIB1APeJid{LM&@ug#Ve&*4Jcr%&9~DjJ$eq@4ziun#$x2Aa zQ(0>R>je00!3vS3r|0`?Xsc#YuB4Y|o2Wnr^hJBXJ+shXY^alJfP0@CaKjpQJ4vQQ z4`uYNFi_?yL~CXW_bpT85GJMR7LycD5u2p6f@&c5ngk7VJv^?KW^gLsz1M}KTecZ@XE9@Dm7nK1-C#I>um<@i@NjFnSb^yW zLKSGkxl&Rci8>p)^&E{{(*&irJt3xi@&8^dNM69DD9K6;*(Z7Ekp-|ayYYYZgZ#>p zvl69eK*hR}*LI{t1!|h0byV$0hPNlVJXxUA;U; za;13vgIy^~+DPsTSv(j;fGd#yn9PhoqQp*506KlIBOdHq@%9J@SK<(xN@X&A@o1m; z^*H8!k{3KvNR*VRiIQr%wjfbb+@Dxb?O+2D#z1G02h4#UyR(SRG^142baHGwISxnf zb&U7_NBI()`k|V+e6M^J%GW@3V3mW;TeaR=zmzC? zs~x3Jz~hG)C^&T3HL!H&;E6;=%tT)n5Ko=3G_x#5M1^u;wf}ZZIj|orUoZL0e6sxZ zcKDkM_~rd6^U1pY**4-0P~si0cBpz%f=o0U(1NY#NBn(Vk=m{idSO@h zmfx!RNzFS06DQt_{r(V{xpJ+nPx#JMu0x&3XsH<{E9XW2YQ9<0wSAOVZC{9}_6pf^ z&yC&N`s`Xs3eHs~A$QuU~1Li3fb{2fuv^$?@U)&vIKOF`8B34?FQI_~k zdN9h~V~LE6vyoNuSD~!45kCW2C6hUDGPkn}R(hDMkx6Whj5$XBu=vjK35N&I#Is@S zY~n99GRJiT;tsV~A=ltM1y5u4%M}XXU!m&IQf+RBjcck|1{4lUheKUsz%SzoO?#`= z;jLkVEQ?t;0486#XG9_AAs*jU_a{lp>B$92a_`glqoG7W!+J_Lb~ro^Tzx&^Psjpe zMfuRm&xk*bvPpI z*6#>imB>w|kedu59!o1JTW;?fqr+k6 zzX~0LmW_hh>_|E=4YO2V?Y4fKZCn3JTVIt1C^+(qp$5NDmnE06wCt@)I`1u57@1&J zpv~JI8%+DL-OTS4tzh?#w85skZEzm^kxy41l>4yag2F?Tu+f7BMdR}~qp*4S`aouk&fGsx1~%&cl5SAA6SUQJQwwqh!7ezJz-o zrMib?f6~|O<1a@IJc}9p;D7j&thh$n-IeX+F)QZ81!%9*JH%`BSpYhD@ECn88e|XM z#{n6q@*Ke*<*%T#rf=4*A>N|0+QfqLD(Bg<+P}3=Mb=Mw75qQeGlStp>cA@N75GWA zU`sjS19}-5la!g{Oww+`7&?K|9%Zw2$K;%Ktk@74g(bE{($54I(5msrLx(+f=0c3D zq|Yz3&xXh5K`8b;15A6KzZdV;yCu~0nSSEA$>27Kmn7o1$#!PSew*L8Hi$)1^4)XF zz{dW8?<{;cO4)~_R9?Me z*5vr2cbmaIDIfcGD(94lVKqr#TuWL?IYZ?wVq4&Suxh%2qlCSKxxj$ zDlHuP0KB@9QDCND*Fnj?mZca0fB`2SSJ_G)8#=)g`}sueM+;9><$Y%{6K`k>9}R!# z75<*RymXj0!wREqoDMy1J}-~wurVe?Mt0({DpK?NVV$xki5HPFeJn~tm^-xduwE)< zXJ0Posi{AfSl6GpHIibMt;1az55^POgQZP^&lI+kbCPh~7pSCjK5P#-H}iyn&Co5> zE)Q;CHQmMoZ6mjCHQAyro^a%IO%-%bQyGa?Qb)p}9bv?SwDerDT{H8qST#lZt67LER_D5ybFV5($hflhGNCW%&A;i_S z;G2oM)LKa}+EYv@0 zC9fR!ChRN`OQ%})EyV;#-DuOjGLMKKN|=k~DCimiV?bJusa%``{|YOY8twZ)`nc__ zs6$dz+m-f2-&&v|fkO!9fIX)K+tnQ64kN5b9bBYVG!^w9oXB8iR(c3KGuHKOV1_fN zL_yac2spCZzgHXLF%5@KNG;L_lo7UlVs46$w4@HqO4Fd4u}HB{cR&swxTF<9J6Pq%XIBtY8p!Rm6>a7(g z?B(`>tr3r=1iw5uJJ8l&VAiD5!t#n(kMU?9*58^bx}-EmnlF#1O(pz|kQybJ*O#xq zZpUb`K7BU*z}Fa${{7gT?~WZrJlQNCa|_3~YiAHE?m@C@9nYz^s(K3kjjbh3I0AoN zuB4iLM4T)c!PysiuHyxQ72W_nRDD<8GlZR`JaU%I&Y}|31Dc7n@#prlcCz-qzLhdY ztVZ%}Pp1N7BYl!G5pN7N^}Ki{90QB7RG~#C(mAXK-!>#T7#}@1J+I^2x;-J_U5VG` zy!boJ8U4TuL~<%n?;^^g711R+KNL&LQLGFN)U8#qw)Rz+)B ztAph9wXP@gmn6p?4z|@|9E?XyRfVUPo_@dQ|u->!N4)@gbsahOd3jqSZ$CHM%KLb*ur(9j*QJGo`BgEZ9d}4dYj)K})m89I zNEy112Uy)WSWej->miZ#aL6`Buu!DD55r~$K`<2AsyTI#RbTX7TCBWyf>$)HDoimP zv?cUfuu8vo-ds5ze{1Wd#q5QMP0t9Cwlg}Yj2Xb-jB8dkX~ANx2KM8cl-|57M$@!b zdBH$q+`X85%%vmnPFqst*wz&>vkZH$r~DZI}&82 zra1p89(QNCSa>1%l>Jn#*U(x;aLH+wTU+~(DbTmE+yS3M^HE!jKeNWlHSL8(BHjX~ zi12*c*Ax8k#Nbbcjw4!ET6khTHEWK)+|gUpSbG$2f&y&4<8-=#6{(IG!q>Z0xxR3Q zVQEU2jTr!|`9;OilQzwT*Vg|z=~xx+KxT*2at47Qk5(*ZE}$OHc;Py-evaE=738s= z>-KQyzwg|;TeWa&YtmMz1w4M8KW?Y>gQxV&AO?~ z9RWAkkrZ*;1MO0*%K$vVmcXBWPGwg3dsRGCSsuS~xFVCwb{KeYmE583V!`%ur2%3g z#NzGrQmbVirrGpp$QRC#tt}uE$Eb`YfowfrgZSpy zTl`B>S{r5Z7S8ALWZX%0AyGw0yVHy;@bilmJ;S`2tSxQhu#zEhxp2sQ=ltU9TiM=7 z&tQZ;tp57evyF)A!LPeyaSYyfvi7IU1jm9X0u+t1;Webdl3By0n}M|0nc^t$*)aE# z@;&G@UGe#gSb5Jn(K5n4AhQ@46}KUIrBSH(0QCJ&WGZqWWRd{NNB`^!Y;cBNY1S&i!?1kM}!99kc}pl^MTqwGMPE$TvwW1)|Q#4wrMMOTbcWqa(?_|Y;K5(MlMc=~C4SfV&68PV8 zu52wuZ!O*U17huhQ7DzG=4;#HfOcP^A2GmAu8-%Od_DAtHi+l$!0OY$1_1N%UW^h1 ze}_5a&I=jVZ)(Aa2S!kKtz@<|Vx0IXH?TGGbe|E@P{IcBl{+erx`{kPCUGraT-a!f z92Myc4j`Xa*@y>$V4juk%m7h^>ymWF*xVCfQ#y&QHxGO$Y4lpCubHLT>1_Sb0kfn_ zU2xDWX{Rr6v`e4p&5{QBYXbgP;s4K#X85rPa-EE~AL9R|s0qRGZ4gWET#=rzC_OHN zXA8=v(1$jDe!#dattP_#j(D```rZg??Gc%uE&Q=B5hw_% zo*)aexmUpY>>r!XJ$Yj-*UGH}E`btA8ziHLlRHXYU+SCg&5Y%Q{)yvH9Oeo&3MfXu4Ix;`&zM-55!s^MEEr2u!u@}CU=sA>G zGvj-kfsA}NWXqh)wDhP8Ua3zIqX<_8J6Uk+D0s^FY#YNt)p48m>4|ag z574p5MO1MEv8o?{6VE7Y$M}_0MjKOwl-^6yGyl9gZ?-hi89Sm5aXza!vK7aidkPll zAGzC$6Z~Y)Q?SRM;wG2f*YzU${p7NwvimAd8h-cf@Sa26)Kq%v|NIP`D0!N!a{)af zeuV2KVi8cL^Wu>a2J5moT=O4thXWi8O|&l zlkBKEe6N-Y?MD8W;`OoRh<%b3Sz+-B$!>fA{+)1WHQqInlQrR<4L~rIGFux#KhzPn zHlQE$GWvlqwUvv566Vl4!YDn3PXfa);rMxDaD3cuu;OTfOO_>$-}N8=qT?!lCSTRE z4r|BQI+mf+Pk*moLBJQ3}lU(leq6+Op&iwR_gCl#-i-~vJXO3WgBF{bzYDs%JweDT15PwVX_b~p7@wXa(CHPxcrx6YhCFUwl z!sj6=9$3JYi%wt-GX;Yq#A&PJXGyH($rf)OjxN5QK7uVM36u&!bz zq0=HLlPzx&lu2m$-)p_FZze*m6V_t=IArXMYn~op!OW9_x_Y-Z*{1Zl`C??g5}O6q ziH2A$BqQ>{!heR=!B^1YbMYOu*uz>2JE}eyq}Vq5@!D5lW7-NoG?a_U64B^c!2L6{ zDLfnR9_?9ifDWqYc4Ue6RUo1{@v>xhE!BhdG_$WvGoV(LNNQt(pUuqh)0t6$T%Tt% zi9BE|C=Z9?u>zkW5cJK7+SqI@wpf2;eO4^6<|UHaa-udKyce7Q&Au)WI(So!XYUz% zqVS)k^$$hP$>83CWx15=s3Lhr8Nd+ zkEk3?TM(6_zucK#^pHBZH?s!=a~!&s1sg#FnD`*M}l{ zQvVEng4v1^%$xx>=h%ySj=ikLK*dP{{FpBih5M$sTZV$yzla;znha|rdBa*E!SJc1c_mKU&|cI} zPkROEw%B>VxEs6MS4wG!gf4h!C{=5vgax<*=w`_0_Q^=x2ZV}Kibks8iBmu*H;{-# z1@0~vDq&uQ8u`q{z{i}Z4JW@U6+0>6H9SLN=dZ!o|0=ko4ofB@vGWP1Zeqdl1J|om ztp(ClD?JxiCkT5h>wRY+DvFxk7%1Y%8ws|f);M8gYs9};!a2Zn{?CwRY?45w5x${S z@Z8kz^(_XUpRWX-K=SL*9V$IqP_-VGGL5js5jCb~gJYfd@2-E)%yR8zucj1K2q{W_h#W{LG-uy$oLX!`uAqm^w*xkUK4uEpqxvuEl@R`;`*x| z;!l+^9%8GExA)i5O~CT3B(2k5HHrIpfToefGGou}?AK}U!<-o!1d$%36Q)3K00=nG zKSN(YnJ&7fv5+#pf;H|`VcZYf4`h>Ps?UTKnU7KO(kNwW-}}g7ePF!s`2q5@S?B;! zrdxXnSHeF-?~bls%mf(keRd^qy5Eo^fN%RUK;HF;wL0^<3R9yi~4tV!skg1|; z8iyYCn&^b(aXoXK4I~W~>S5gkv*I{-i4( z%~%yEf>HpK)q#>I_UBc`$UGSq#I%?C^PINtezW=iE{&UGw$J}=&wT%%rEybo1eFQ> zw?L8Cw0Q0n%1mr12mG|G`y+8H}|STmxmkhMaaCHw&J2&0s#Wz^iRoTNCRhGXfhNWdqQRKLOp~NM_&tFDome z8`SP>-vaOQphc_5i*mE*b$YGZ6V*VaWtiey%Ea_LDJ^8XOq>j)@iRcK#kVNGeQZ0~ z(=ZzCO*s`aSg2zM^VL*CIp#(ZWB-d}I9DSsADs^i;?V3VuX`&gWGB1>Up;bC(u_EB z2)LFXve$4Nl{VG=hQwPk-6^daQ-*s+s{!Z#_c@h&%8@ehi_sle1E{=j-=b_YUwU3T zV{8Xz8y=rq=a8lLs_J>E)3}n00Zbzrs@p4&)46w&n$tBXfY#DM!H{;(YK>{28W=Zx zDXhlxtoY>cKF-h;Z)%ZvRoE+)7d_8#sTIUBFJuJh|T>QE!FGfW*@hq?l>ln2DpwXs=V)xufs4&I~G zK{+KI&yHnTM4K;zH;3p}{y}{4&PxJmHNr6NCfBv(0MmEXlEIx9qlcqC4U*jw>tWI& zTnrZcrp-AoJ_1z4O-l-}PUI>5LYzH9XRxw*-)rJJDVz6J+$vLhSNUSVw;$D1CcXf~ z+!9XH^f~{MxPLgZbwnHjD(a@5;53#Sp(n5kI(X)UAj>HIe^r!r??8SSWur`W(hBFF zeX}YS@$@W3piTN4b?z1rWdbux)gAd}HB!cN?H1n>T5-w8M=6&8oz5_O(zJ->sVEA5 zuZQWJ;6pV<(NVN-aoi@x$(g@_=PZYYJ#8K(H&dpUBWH!;JbU4mpt#a zT%3n}NpS?+v92THMP%JA!O^9NFB}#x4Clx*SO{4LtH9%^Cq8 zrbJGZ8e>ZoWiHV&=-#WEqUEt};!F=W&mZ3tGjoSu z-NVjI_v>bs`k9&5;F_uwA#UapzxCn-d|O$SCj4lo!5`H#1xge{t_S4Lbo{co>VJh| zd`qp0xwrz~AE+{ab{Gnu3gKC4p+4`kOOkQULi?=G-o<@S$1n3Op&QTQ^I2%bwIcRI zG=8(?|L?0J{*zybGk`C`+_Zjq|3_u}!LJ(s8HwxV-^~Q;x$*DcRxPH23~*Ny*gJCm zc0wR9UwhIH{XPVvjO@%!zs1h3sD-@(-mIx`Am>4kj_jpdqtK*o?9^07pUU{J9({ zCo|bvpyf|vg!l>Ygc-`i;$z{J(7mQDlWsu$oLz<<%;%VWUa)R&BR(tv5u0CZ27iKL z&MNQ}8yqu&Mrsl0+lkgw;bdJSh95*%l*b+OLAA91IM=n3jn} z$O&;ni_q)q*mV$i=bILfA_k+zYWhv_(;;gY+2h4H@;m9Fyl7wfel=_lXukj#*(p7~ zdgK05wE8-F{R^){%e2K8+13VA!8uOOY*b9XOmMrWjeWi~OcKhC9J_j`5$jX(?YGc2 z31_G|CAc!y0mrEgjv zQkUh(5s8-1-p>CPx=6^Gr`W&|j51zz>?QjP<>IP4R^+h8X8aP|9abx4G!)qP6VxI3 zBYrkzMI(2;O^3OM&uIY1g;(xvk5!S9 zVfeM*m0q>HE42V`*=#wnE5&EV`BZRG)nVySZWA(z7gW6oloMDlmzDdq;1MTdo4Vm6 ztlezAWnJZi@7$27Lr;*pqWt>JlSJlYee&0#l0Z;kZ413_bGtqxa{3E+fcmrMl zdS}LhzC9l3D^z<;fEGu-rjG=Dm_!H}Mu!58m;GxU&kPiU4Q7k-b__TlXx3C-Xu z{z!=F-H-W(DlEi7zeU|RnGD%d91tFIv_vsv@PCNW!1Y5z*0Y zLQM$L3+#|wm!X0+9ub1jY3iZT#|OfrBjd6b)u8_8ZEM*sAr?FeB>Bj%enO~2j-|YE z`^jk7&q{2c%QEBR0-p|$f027V17E&46z6vVj}{LNM*(S?jBR}b>@=nS60jLmrzW`~ z7xPWzjE{teLmbA@_r5tE&cxQEdIWetQh0sgLE-H|1~_+$O>D-SFve|=cXF@~D7wFr zF)qr`{b$fKVCDA-J5VX03(QwaQ>l;#Y>Nv1P469vXCO~iDT5sa=2GY9K&U+O@QYwQ z-{mP^w*hi$k0=KplzBCD*g!CB^^m2>f$t6@Jn%K<14Gt#h^Znno3~H+kGJW~qe(ii zQX=ooTT>8Y-Psymk%?j7R9H!Rb6!Rxb3i~k+VH2CjamUuyHOf<^j@w-Vx?d;KHSGh{3Q^Hh*>d8tTwGqV z5z;uEC$EHtDM?;kJ2UP+cx;m@CInvWSMrv#nLAV4sE57@4(w51-ayUZ?ZSJ5r^KhN zwfXVBQ-~q3IT<^Nz3Npg>kz-fZ^^6T(IOPl`^S>I^msIbwpJjy5?ODqB$Px_M{uuEK(rd^IYHu*N1K6Bb?`6tMlmp|E_a zVd4i8j*GMr9$JXQsP#0i%RX!1n+0_rDm+$R5+@iN@?{qp(>qu~?b5L`JlJOYIHj%c zcDJlAE<4}T34LGh85St$)dP2%Hl-MHcAuaXDf*f=MUD|P!N{Ug5uN|tG#7k0GO&6W z_}D;Z?_N|=OU3ar<33?k-(KuX@El*s<{W>58B6W(*u%S_C2a8ItXqygU_+(*tAqBt zOaBSUK?s^nLUx#X{oj4Wl1PXI%&>DfLR4x<5!N~d@nGgwl*=lzDxQZl)nKsTH(>q z7R)i_kO>_(wLr!zuF~2fY@N%?Vbzoi58ORsE*${`6BpYFe<`CS3>D?*4D;FfZrE_Y z8gzQ>K>6>-Jgw;|dDxDn`QdhqMY)$X+L0BrUwC(r&}ql;u6R>$-USw%_))P*#p_%# zJXiI*7qyKaFM&ShqCCWZZDEWnOcRcl3ULFw-P&edixsllo;|VQ1>~E&343%>VUfnq7=n2uQw;-RQR0#BI-QY=bsssJ%qwrDqx*7Fc z)Y#NDYw8x4~N-ra)AgX)*NwP;&LV?n<8Ea)5*?U>K!1pZh58ARef75&an#qSP%Dt0;T zcm88b6LfA_PRs0$+Y7hMv&=hyx0w;!lV64w~c?sC25JslHz1wPqdPc@CDIpd_nZt zHi8p@>G%|V40G+Fs1}-=qXGrudCaNNE`w)uW)p7@L~ZGXH5Xvcqg7uK)p5C=ytOi0 zxlkG!;!M@l69cWL;>ExOSzxnlMTVv;f8LHqY@T_o`lC5FjGP6Y!YvPx zKfHVP557`IMkUpfFD)tBl;lZh&kL|vUbHFOgS%C6zA^{-DauMx0|r@aBj=@cIo8!J zFY*n`8B?rZ?QTNu$~_FHR9|KSo0;ftd(0@2!PsR2wi-5jXZ}Ba((}PE*70kvqdBi_ z{#wYX?C8LcA;ySUN`sNF0jl4E)@kY^eK5)Uz)`)4wQ9OKwp8fsec%{l{;#BXk&T6Q zoS?SXp}l1_Y>qzjj!$M%H!}Vm&_an_ld9~Ie+#_hz9DwaX#dD(IOfyeaLl0>)Ql`c ziJFkayJ!pRsBE78)AlXcUfav~)qF-} z6mUKV#6Q^BdP1egAuo&0off#&uWpF~pH9*R4o{_Sj&V2VcLYv2(Z7JEv`H8cot=7C zu`&uVkXh&_hgVQ72%X)GtqFlVLY6*e;hydAq(JgacM|ET4jH4Fx-S1)DQs&YN zVwVjbZ_|V~o`tNuYAY4GB!Ad%j+v3SxmWmY?*w>kN2wF=KU%HF|KaLr{Et^_@jpRL zQG{f*9RK6g6h(+qPdKhS059xb8^8O&Z;o*;ts8f(VfV`R3oLyv9Q<9lwx(S81{=9Q(N+NSEJ4Q#KUo9l@;=*9jm~J!ulD@@GqOh zk0Duq(aK`2tR)lWhzV|^wGhJ-N{x| z7-El=3BQ4kLh`T9Sz9q{0c!5WKH%LeR!>cBcRD^7{&RrxjjsZcv(cKA#39osij!x~ z^nxp?9@)^zS^jH4*Q6@5FVi{Z_G_r`^SSV*bQYHX+gS$hJ3HHNCX7z=ow>_8+4o3v zCi?}O!}w#7VPS+!4FgMKMP7Ls#^x5DbxVx6<(E*InJoSfd{+t6b3@I2gkQ6Squ&X< z%l~ven!hMZ=jdQkJ1y^rZ~o_u>?;lnY?vj;r~O#cLy0xz!eCOs5DVRmNxHBNBZ}hX zgb~v@wCj>9cC5?uGyoq<)?%Yd)|remUVD3JY*D{GSb^$N{O;s^(63UFb@edNbQ63) z!%t0BSI=SCOen$R_3Wf-CLbe|-Z8NL52NsAqYj1e#7Y08&$ zuW&GakcICn!56vD49H|uroKaWdZYJ{gYFV#D&VVyMFY4`b+pv$=JN*RMSMMIMf@Kq zJJPWW_6s-9MS2ySie5wvWnVOkU)Ue=TogN* zCGCykSBCs{!XXd`$>YeG)Z3xgp3?(0C+GKwpWtb|h+ufdTZ|6v_MNo=)dam5N3t*W zpiOlib=|&xs@qpJRawkd0)^&%c-s88SPn8Kv z#o7uPe?_J1EPy|T=4|za8ostPviHy8NdE?h4)wJ*l=LB!v9E+?8P^XSBLg1RTyX+? z4CGbWFEE3w+s@05C8I|89|!d9!yvgCO%#xAy2XoU!G5@>aQ0t)?0v_&qqM8j0$?Ym z-bI-_VdT3

0~{&I1kxcOWm|m?!8yO#Pp57r7odRp<5OB)@snH5J#nMtY_-CA+|f z;DF7@a=S{u3km}V;JxiqDNu7DkFUg&RDidiF{1W7YD81a@^6?yzp&=O)AMuRUN``z z?3&0tP<`sf3MuC|*$G`hJC89}qZZn`@Ww5Hg@u?&k>2>O_(KV}lvbAti{PP%$mi>$ zQ>6KUtgM3-jeKlH-O1g_`w<_J^ZUdv!B?B&ptiLK-f%*CuL3id$o8o%Eb_*_Gyr8C z$4>tM|B=Nz{YokI_TP%v>-P)p!Q&2dPqq1Y3EATLhHpH?Ci5}uOY+jp#~UIy*I(!; zmZ>_m6`2)?+QI^!%+@3J#YtGP4}l%0H@_uGXU?=!INpo<+017@hX;cAi$((xr#CLz zjmpmXFaKz_=jZ3&WMnbfsJw(+-7V08zpZEsje)mnkGMCxpdD5hW&n6N#J%we{BMPk zlwqT$QLs(?z`0HQ$hlv5st*hb+)u(SU(G$phUIGl!Z=dU;n&`$m;`StS+Go~S@s`Nw=Pfj!tqJ4Gb`y#pV`#~Q1w4s97A{Mm*w{AZow49c_*?Bbn-b4;u zG{zr$)M;XY+0w&i%pDx#r)zSZL*uG^c`B>uWRKIERs(vMMW^$TK zg|7xTVC-%v!98&Fx&axE{xA4xXe7{Voa%{q=RWD1Ecpr|V zOA1i*bPv=-vuM8r$A}@K^QjAIJLU@mCmj*#rII{{OuluNs`-#yk4UNAm56dP`hbkl z@q2i=FS{asBa=bVu_enPyPjd$a}`R=Z0Y0TksYoNIEywycSu)KTx9aBH$|mW>6=ke zKb!kD{qg1#5Ch%_70Jp753 zqGDcaPFv)7b3d)InWMgptk?9?3^@YvoU4ZDLYh|-fQ*SYkv@17RUl?yc1#XOt{s^x z&!M&mC$XS^Wu=;y{WX!c3*-^Ae;ho+3evfr2?v3p4yfP4*6E+&s*YXYdQ}7OHpFMU7|gso_<9@)6O(<$G4(@#ZKaHFnyvCO6V(@#*k-}j#RE!sqVm8#6Are8DfT+k(U$+ckG&`A{*tty z#9cz)I!4l6+Sb9^L*4slAz#Nl0~x*+*1y5P&vdB!WVtdE$y7E6GTatH+q06+0x6D2 zGm0UgV$*ll{X$zGa{0&2@Nm-JL%@ZEF~e*eJPVB5&7@lKqsUy4J{lTIL^`Kn>EERD zgTNun@^8jKJ}Yl-QLZNWtcP4SWqTlxvkg4S=B>iwK~Bmp*df%zi>6@(gX1@pLq zZ#d}!FU9Uk;wl>R>Vg{&C$p{_!Lh*Gj8Tvsp>0w3Y@Qoe$GW#y1ThnS#4u-R283OL z|0!NJ5XH*Vhl5WOoFF|+>5kSo&sog#tlzg&qnUSujq`2MG|#UCS5w(xG2R(3kB^$~ z%xtG?5PLXXi8XH*KeB!cz8IGK_E~0PhIb#@duChCrY_Z(&Lb7gDkCI7`qUJRK$5bt zo!{=roX-J`c=3_w3~1Nc(5_*JlQc+#Mw$m5ni%9h!vD{a$;;-vkN>%lDCtv))gf*E z2yglFBsLM5%QPQRZt4}sw>#*Hm;Oy(MS~3Y4|h7Xbt*R^&A6Gezb*jZV`FU zW2P`;#_}}tp%!3aF8`Wc8PSFHrNY8KwP#AfKU&$z@(KU)Sx{dpV!O(^!%R|1^&G+_ zd&KOMo=`@SuE$>ZBCojd{WDd8_qns+|4D?GR;Gg`pgWL%`oc)QUbNVXXA`3W?%Hso zHO5!z0Tu;yFnxwhL;#du)Q8e-|47PerK_AEu4VNC{x5vGf96^lFoaxYte4Fk?kh*H zMD3tfcmX@Wp#Yv(c}Enu(ata$AOQS~)zfiPCo4j>nv5a4i#45H+c=Brv#>Lh>>Jj~ zr#0D~v#yAV)|T16YX#8C>1yQ>&3plL%nSC&^6wB)Eh)fza*pSD^y$1y;;qLgJJ<=y zU8DV@!630cKjsRDI*XU!kK{hAh5pjuc&X$aG0N$6_(~XKeF?J8bL82t=3l>NYiI9~ zca{U+#2T5gKVBzUQt9cjM| zrmNHqwb13Atih9xS`Gfbzd#o^puTc4;xqJHFi2V^MNNkO(-%UH-XRq*^<{`|BI?b;&9&#v6&`nFrY$d{Vac%p{j-uV|z-BS7QlVjhao6T6eC@z-CBQQp zMm&e`m>N`tyR)Kc_TR1%Q>A)}d@`P9a;n2U`>ktaE0XL`IkqD+8&Au|07rOhGFQ(w zCOJBoZ-ZX|$3k}YH%{rR(cV2_FyBYCtjsV2e2>ow3jmQOS>r~b1XZ*NbTEb7J0M3koIq!OCtMqwVJE=@f6=v;JH;Qztw_Sh)R&7E2^{}6g& z6L0oEB+51FyDhd-^tP8fmh3JSdi!N99AC7X-n^%u-aHyLT;Ahm@xK(OI%QLf9dg&h z;y7ztC~D>|xWhx^N2Gb`DaOYlLXy2%%3yS1^( zE0J-FZ(cJtir|p)(YDQiV5K@ur5*OY>@P;)xW{D=IxrFMm z%GKAT);ySh?%Fc`7ySET;1vu1ZBQ1DZQv$0bzq{^?wfe>*t8VG4H$0Ie4xth#)daMx z?6_k$m~gBb)}%&$2swyfbTf?oW)w5RuRt|491ja;%Q8gA;p>a`D}jJQ?Ky_FC)p!7 zADKUis%Ajj*qJZ8%2?j=-mNt<2i#)yu`7pzpKQG<8ofk!nd`1%aVh<;CQdJ3^<0MbTp9IZdG|)n`%m!%ndRsc5 z(!O+eOrR0igQdGq3)$kN)fRqu`!-=!hyyNgT>N&#wkNJ;5UF$kyHp>Ks+#eOmu&Df zt#h;|tzQDGuwKRjbyF`(-DpO%(*;f_9Fr}#8Pab+TlzmS3g$}U{kq>kD72&s!k}dY zmO($M6F6WV8i0A&E4&Hz%zp-zq6M?#$`A{UZHI7D(qXa@S@gGlG8wxyVZX2h2=~Hn$@wGpQ?jev5sW)aK2?g#KZ$ z4P-uriD`sK6U?-7XixG+8-E@Q;_%Jy-yp=GUjtCX9D@E&(l;rO7~(p`4p>in#PjIE z6EM!deLQD zG`^o2Ixu4U_pphU(nY20a+AW|{VryoDS>t2 zoR!QCPW>5TtcyKQ2+xCo?hpDGg`xr0LXwOUSYMh(8Hcpoe+s9%NC_mCEj3NtVF` zYMe~Q3i!umkS}$()<)kGID^&9zI(=FK57AV=2GcQC7!_CUba>}<6^5UqwGrgS~q4# z4bH9Xufe?fD4t1;weo(-cU*!sE!G~vbsv<@*Z5F-R(ejkuN+S@2lZEHd+B*I@C*tZ z%S+dpjx$-T-H$V;_|p7Ih+}GSgbv%L^cV7nJY{Qj8F9YxetNI+c6zJ-{o2X6_6RSc zUt{))*#`PbGJGWtUx~gEyJrJ(P}P2Rj1m>>I}W}TirzLmSiOk%%e?}>$+)c-l^rYh~lkgOxE+Zp>y zuYdO9tFlQ8zd(Kwp6v+kIi{748qcPQD&(8XVqM||XW|7%V6$3{Kb$SE#g;uG7S&w> z_~r21<5W0SR@D^nabqGjO|>uSXGg~oNYqEG*IU9I@M-nb*VymZHvGF;W37+~d` zmzb6jWku$&Ha!&hYzNtT%&SBN#dhj@)E!~rAFV2Qw?h%>Zxj4ht^eny}D6+URt~E9I<Z@=qZ>3 zNbmf(4$|8ADj0H!O#?FkH1w#$O-fxO*Xa@8Mx;OQawe+g#$R5d(p^^Go#Q|0Mg6V2 zbNqX~O_n;hcq7a5-V)(? z;5z5>B|=?zJF4wPwu>PkY!)*;B}Gm7Bfpp@p#_f%9^l*Rgb(n49+*aMN3y>l@?(DHHNg+Aaif!C=OW}t>EJ*x}4 z$*i2E(lroYgeM&ty##5Y)}?wHJif;B%Oawr@l3V5%e9bw4zi z={#lKY(dTsW!*q?z;hGUn$U=t?SMuk+_eV(B{ZTr(F`=A8E8akh!%4gIAXT33~_eO zrD>wOrLNO9%U#j#3qlR@stF4ob(uUsTZDpMRDi-v39FzU&%|d1{)z9WY5uKH7RuZ> z6IoqyD+fKh3ptGstKvIJCrZb82SjrvYotE)X1}?TF(Fpg%`_%eu;z@wKl_0*Ffi~# zrSm`h{977h_}t4ZZYS^1ul6v~*&g zfiFyLeOYh~PWgtOyhUPaC<2ah5g#8I)k{ZZ^B)K&LMqglqqTg#Mabwie?#%m4DVIg zsAt3#9e?PKii*lfMim;&B0vQvb?5@`Ah&|rm$ueoyDktAO^(PmE$UG%0%t2BUdyoO zHW0qkam-R)>(&9Gc#YFuzEjtvR7r7)r99YYMdswK;OJg8@->!XcGL9O=b2pXL*5b% zrv&%<3s0sD&=jdTS`%(nf4fte4;mZ$SJ^bq<| zO~UFyLR)hIjf~AOqK~N!#*C4uY@vpKG7!cV$de}d zDRHW?d0x`jha3xf+^dmqtT%q05Qsv2ExG1Y=%ISEJTsB zys#C=z%utTnFU@QvH=(qRo1}qz^LyP)sxvw1F|^{^wqSHKBhLKevT4eseZfE&$4;V z-7P2ki{Q&GguKD|wr1d5mm}ADx+H7BVjoOlynB!gIR&YA=5u!R$axtAZgPGpRWB z8e%8d$6{W<)uIsdd|x;Xc2qf#r4xL*mc`38Guh1XU7h6T(S5`ph8I5BuXAe+7?*KM zAoh^s*Qc|VSsxQ_!TXlfk=wqYXWwd_8x{z>ZMDepB;Ss9vd(>Vg=_ZLmmc7K{5NEI zqLpW&PB|Mp#us^ZgO5RdqI!*uPZyVLQktT>XE2Wmm&3|#4V%3_?&xE}e};3`>s|Mt zUF7(>XCWQI=)PaJpK3;I5SEA&;kj3%2W%G!U(cGU9a&d4Mw+@_g=iZcXTh2th`%yI zfF%(2zB|YcP+y?uE(GKIA;;6g+5ukbF*$t9JnA*=!nM9=RDc}nHw@$_V>;wWpsaQM z(?ZEWlQ;^V-#YvsEBRnU-5j&2JVnwazyX`Cbb*P+UB@>k4oLeG9S#Q2AU`%VUQ7z-St5hLLr{p8J_=CeX) z-!9H`zK`0JYaH#UCfKN?dQ=8}P06ea6eC+xqBE{RJk7ayO$oB#!shixjE-#B#)bS~ z@YOKT?^tevkDtfP+9ZDy@4I4N4l)W#`x^a6rFWi=e9fnE&lixdrieA7m(iSH?>^() zFV3@4eF{8-fw|r4gibsrPoVlawZY2$OAL$vg1l@Y?<%K z(^mfBwBZ-zH*0}TV|16q6(?D|^8oyBxTf{Z(63Pw9@%oCi;0nf0o2 z_GRAhU6zb1uUX$wUM6WU5p$?%CA)0Xk;m(1hq)pMc zk;C#?h?&XTUyT}UgttRpftv$rPs;yrl7+dLUoZ3zG82=%)UGo8mm%7HX7kL=EvOuP zm&s-U{K0PzEwh17&O}<~z3W3fH{@R!>Thg@9-4ciP0lNQZim^U&y;!9nBm3(tMh@} zF8MNA941dO@O`YWMM%bW2fWC&$d1z*|0?XoZ2qnw^y)E_y(<{{h>3z2mb~yaCwVRi z$HflSsLspc2eTf*2uZZHI4(-pO2ON<2)FwgL+*KClz;MD|5aFlE9RbeuA?j>(q%8Q`Su{T&069SX>ZKl;32tTMXe{w%PYYB zDI@R6#N&b%I*~oF2j1QfCg(uf!i$e+)!}|8=019F^5C>Mz_ox`v9>$2i}_u(A!tlRhtz>&SLs_cw-;$@i*@Ah@fq^G>|{mLxXtIeW{ z)Ak%(6aCX+yM{c;DZUy0sH|jc_bdJ$tVP{KJ+9_pXF|IjY84II`Rl<+e1X3f*=C7o zl_V82{vLlcu1C+_BB+60i=x)TcB`MunuzPs*|N;>xRc#1%g}gHGYQLdm!duuZ+&rng8eX@%34`WqSr(Ht(FHksQ$=WI10S_2P zPof19s|mey-GF>j0wQQ^Y!vQF{xEoz!22B)3(P;{ER8nC|7UP#?g$b7lF_uGtu;P& zk_w}7DF2fBh`*1TX))yP&Pn*^CeaSC3Ad9A!(brhLlh`c-o+`H=NGGIs?|@HA zlWJ6$5wUy$%ZeYD{>BPFTWz1AU4`mWbY5OR>?F*YW0@DkBK>2+`F_)Lk+m@fJQq7U zqwazM$7S`O7axSBVqfq-Wo3@Mi`I6lw6I(rVOKeh2|^zO+zI7mHmjmLaW=e^bt0_O z|CW_`0^8{f?AITMo@PZG4Xu6M2VbFy_RzKjSatTkutkl&&KXt5sOr&Q1}Rc?z)x4n z{3)|)1me68BFp9ix!)$BNd-^j9zV^G8L zIjaRj z$zbqdsdp&wjV7W(n%)L0rNoF)GndWgV*>e79y}NLs2>@U%gZr7VU4KNotTN&Sbz%q z!AcAVHNp&BJJALAZ>%(fe)& zb70HZur?DOQ4^3p3*l*w;8J&B1Uupt(A608M@zJxm-9KVJjakJ`W`?oL}CrSC*EV# zpMaEru2;gkh6CFN%WGV=r*57F*4oRkx_^&492+XNneZB!H@K{FD(*)5H*+E~muBo~zUFNemGP(wZd?boPRZ(XXShy`POQAkIN zjj=6<7WxG|rW94MCP3bdX+j>W9qX*I8)MtbkqlZdEP{Q1>&A@R@@%|rP^Lozn zSi7pb1%910^y}F`X>AwZvTld>xbJb2KZX29{3xJl)ds}k?#8tc{m;49%K0fawG6y* z`^C3_pagPL7>&GEy4o_-gkjv2A))J*>*$H%9SyUuT_R1D?Sg)B1=@?>yk6J7T|9^W zV}uUn7<>?RFL-`|`Rar(o1Q+U0$xbTb1@inhqV3&fgZdU@}qZ!$wSY$9eTosGCGTN z6*Ev1A7J?+Mm_tJM5!5=h*3luOtPa{*bQ3<710pk7?L>=FS$Cf@;nQk;mHOzBNcYa zyL;$c4fko+zYMz%a)lxJa7yZpz~sWeGY>gX26%gPKgGFa=XpFIWs>(*?n3J~3ol{D z*eiZ+T;yp&wE&D%(rOp%6EZI_7fuY*FcJG+@zb7W;gt(g50@ug-Y0nh5U2N1`}`{? z!;_M6<@F@)nepF+`@0L{hrRYB?ht?dm zYM)>kB>QA^{gG~#DabFliR2S}w=`%~X~qezEZ1Yg@B35hM>Scf?ci~`R#)Dx#EcZ4 z{_4C>#b4KtYEVmSw9NVCs7|+5GqN$wJ<~H|{g|UFSR3ZX$AsokFZ!Q8Zp=~bdUK=3 z_Lxu~N^`%5sKpw@inU%jW?xOF!g~aHy%ClfXnmBJGWae&*Ll|83OoPf_9(wil-+C< zOFDYM9#jl=A&sBSDV}`?D0jLO6A){r^S7=eHm$=^dSdfut=jCO* zXmZLBf9S9hCh}hEK8%qZPio6P@lS{;TP~#Vsf`PI{MFwCZFisQof`7FEZMybIZL!e ze#p_i&R*K``~c?pC`7DaMQwFvKr{H+8#(_5qy0Vb1>f+W@C$Bypitgab1t#Ps_0fT z&A?z8>Sy;jm&9a!LYe$|jFBqDkOr4`L(L{Pj)0G)q~o~o%f9565%987F(kpG&ez99Er@ei%be|)}D+pVOmNa$JMCQVo`G-F2jtxzp_^N16Ia!u2Dec&)E zD1L5x$CKtxMb<`?H3=SV`fXOl_~5^YlFrXDACtKz93R!pfwf5P8tvYPygnRdFd;7w za?3#1DDY&tb39*)Cl689n42Hkegre0H7C_kE6GSg%}nFS7Sy|kZz{D}0ozsHV4SCJ)HXyn#x%w@#y2K3CN`31 z0lpAqLZ+S6xO97H&E65WcXTu9?W0;I1-2rROqd!Oz?lE|4ygxiHNe%1Zt&jG3@x{}@o?zfdn47?fK-S}*;fXP3CLx{>xjG}o z8?qrSH#m-TbHwG!72J&B=)0^dQK3G};xIe$As^#c)l&~bKJy{9i!9W8a1MPj)a?$i zp;~z8z_z0^BcfsnlnxZlPQg94A)Z10fm^{x#mG73QZ)k&3s`dA8aLo)%|tt8eBmJf7>Qxvye7Qy68IL@Sx(ys_H!09*+v#AhVAd ze??-bVR59!od7RK0S{KH{p*D12kE}q)>@Csy~gu2JfGy9C8l3RcaQ8w@IU)m^A2%` zbq8|9BTU`+RyGMQ?LfAx$%Ju^FSiOKS`7`L6wJ}sTI_fqbu)>Vh;-8T#mUYjjHs{r zp_e*I%V1GmQxSR#7^}07N3>JY4$T`2aDS@aI;3U2A+Kh=;n`~2%*k#(|c zw+aZaBR|>+4GcRKY$a%a>e25BmVPJS<%!3+d0~3~6R?`dR-2Am#qg^m(oM^XK+J&Q zr|tWoiRR(me%}YC)|KX-j`BuDTZtMoOB8A*)*AFG_#aU{ysgB%vROe@C!=gGL_S+! z1GJGpvb+trNCRf2g#+}vUHDzE%xLA`gTIq(1p~O;W?92Qac~Xl_i`+vYpA)?wt`Sz z$R=#C@Ck_a(=TVly17QU6Q=qjah+5t`wOePqKV;=P%KY=)#rvayhJpLJuF!Z$;V&@5@G_QBxO7cPk%dRcnB zkIT~gT+l-*JbM13B#nL`3mlP3RIhE=C!81{D)J)hOK%0mP-06< zXmWi!ER>hKqtr==hve}JlRr2IOf~PUod?Oe4LF?b;Dn0w)A{^c!kYdR_`l|%^&9(# zA@8?%`5LK*HzWUn&UXs&y%aV1!AkZjS*z4zT7*r5iSD<=6+mIAkCRVRbDZKqo~N6H z`@(8>q37h&YK+4a$Q@+d8`_?H4aZ773cP~2nqiS#hK#>A&>DDV*oqR@AI8oMXo#u+ z6FLIKJmqG1r-6gbc5PRVM|m&@m|vQs&Iq$G68?^vl00^-@n5JarSU6YB1~{(|KG9y zW>7hxI@soT$HR=nNGJZDeRQw)z%>e_A7pqG$3i}#y}5`in~AYV`3}Lsi2PXt6e6{5 zQt3Z~&q7KwsP&o$?inM$rW{@wlUu0k1-7i6sn=2z5cASo{TuJ%2ISxx#}_-i7vF6R zVFvJ|zZLdi9NRD=<3s;~1%7J`3waA})1u{sx}^N6y!ptVVrANFMC+@wVdcXwfOtI< zxK!iV{g~jD&;ZcFL$vl`_^wt6EgG12)(Y?avxxpPfpayGk{ak7@Vsl#H+QWoZr80Z z^mtIg$-;NpNLnXJNB+JBHNZ6OsJD9Em--Ej7h+aJrcfPnr!}ZaY~4#J>ORIP1AB6s zl~8x+ou>HL{}w!f>UVRkuVIW19TWGu!MaR%Jrw88Jd15sO&_;IZqjs*VH1u%D%|N! zINCB#j(cD2or`E$yY)!7T1L1d`|a|Y7sLhDgrjk$u|# zV$E{%^Yie%p?k?(cN`odgMSaU52&Phgrqhde+I>0WsOM^B4{1_1*hQ4r~24Kd=8n& z3f+hre~|p9d59A|hWzpxaJ>K-k2~1mFRfRS*SJ-PlDHxzh9>h;zZ~2PQZ%XlmwuYZ zPFUYTKmIjaCv=E1OT2F{de#OH?pB}N<6KAD(If0S$Lp9EoWP#ZnM(7tyJxz9o}r_` z{mz2##_;;ne*oWKE}lV&XJ8u%-6U)D-935@9gR^<`EPX9irvSAeZ5H@x~9qu>-_HC zxVw85f%|)xcob&oX{8nY!9^14?2vP&C-iqD-FTOhXoKe4-&<3ib z?zPjQpPxsbn;xS|V@~peR|8hXgefig3#B%Gr@d0jH3YT{+RV=wA z(j50aWzl5mHOT%)|vU|J{K4p|{<|EupI zpyCL_puC*3-VD5d5o-h6&!=~hFaM;0sUc45|&1!nXTGF0OweUgx^j|$gB8GI>DQ8^j&=W6m{)Hvx| z5>BZT?1ra=>QDrS4WEmlqgC2ht*#&KA?Y`XA4$;XoZJ~vcLhrTmuCWpbtoB$Sser^x=_+0H;TD*m75Ad48 zXFV!5!Mg_e!ukA=Twq*H7!yOjA{I|YbvJhc8Jy`j)~%GG*J;&_7T#THILN06PqFU`F4A7;l6JP)cksh)}es-LZl0 zeq`oZUlDIxUlkvLzO%;h|JR}nT68h)^)+nx>G<6bJ#|I)i}@xm*#Uj+=9O1eX_t>Y zy)+FR=fDYEefpRuZatfhSbw_SSG42Ox)+FBAcF9K^(SjUeYge%c!lCCG=Yp>qa>M_ z3scT<%=r&FX4fc|D!a{5@jE0vkFcFdd8#hr82klz^m6&~vVR8G_kLSR=^2ZQA9{Jk9`S;;A+ERwLJ!QFs>q+h^t3aj1{9#ujcmDTCEpg!Ka30;6&MGe}FD);Z&PA&{;xpn+?kzGc zf9-b-`SOdGyIBSL%vi|nv2;e{dV~U0TVpb3BX=klQZ|8i3nviSzL#t(C5|6QX#abx z-&U5FMYl5(ZHV%pgY7#Ual7YHpMW)&!*(}6KGd!ml@u#~pQF~jCZ{NY#2 zE0467t!r#IFQ+fZ8WSW>kXv~6G#!~DeFw^*x*#ljqlU8WwnK6mt53O5#X;$a0Y^sC zLcI@_ztdH|aIgpbIYwNe+Aa&6JS|J-@Lj9zO~Tf5mFvD~2ZQ3qWXzQpdQW2Zb=Y)h z=Ute6w+KDqz2Z(_ALZyFY))m_Z?Q(W{YZ7#zrJ04K1jJGt#baba1xbfM8aZ}LNXfL zBDp0CUP5jO<&?;M3fPGQ7!Sl6vQG&1zA08)4mq^hHq^n2*rF?haZ+x1B)0_EcE@fh zPcE@E6YR#g>MH8HXPuUcKMH4YwMt40}n9!@fqq$7j9rE1Bfb3(;1Hs0DUH+rpI*f?~WGERR zQGb?~`~OW|$}qY~=eXUs2ACfv)`0#=G5ZzXBS1e?_{#DBNyPJ*%yOUUIf_*)k184; z5xS)4s`8kEKpX8zJ<_73W5o`~&^9tda-UwF8g1KNO-yb9{ zH=PkR?Gf3c^QHljXOU16YlZ)U4Vg!n2IpXK&Oi)FoErKzl+zglDO2gml>C1y;O`;L zqYc&bGJ#MgpJ4YuMkQ^1c(=ZSdW$8{b6%>eC{?NVigTwa(_e7wy?OWX^#5*>3$V_&3mj#mGZ)-{3yh5hJ(+fx0*PtiVSMPxdFc; z1CQZo~T*CZ-zRhb;j(kdJ5QEf0bWax8II6KP9{xVoZLczbb)$ zN_Z(0Yf*b2HMX)3f1b6p5j8J9qO#_h}O93IpjgAt7d;ZWTR;ND2$@+ z@aOQRGPUkn0U#oVmnDDQU( zT3cRNjC+y}7^!2oSGr#=?lKFAF5Ii=8glhO1U9n+|Br)JMT`DtupJae!ix&M6M5Bg zBW(df#r6{X280pbW;!C)nQ|q6QZvt?{-K>{T&uVw+JPoTE6#)_qb}g* z@H{^oUT{02zq96fcS6r_EEElT)VzvgjJ_?=e)-MkWknVD&1YdbLn?3fN& zy`@do(&%_uly#6+ALngpH8^CiM~?e@unBxWbeyF#!g!{`}`%`hg(uHM(Tr+$brF;$KOVluUe{Asql{V7#!)?QX3u%S;>JD z_8>T_)BM8=Z|r;>b%KHWD`Ctxw@d-%G*zlEg*b_sSRxY5oO@R(>`&{GN=smmi05qX z3Hm~^y-e2MP&1FQE<-Ig#xQdhSQ8B&Vm-n)6sapm{UB1uklN8u^d-Kfg;G zMJo;n6(X%Y5A@@Uz^g~@G%k>ZZ^9xc@;60@iJ^{0E_mAZSV>OY@mLI{!dru=PAA5f z%KTcay)kHqwsuf>bx>|m__X&byA!zLWKCwEE3&;A+hsluJm#}()wogsS7LM6%t&vc zUSjK#)jEmC@-uM73W4&^7BHE2L9u)d}^KY+IM(+A+9Br|6sn|~T zJ^}LDV!HwikmBxLB3DxQ%*cBudG%dzBxbi<8h=*m$q5*9FA0YRS#v_K;>SJMIuk2QHZuVvpDtE-CR2bW3f$IF$Zf2Rvt2L;Q z5B|ZxS;VAO?tl8&sS9o_K?b~BL;c$4JH+3IdSRf1K=d^c2&*jdH)_h4W+wLd4)dq^ zanjvKdFT9ecajuCcdxpUpI>!jQ9eCITK{uWk9mH;3SJil?p%tvJ>B>A|902QzWWe; z?p7sUrt8Rh)wd(>(btDJeAvK0hh9-JVDZoumJdL))%5r%Z~r%Vs&9P-{$AC+z<-eE zlnomTuj09>WvEsDtsNSGgb7s7CF@FJ@mOZQ+ZOqE+v1k*=Y7LqsXjUE6nIs4w4M@k za~oUTt+EE)T&^)2_+0HgT_M>%qzgPEtPZhLH>*({M9WNS_YGlTsW0%8HB99s4dcvZ zrTLe#$*BS=jmj5=6wK5wLbs(}wP=8(M>c%M-(r-K)U5_<&p*yh!)TOH3MT3S2Zg6Y zN2*dQs3*QC-0IyU4zsn4y4Z?*fGf((VTeX>W6^$?otV7`1xH9W6bHasX^6%>V=!3< zV-qNPjB8HA9mw;HSO(UtAtk=vUohfEon+0VokQ`fX7`8kZ=D|PIYmvQW(U9y{bY|4%k=#QOX zO=ZT?Q7v`H@^5yftc~})Tvc30xG-w(7lo>Jl3aWA`crDmatDMOSmm;L=fP%oKqx=W zT)1_1q@;U9bSe5GODfX?a|a&tuol**0k*<^TLrG1ty2xW-l#F5!XUOo%42&xW<|X* z5iPoPD&6fR;rTPUrwTUi$|p&s^iKC26beJgT7V9Lu@7lHwDiQUA)|p!mgGU+&XY}O zZ&b9zS=^+!gKC$?6?H{!QXkFZi-j#=)g;9g%~6b4R&FX5)`!)1YtE5MT1>QwipI`HZ|7q-RZpU3fCyXO$?TselYaNj`zrVc zuo6=hC$vjWPKo+!Fq7Nv@q>}v_N`yj67O!wXYR20mN^(t{k`A&Rg>(uL-6u-;6HMD z;4js2){$z}^lHS?;_x`1l zEF0IS@2Rc=Vij6^PRZ~6I$Y;{={oN_HOQa(1MI@#imCvs_(ZyYyR@&}scB&{I&PnG zGGj9_Ht7wog{>uL;9+laEElE>fI|w~bYXoP{fFNN&Xk$9fr3N!Q-x|eET zv(%#bXi=^gSveTNj|k2_JI2P8l2!1s>rL{b#loY5iUUzoEd1Ys6%s$&!(PcpEi4=~ z*QM%^WyH(9e+yOuhZUakEC1huPYe`F@dC@#)z=sFoGh=p{-!v}w&MB=t!&nPT^!f| zMlFn3Z3fdwPXb0)QW$k$@S7N(iZ*{ycsyh+Va8hhg=w-(OV=LEq6Ka6iMAd@of-u{ z20n*BSo<(5lb)0wSlNe4H0<}+-xYJ?zJ;$e*EaP!y{q1j>O_iY{AU$Z%PmDgDD&Y8 zLYb#22m!$Ltv(y75s#zJn%fhyT!eXLUHIaskr)GQnc9VH#@`(z*WEq3sv=Mc|~r`g@= znNjF=ke*N8t|K8-$CyNOeZW^R8N@^c*Vboz0%&N}Bx+2=5@0NpXd7Va9yq z33^8vj_T

F_S10q;UrBui;YC1ZKV_t)z*ACs@G1&k=QRWuVX+l4P(AKRt^Thc+) zS|UrF@_6Ddm#<7x#&mvL)l$*G$Sz;4xTum}zE(k6=)>S?KqYd92kK7MU61odhUAv} zyN*<~Y(|aQXX#gwA?s=r)0~`N0Zb>OrmY742)3xYMfO$r5Dp5m&=qKwZq+f7VNx!) zi+@obsdBcqY=Ta>D#KF;eqhGb^30Jc)?b&;`mR2s_Fvt^W?yWTXIy3uH$AMc~=d}8IW zfKws!Y5kgZa2Q~wr5qLROLLW*p=>b5$Q{*UM!5`h!I7%u8jQy3Ngn#j7s<{Hu&VRG z!!cP4yi~LA1eTYgx}Rxfyf41Tx!}AQV^DkZ@wHE2$!fYVX+x7N5Yc#!vfLSxSxEZ@T+@YPzSF&64{Jz;%Re zj7dgFX@{0)1D_2XsTx^A5+~I&0{tx<+!vCK!yA(4$*4!X;{b4Kcq^>4M(V}113Cm^Sk$HiMIbr^5e$oChbUHqN)Vh0h|(d* zD%UJ1Sy-aMF(IPqAV`lgVT74+7Uy=0j6}p~#Sw;#GaZ)d%GUior#hf>@BQxY`{(2L z3te^U)TvXa&hno3ectCqN;YIR@(@k=1$u9zm_PXAl2!n18Xo`Y{!zV#rzxk<1W&mA z(;$;wbm;sFGS=gJM&~C*23SxQ+$v+O;)aEE-}oho!`O%i2FofwzA#B>Ui&H1XpUqd zS-A@1B#l>LmSYHq|HEu!l=~%l{`wOnbq#v|LO~~RXGcj&9j)7wA;cN)8Lpz%)q~>6 z5LicWbO<&$%>>H2dO&W3D2@u2u-Xn}ZtJ~JV{)0t{bH5oZ;{&gjb(T5qe z%z8*P{)%mf&ZzS!Y@d|Zuu6&mUWAUfI)0>k8p<n-O&++b4Ef3`!<*`BYMVh>HNd6QquVnD;D&(8L0Qc5M^GShnj8!G9nbnmuD5| za~bTFA?2p}&w(}aZA+zlA7-W;^wfQpS-6vy^6`&m-7k873OSX2vxDNaf!R0COny(| z!85~qMqiwLILr31xbB)f7U#djc{;A1 zo;(U?f5n+ezWXmY8in*O{3hb}{N!P{{&$=Wm+!tZS&8$1;9QHV!)&!S6>yPsr5ope zx%VYRG``bk#{1V%TlL*{SvfFCp8LQZlz%|na0;#I)w^BKrw{+qB*hl#`8Xfb+6WF40X_aSY{Eye_D&n5 zF(ffQ5R-7NKc3JPlp*(>rq76zpP`bUaCYbkD!J?#?#i{vK=41G9`j|66ic9kLdg>b ztwSY4whqczS_@=j@t7s$v~;3!Es*xBtMIj+cm2#&0|{(x&`Nf6%yp5mUni#F`#c%6 zEMlifSplzvUA_YBeQzVe105lBjeQvr3w5xJUwJ||BvG4;i3;$g@_6Q$D0?%o7i)p=&+B$9%H8oq0RvT+Ami=Q4$aRI~ka$QF+k zKDGcj3gZmBRg~7pSs$IB%r@U{%2}?Ba}v`LDQj##7>18X6USm+u^o}7kDV)@&m3#L z!3;klsm3zMr5al_|A=Ip8s|I+3{3uY3^2b!#b19QY6N1WSbsw$6}$M^;CqsF>LoR7 zxA%(R-62g!dj#!t;Tm5fsj9}n^MvksG1L0h@SKZ?pt-STMHNem7{BG8# zNmF?j?deK6B9R%pI%44Oy%0K9EB6>|Ud!EayB;OSIwp=e*`e_X=Euj4;>Un}06b!_ zt4!siz-)Fznx8P|x+?XE^uTjgzm5RkF!fJ!=H7_PKO+5PF=B5|Jt7q-&t782v*SqW zlM~-jjVM1reMK5CdQfY4o>3k1!lJMOq;?wELxA@cGPwfna5HV^l_4(FCV7HC0 z{PcXx-+6R@w*cPoDq)_ac;TSf-b?$>0!Sr?L=*lG1uT-nJl0690`qx`;{doGrbCkQ zt$hM9=?wg%^A3mwy)$4Lru+-Y)f9s5*lE;YwmAeo5v^&3yr(-Iw!h%_8>1vnCT=<8k& zf;)MH@ja=)P&Aufp-)@Ve+JKb4_Kc=Vp0D`^6@h`p5L!Gve=m_dXB(9kT?$jS4YoN zjEbIL45e%Um%fl2=h`j_KU4c?uCYdoV?M7iL#Bij_MX&Ym<4plC!spUiY3ZI^SsRcxV18Q7UsSJwe3+;bWce^GPkCf{stdBnGW80`hmB+@ zP^Pq$_r}$9*x;K0ebjT!I15X~r*h5yGhDJFIqD4w$4`Hyj+13h9m>4qSPF(7Dq}`K zr$r^);~`GVAzmn=L8`zHhHn=Nw1&Xg89`I%*&87)g62?6RC{w=3Pk^X9Ap14{mi`{ z@6cPz^>DINQk$hyA(b6yAcmr1~AO9zg%egdHJko!Um)>qU%#*V#3Lh35;?`8aF7 z-_9j*zd_kxPxl+-qeCKx*cIt~<~mw4iS|=pJ&*l0Hiek8A}m1r;w{9{h>ch&J_2v- zdUzVOZ8QT{o4GC%Y}Aw=f%+@_3jRCMY_>pIlACc>EiEL)$1SUgz@#a>F6l42U*9A~ zwU13xb%xKZMq>PZ$M5Oe>I#^I&z8!FKkDy8eRF9Uk>2xCN~{f-{aq@0J{z&FH7q@% zD_)BCOMHna6W6j#dt zVKz6?$ps%+xd-uss}R|8y1PoMHJQK^G=H5L@hsw~RtDBUJs;+LgV!6pK$NwVaXM{X zea|^=6a8&>hU2EJMeGN=8}U+5*Ac-y2iv-6 zzOs$oS1djeR33s(a~!o_|HMPa8~O3;U?ah|D1&wPW!-ed-q1U9^=bTJ)cZ4On=aiY zz~=K+;0&TdY%3#XAUsT;!ZUaH#w0iO%oV+qfe^j{KQrQ+RZ9DMt1KaKdv8NImD0~; zw&{1odA+X!54XilE&QdhJXeZ(VDP8GYXR?^^S1a3_8>2av*GFK6vx1NUI|W==8eyP zK#|lfLcL?PXz3?zCO3SZi1W0eb3Lw~m(J-{Lx)UrP~RSXwgG<59~)j1)sWi_*}3|Q zYc#I6#n-TpGGy1u$5mkIFt7Veni-c436Q=csa-Dq4n7d{OQwO#s~f8dQ13%uG7VqS z0DOf?)&mVbqX6&p0~=|)1ClijR-kdAwv7rt|AUN8Il?Aa;*0ZKuSzX(UhFQ?D00!b zU%U#x)HJ>?&^Q?33wzp7pO!^vR&=MYVi~zDKb-bNCkwBPl9-& zW>}S0uLJH5=O2kJSVyJPWHM!)(w&Ih44zwFyMgm?#&3l00^K3Bp4+^6hMVG>;{1A8 zFzATnWW19ZM-&%N88Rq;w#Gi1|258){6X;GGCg0BJ?o;tS+6oJ6Q3P$k;n@lV?L_r zKPSz^97zz(UT1V-XFs3n@^YB*&8r~&tp7~1(|+&-Mcx#b8KHSviapyh%T{T8**59D zoI{A8L~FB5ne-Wr()%JfN?Be9e;xRXqh%<<;gI+pFy1TS%TJm9R9!TcfnD?xQXlc& zWG5lgi38v20$A9#LEq!Ele9vQqJ;L>#DQ&KYQ7>gY^0;QVO^s9u5q_WX^i(ffyU(p zii}?^p6$INwA&j5x?bJMOMRDVyDfl}zoC>EBhlW=U|+b5Xv8^X5$5)k^<^>hmWkc{ zEXC5VOT)~!AN(Vfd-eq}i=y~?AJP%@JA4o03t|p9tR=98BoRs0%HvCQUW6>U9?|UK z;XYXjHe!=5im#AnL-zRvB7vk>Cd=qPBd=;iJctl{?$8U3Xc6^*h2IQbKQS}XTO2I z3%1Z%QO6OFOD;$1g;uP@ICR#7GjmB3N>cbs-~rTJdIf$&h>)gE^Pdd**0hO!{IBpY z!nG@<7l1*V4Qc5dW((SPKgHeWq;v2Of1IOFER&!3cn)PsJ%m`t^!G5vJpB#p04h4^ zx+X0Eb7Kh^i#e_ukxUR-%&_iT)6459s%aUpFGjw|RDh$maa0am)-v&}ehqwscUr+G zt zbRx}bF~d7cGy5ee;yvIg$ZGNVURcf{Nv!mMlVklZDaHCNZ0Ye$t&*wf_ZTN%!G8tq z2r1z~k5lqlGr*_>#_A7X&E5gm3uwkiS!&)X9uqRc=D7(}{ zR;*>>$UbgjzDF^!2oW%T>P={j$^2=T&NPdsD`EsznZx2Qz@o=kmUy_vY48?g*gEyY z*g-1V2+*(uF^uGzIk7>?2wCdB*?jrZ8Ek7plXWAxdavQje}evqnRuHKqS1MV?OSY zPUXX2NBGzcB%1|ukimaCb<|IGzPs$0{zdEBoqKn_V4avBvs0C-nyl>S<{ZQM)cj)| z4+6cy_~1ukuC#r3iQq0h@5fHZe;O$}sGJRy6#l>a2W}rKrOyO}m)6H@0MP~9gr0tWY8D7^{OA`n)xk8#?nbqO@k6B5x`YLbY4jt=P zv!gm*?eDpLW&1YdM4CmBnbkQFcnRX0$d`3Ur?vbKbvr12@&T30LUXCs2VAaIz~NgO z*B+OWn(C!Q_-ZWkSa1B{XCyV7#}xvekU>|9B3C_hW*S_hVW%pNe&4|Y2dtVf_d2oW zOHol*z1p55+J$m1<}i1NJ$OKj8eE9kFI7Fl|28P2XJH4Ecc*4b9Ad~+ptp2KL(vuJ&0N4-t`DOO2fUq8O- zG_bzg2I`9-M@`;=_-(MRYfKX?%fwztNc0}Gj^)aB%B7`vY8bCss&`!u?0^j=b0Nk5 z9KkLOTClYw{R!Z5LSwA{DrfypX4-6V^vYcw)wU5A>9@U}9SnqEdEDYLAe!Uz>w*CZ ztLKsIhMlv-!bJ_X_$~u-eV?uLE!zwK(+l*Tf8w6M4XR;TsFa>9qED)nHWV?w-*i0T zri^7rvRSb7J!_}>^*H`^K-u>l9#=~1ifG<{LAE`T zT`R2z4}K;7FFQ@|VNE&mdUQMRS2ukZI_GULOg~;Ll>v47L&+YjZ@AyM73tyMbrw2? z=pdo}LG@bP1EJbJ|ZcDDrnT{GyErZ zw2wk$bg*{dDa*td`59)JQ7Foi>1f3GqE8~3GodfO^Q>I?S-E(Y{3OW0KqBB-#gh5y zFVth9c}P|nWo<^4Y#s8-+Kext%~-BZfF`1j3?I^FoRYN&R_vlq{YaDHysOEeb^pGf zj8*mIGCQPcR(LTxVCU@v3WrH^m@vYJ<5*&7`jOm&Vq_npCP8oZd_Nr(usm34e$tn@ zdOzM?_Kz7@^J2a$4gKd2>r8wUG)}(*UWV$RwS-zVwwzcf<;@@_Jv=*}nhgH?8ny-~ znCe9E-(Sr6h3Pr58qD`Z))t2X)q`|i05aM`wI&350g4ErY0L~Rb3Kr)V1tRXJir)e zOdW3s4A2i@?)0)>Eln=~QdS&H;^PI_C zO6RP+)8DKvk<-6fX)et_&zL6rIQhy+YtON3BBhY@IAS-P@$W$Bu4Saam0uRH`^Y1*zT>8z*7(Aao{mRO`(|781Wu>Wz*2xVmfZhh~8Bzts_G#1Mq}O%!+hfbwWP96KDNCFWqO(0B-N8$=F+GCp$>y z6ht{LL7d~S-Ao4OHLnI+$7eY{HY3|>TK%bd;)Q+iAIWeTT*|aG?{Zi*Qon$=^t^8z zFNi0C67&G2D^q-T?$livfji^nJGHno-S8~#i<0kSzts3jSLa~G<>nE@hkq?d-1e0e zCF7qSf%@V-7D8(@A=mSet1yM}QeMmmmqwipT}o@oOHvj*M6)cH+(*}HT}Mks`k3ql zuTk(KMlgKqIIt~a>?FU)!HeH3ZG(3`;Yel_Jb-`=@qs6-g!Y%3fy@`ltu3<>^Xb_| znPHHwo|H$B0X~OD3cW04If+>Xj!Z75n%5qVI;cRDEJjA?2#^w%imt&^kZu%ROv|)U z3e!@tb+ENZ1^?IRm@M?a2t*Ce#J|MR^#9DvRBUFGUyK6|;@~wEIV^VckA`g{`Ncm% zawGMSd-_>e!9oGUK$=~Pqtm@a$3Wis8FVo>*VdwEXWEH@T5d+jmK*q;Tnko0CR;$U zw}-_lInKttPFiCUWA$q*3`l*ek4>}QR8&wc1Q0b2%!=z8fY-3W#tvJEqY)fXW?)dB zs`=uXtvrnz_fIF)Q4#-j=RU+w&P45A5GTuQ7GFCP{2EQ)#*cbPBsfxTIm@+v4LGm% z^usIE3GS<#)Qe2z$pr7y)9oL1M@G_XbRMpeo`VMw;$?Zvxb~E#VK!yT%ER0KrGJMs zozVLl1VvUG#cu~m*Cea>D!R!@;|^z zj(AbvN;qB*`O0luqc;H*0X`(rgYdE$ZosF`fW8jz-ZMf_^O?sj8GbKKPh zW?C9~JI-1O&%hOS(G}&RcTg{Q#2zV(vr?XicrPt=k82JXg(zPU%>$zBq0-(5x&(Mq zye09q^IRhf9dQAoKrFardltFH954aAAhv`i!uCklI>F>E-sRf8ag$rSX|+qcc^S$n zU^>K?;GaQ{WPI_04)L*HQJv6t-aB|>5(+_|je}VAY=sm*`eIYi&G0#?QQ(ay?n#ma5 z^(gEu4E!q^Hf{PZIn-Y$CPZWPP#7Owe^~q%kXB2d&qi-QEdCw71GLm-xR;hnM`2;m z3{3kz15K}$p3xPp9`7I58?MQtUZk!Yk1zGXGtaL&EdEs*XFRovmh^>0CKPxSz~xbY zQX4e!bD@dP$8SD*tY94Os@X^~?u9gSKUVr_NIR1KV;N1+wR~?Jyv!dh+wWR4nlVzW z7Ka_24qSTh8G&STE3jnn%^oGY&^D`^WfVSYpTc_BKTVdZY7re^SqB4MR2LA*;nq$> za@^3l+uK#ZQV>lw{4QrUjp6@*z2PvP z?mO={=njyKIi8imLh$7Rg$bRE$9QqFB8SxEo8akvl&ztWGB=AWdT|$a(NjIj##qy@ z=jc1<@=0Zsd!4De*L1k-vY}GqoQj+i(u}f~q#4eaq?yiT;@8rfI7i#*lnr}?^GW$R zdn$g23jKuujT^L)&p`8ZXU{`%VLC$RMkD4%I+M%Vz#Wl-`h=G6a_rd|A&}~Yjv5EB z%&>w-qqk{yazM3EJt6pkCzpAvB`dzmQ=a)d@6TA(HGfkPq}}t_zt>9R@ons$^i7O^ zGz0HwW}c==Tr;5Hi(UDGI&+DK$$Z4yj%c`~N2C6&WX(?Y6&NlDj`vdA$AcbXEHGgY zs$MFN>Q9}=K|8Wk+}B5Aie7mZte)!`v+DL6&z7!lg6|J_%^1#fYSdD(vQOC)#blYl z9Y>amn{k#06sWpqD$bt6*-S>=GmWrVb)M;a72dkrq&XG~UkWCs*|7}PJB=9l%!r*J)g%(W@>ot$B_H#HB)d+GAddA&NIG z$uG}+GqFWjBb?P=6O#2!OY5)~N|W0`*-+|G)tygz!@<^n)J>wkaj5GqOFE}BiD|eD zu7O?pmBOy1H}Ge2eAKPcd?S3+9l_dWvxrFQoV|1Qxj9+qAC^?U&!wlHy)_##?#}GT z*{|q21dmC>y8AbcM7+Kz(zH+zX6YUFR$;gPsQtQdUf*s1sfhi434^^n+t_U98n4(D zjph<%V`+)1vAIOuc%?)}fMYMOlHa=)=>28l!@<8u4?IF8lzh)J_+*nbn^$k%D~%?w zF4QunG(p|=x|j$Z3mE#m2PublW{#IK@>@Kor4++4$a7JMyKqdJZir}rKQ7s=kHlFn zc}O2sA5*KViLIXNe%v@epK8}S`fuJiCTxrVi2r%)RYu9?kXq=*C}gsn~!o)cAl zvP?kXd$0u=_&CVYtiXUlrVJj9|4?zafBP(V`_Jnq_^&{xOnH|f)fa%fEO9CDum+c6 zN?Mi(%X%KP3wftET^&X81-f%Q@2YeZx`!hM@bbiBL4&>JQi;ipnu@qosS|lKcDFs} zn;e$|Kf!Laxx_A94$Q+*slAL!PYV+G-RjZs3sUfVpj}#ZAr$y56gSa&<6Gw%;gIbN z(8X!|v*7PoD)z}7fmZ(|r$a!WCm6kxqoyqri=;N;On#-!>i?}%5Sr|l16pvQQZ4rx zXFC6euvF}kN`)vxvZFZPSMp_`Khy**9@yWU&B7^u{K})yXpQ#88%Vz<7TU|I`Z;I( zt%51b1bw$2vr<%4$N?shui0);;m(=T`D^gjpXrWJZ%rzI#{j8y>ZfB&YzM2}G=8OH zDY)sqb4a7TB<8%yaVEb+u$OTCY+Ul{N}J8gOr|w4m6Vnc-#z>l;rm1}`BLH)JDK>t zHyKf(#(PYtRfBDk*Dl<{e;If_#5At5zm7F*1!Gzr)mS$dJi++3jqRlf|BVi&_qXf9E7(e*?OLKBgihBZC-iX!#)Rb}eUt88k|RaNT0u5zj0UnQO2 zqTl#W>}rR!&c_@Y$wwdLCaP-{(ENdg2wyo_Qchw$s!8L#V|+0aBf7v72#ej)@V-|U z2^2EtVWFG0WJmd;3egYXtxscVE1+}#JjkTs3Zv?xGrJnCX))>=lOPS#K0ks)pvUhz zmPFta@*(Tr@?ikuH37O#_9!t&@zCGhtFiQ8h5HvYhefazPUo3Atao6khn^C9qowe7 z0NRYe8e|BbR-XVe`zXE3Bdy3r{7uq@d%bt#qDG%){h7c9N%`=Itx|&@D;iHr!76ER zF2&lmlT0b3Ycg4&5pamX zXMfx`V|DaVy~FJPLolg@@pnMS^Pu;bw1LE@s(7m}sV<@QP4Gi-n5Cw9Ul$TuR`X1{ zzB7?mx4kKD4bqi=6nJi<+w>A=NdopQk56em0?dr=cuLEtR@PK3jtcppdl}V|(poHL z!UIh)^`I^K;)3hj5j{?awaGd=rFE&eRZ@Vp6aLG&4I30bIWrrXQtt z8I5aFNuF2LSyf1?x(qPGMnG6|cM%(M*$c)Ua?kI3QF6bj49F+b+ zM*DJ)K^pasA3Wn$v_(&3Yd?cskTKG`%;4L$5XSEg6}g=TMcb7nR>Z5Vw6%2V`3^d7 z`kV%9$ILr5T)+#*ZYRC~oiz0Iwcx~htG5QN-zPKT+^STB+0tx_z%k2m+8irp_$89L zXp-;?;E0`wnNE4E=EQa0CEo58P zyH7$2SSG&P$3VYMQ47FNg?`=f7pa{2PuTtxa-1ONV+;CrNzY>cu6n1Yc5e%*t!bNv zwIBnmTO@zg#s9p9oD(K$|v zH<3Dmqg>WB&pS9v;vfqnPaJZb6#o+`CXP)F-<3)4di5lHzg0b1xQo_c#!%Xyk(N7@ zCYO$U=a9AmX{43|4-YNxEu?Jbw!>$G)}ol_;3IWXY#$)67J~=Oh>^@)p|Oyx{&^LQ zdD!jY8*AX*p?Zhlt*7B?KI|%rD*Dbplly^xYfhWu*5-%byZ!NF@tw?Ab}V~0=iX~N zwpm;`psb>8b7||8QH(K?S2o}s_MJrfkI$9^zsSI=pSBT@&b7t7vT@40C&B$5ZV`H| z7;SPAar59cBj+>?063R~~6o_}h>cd)p7SdSDzJ@`(Ff5SD} z7w~0h`t6EMwCzudT}W5fhp$A^@6m*Q($B$S7OvACdTf^48FhLGbxOj>FCd&z*+^^Q z#&udJdi-2JYvQ2U4%em*CDU?>kzd1{6pzT~^llAHYjIL+{2@hAbSzw6bw8qZphhSI zed%Y&@z78UaB{s{H_&!?5$WMN(^LlUUWj^V(e~l{mdPd4dNSC}(Yie`l%gj|IFIDt z|5|a&w+i3twslKQt;%!qHrW!@*#LA0qowhAh}>UQZ~vFRy04kW=|B%`sIa%~ZDGN! z8Sck2>r7R%7%N}hQ(-|wgV_EYjBHjO*?X@s?B14Uk?9Zj;7t{&qrlb>Zdtr3)BoeM zKEzRg{~>tuD1Y7$J(%rR&@qiS4fhFrSL~R=IZZ=3XDjQ`-u2Nh`Zej7Gxvs$+X`p z8y~{=3L(dxG50|)Yf{`Db6@qc$o<2ZyDp#qc+7qML(1JT_j&J+$J~d=5q_T^kGS6; z_1{Na4Qdf?b2?IAm&*;0I8Oc!ZzH7`S|s{(J)!Nrv3D3`0N|8gkuiaD=VBKW&Hq&* z)iYoP8s{fcHmpl0#i#q2v{4>6^c*f|!%vEj^*Q;SF6NQP*sf^~aOXq5 zqH*Pl9rSxrd-q9kG5C_{QL9AkC&7o|w1A5Wnw@6x+kWZ;agq}#Q>TMGY96dWUDtUh3B!6GVRbE#c$fu{co_9G$V{Gr)k2o}p!A4N*Mhy1Z7Ucj zrtzz>M`LXfZAM5#!+OoY$ez4MqM_R=zSEhyDCjStrXS~9sb>^9W2Ln>A!AH=+@8QrQf6*X!SSYmqU-eKyf#Vxxk|}i_Zi1G?GfGuaM3+uveqs zVUAGG?`6cPG{GsV%Tlp3Vt=atSa6(w>43sC4TxKvQ`=H3p2qme=IK#g zA7@$!skB(E#nDn=EaFMAxVKNy3hZu`6)peBz%+hX&m>mSazq?95OH)GuYerxaVwknAMr;&u)!^Ud-<5;2 z*Kr(Dea`gzmwtYX+fDT;xNN=a0`>qDgGYbW^R|lHfy|;gKI*k%e>hMc|4(F9*`>9I#sF;K@Y$!RwCIm@}T1G;Y!en=H_37~>`eZGBLJ9u)dbdi-JmfKodnc&XpE{EN zOT9XScj^=_|NY>d(!=NP2D`F!s7;KI?j)lBOKqC|E%%+eyov}t6s3o~)afxNqWBSo zl<|P1Yp{!V^=b`FPc(7$0+CP!?jkZJo2i1PDKL7I9VMV;uZ#nAgI+JQywq~BsaA3;9C-@h<_Y&p>cY>)$eePv&{TY#)TtY;*~ z<;Xs(`=B(E5coZMhIA@ua|5;9>rh9X#LO_eVkN{oan;&HkD*+j1P=}$k(lJ+J)y~c zpO(#K3tKSf5+JTg=ZehHgcOv`ZO#To26W2qf_ z;ySKhxl_~Q1BXA zq8wNQ6`B*Fz_ifWr{i3lP`pNime$CYaRt7@gpg8r)g2>StjC9x;OS^gWOA7tVp2}D zN;wAb!c1i+Jmn$dpdExv0=srd0gE$19}ESOLK6k1>St~adekMJNc4|TKoQc=o{FPT z&|+b#9svIC7(Cbscu+!t+rcz5JlVG3ow)sAX4K?V;(wKE1$t{J@Lh1DP$AFi1IULw zwHNL5`CohK)z5tt|CV+(7>zXRzoof@TBLz2X6RlHD8sir z%s3Y~|ALjI^W3#j#DG5!{x0HADi6(RIKhD3WT74&Zoc^P1F&BLX;J>BZD%KXpHIhgK&0I8 zTG0N|0`1{p=#_Oq9h0=>koXeOH-8!=6Bc_yS&KYjPlLK3aP*L~DrXn?;w9$(Q05qK zIrwF#2_t=#D`KFHX5fjWj?nf+^ewo4C29n8ne(qlM5yq4tbBRmOZrzO=1l3F>zBF7 zbVPjn=~$m$iYuCi8CBDr&(^?#7YghQee7b4N+9-P;T6=a>sj&O9NTqAKV{CoZPSHtMaJz%9(mOnV>Z#?@BH$Hq#~QO zn*|1Ao6UHs5G|4TC1p}r1QdiG*x67(2<>#`qg4Z!qJ7^cZAFXT@U#88*`E!~HhHIY zJoQA%JIx{2_m}BWSPqYSK+*G*=3z;*;$cZK6P&hH%5F{@Ld-p-pHp+@E#w31JDP|- zb%2?=^-Xq5MNOGK=Q8DOgAbw=-&?|ruYnCQ6gWbC zd4RHb!-?pl^UyZXxLRRxSiegNHpG*?Q3fVM`-Qs8wZ^X717#{AJalAQ{d=9OR*iAxuK@~{Bfc5@l_#2?xc|;Myy+s$YG7K_X0x2@ z?9DTBuI5!_QlTe*%|%tg1r653P@r_sYV@t5M?W2$Z8SVdkCqM=80}B`d0*Sg%EI-9ExB_{c^7RaO zNNs~&m3lWL&4NhD_}ykn@P%uXgeOwXdnk|qK2Rp-yH)f~`eelvB|KLcA8%LL>Gj_Y zG84d;jalKN!B8LtNC62eZurkKM+18nT@z-8!ZBPzfj0-$g`73toln%j%7p@51KcxA z4!0_7zd+1Ta^o~x9$DUC(|T>?h4|HYo#lJVKN{+HKOkzuxl~>&a{W4~0KJkKLRCeU zb7h6)`IM)Sa6(dfl6!f1q?;+^u!{T%eS&JLhw&ERHLFmABZ$(YIX+8>0P+WG$Uu$| zHBQZ|`Z*Q)i!W-*do~)CmGvI;QC#Ug1f%afG9=7`?#AN*iS~o{xCRTB_l8Vu1Bd}vuO*7 z!`MK?k0IfydAt_$?=tL>LxJ}O%iwtwFGUz0>f?HTkC-DpD>M>^y_hod zwmfe|H-4*6=m|~z=2JS0(eFKbv%=3P5cgG{3l0IF5ii@8fK&wX{3$Nee*fl?ezkfs zY~^|I1g-C9?&t8uSYf{{`qOX=;I8i9ar7OR;*0L@FP84Htg*M)k3aJPR=JtD>qW#5 z{`Y&f$@kFqp!dAczXbPm+tW&DAE7oX#rSxt>(jhtjhjDQ;;I&0PmI&_agw_G^Pdkx zL=S>-_!v+~TOe=D?0*dWaZ?u~4(v?rXIpgo>k%>Wo!=+^u3M?>xf-@ZQOQ8Ux;NqP zqacrk0_pvnuwqTTpH*l)v!7AUduR&%GFoT{HR!WIr$Tnzig60xUHX0ciD1CHgpoym z?bONZ8D-8K!9y3B`JlIsw<2G#@9fiskUEyHsbiEEto(a;cLF}@GC&0AMLIx$3BFA$;NqAuIh55UFqW{QwG|9d`j2LBHD|f(_!Z`Mz$~s zGxnL&K8*LbA)6A^(0y8ue#6-*QXad4xp_F-V&d$TcANd|-BfBFrxq-#V_E4T>2?pv z_^F2oG)e(erSgU4#y9$yM(q7-NnILB-ijCvOg#tdp7s)HL^KlB#I^6%U}jH7my z&k7C>@c1J(4|7k~Y~XJ!um)cW|Gt08g0e$_3PdGmEoM6z3l<097(;RRV80o^hOMp=EI`OnoS@Y7i`%2KMM)DcTBuN}xlmZmyLxQ}g^%@4b!YI5fxh86_%T>q z^KnLJl+}YQFVAU{neodc1)0Wcrdaf$z?Z#-tn*&l)-AnfpN@3Z0WX-dffz{R`VBwS z7g99jgd^x9bgr&zABC@SuZKyWaWT?8+@0%V-Lda*XoKIQ=Gh+Zz&~7?MpHSdweX5Y zRedr>w7Q>bY$ykM1U#>bMzx$a*!MkpR?mv-E40?@&^9F^3M(_oL z3{_*dYgsu9A9yB%^{^QlFXuA}l#7Rze_7UKUshfOzDb%2la2k06jjZoau%bFnXIDz zI}_tOVMj5>qtpd*sqIcOz770KdPd+Qi>c*vxAT|$=yH{Ro|2gm;n7UcdI}~)dLk%? zkl*-X&N-BEgv^n>lb=&zPc%H%lfqUdx#*L1ay_`3{P}FoZ*N*76tyUg8!nt* z(MS}Bm9<~d4zWT26Se7|#1 zgd7P#EuWE6)`znFWRcl^!gj&?Q=X*O@@%69bqeWE^@Q&4@G9!r2Cfb}ytsAh`)`-O z`v{+RPuZj`x7NJ-D4)4G2`x;^)o^Be=H^R?eMQdiwelm)hy*VOwe6ds<@UIi?6K>a#qYJj>ksDO*QULxGF|2AZxc%s{gwCtq+J z@qXmFcAlg^j@`%j6mWVg+S7O!dg}es2dI0jXDikl5)tVu0xz+)hsxJ;`*oP}v-xNr z)vk8U>A6I)CUkW^Z2RgG-KYJ@%hc0#(z6Y9ImB&O3;;yMp$_ z_bRB21h47}+Eb5J5O5G4t;hgV6uI$>ih}xRq`pzn28<}Vaj0T?OGLdQL(|Ec3V(K|L(Bq9>! z7b%H%`*UIqaN9%uc|7u6mGiBtz}ssL{M6P^;3ja)mcj)?sSG^95yd!<_z0(9C9%Wxl;sl#2DP+rbz zrgj?2%R_lFW<_ndBzo7={oCgo%NdN9$m-z&l^9grySV#~E_V#CWr2)}lQc7UQ6V zhUd$5^_UU3*xH!JJvP0J(zf~!JEOp>NMpI^_}Kd44c+Kbe)LGladR~HOK zBa+HPU>YK4w#}~OpWw&%w2jFU^KPX}Q?0HE2L2daaJ_-k)T;-Ee@j0`?b<@_9^l6CqL1J>f8va>FA?gtd zyo@?b9IC^gf^VY^OnHR968DYq(dVmcK9LM(f`L8q^VPsT8qWN;8hHP=8a%;AH|iRg z8J+s*+UR;Fd&{lDcXbW%jS2Ozbi_wCEW#`j_wF!A6l~_O+AX(EyhD-ou^vrN2b(YJ zl`8yB%w6n7r;(GGlm^?ai^TB5I(EN2gV6aSKD@tK@K!tKtZM8?@P&?m8I$;5msgKN zP7R+3sWKQy2*O4U-9#{;gFc%vYB5F@Lwij8FFUpJSkm4dOInO2&ZtL@*~sy{hmN5< zvlccR?M>3nMVu=pSq{$v*zLzQO&jW;Ot^nKX_9q^;k?jf1 zbj!XF`p)HujLX$Nk3N}ZQP--wcXChiNBHFqRqbS-x^6wyuyJ5tMf!5bqe2eW0JBF` z??t~$@nw~d@EySXrKty|qX8bW_)^V?F+72g?;t@pXtj}{@_(MEWjF$FLI8lo272}>@wa)i@3YL>|tYeUu)5XZ+t6>*7K6uSV8ZWt+hA+!6OYv2sMlmx#1vWd{=fEyT zgI&yg>|%m}g&}69-j!KS3^|Zv*{P)||MX(U!ZTv%Gb$}7UILDnsfx$$l$E8mdMPZe zy&~b;x60C5Q7BL+<+&O89DXy1{s&YCW=gAIOQDg4*oGhw=s)f&%67|XT6UPTjHFM3 zd^^EIr9lTg;<%%1YcP;AXfd*NQDf0d205OsTPg$tV+OfKML!rv8es8&Tva8pe44AW zJd~;PP|ueb9}8(#>tPJI4&BoO6779gp)0r}9nvRL{o(K31bP`7nRcOzP1mAjgMkYJ zD&bCq5J*8o(q=I5`vG>6?U@M|Iic{lVnRB!yU+!xBBJ6E`z2ZdFQy)oA`bsgQRsZ( zeU9G4_B^DBninCTTNOGF@bk|E1D)7`Yvw(Go)Qe~mc2OWo;_t~&rNv-=su`=eFS7d zs=o^b`g(yfGI7v@P%S?EuHE;XVB07IfnroVShpbMV>kK?Y(z}G3Hgiq?mPWI<#_aN zj)c&C^6r|JelPHiKQ4VfVtV>#Z3jZLiXV0;3i!Z1qbU;p+5+~^OT>bH^+f8= zln#HUCE~1p8WSVUOYJvo%M$T)KMOP`hbwi6Xv4Lb?V-T--WZ>COep_APfsdW1 zhE`bzr2G=mI$&_eAWmNfuKsiYkuc}c=S)S64C-yEnYToogqDs1Vvr$J&qsgrPS?RE z76qHw7qD53$1i>FME;}p5s29fUO7Zt9K&A>d=s38odLD(jR69gN)!t{>^obGK6o=M z5$9qDpJJMhx3+-+Wfni{==3)7+7Xe#T>hZ<^BzWyTnNuhW>%|H+&n=2JB}Gh#{KZ` zpuQY4JTzYSBfv;9{PdPb#Du=8Rle?knZ@bAx2M)-~!eKF9f?PTmO#F8B-fJe(t#wq>_>>WFq^iei=McgxB zqoW&pf5grZb^|Sm$bj&k_;>@2KJnXP>TyP;>?=-#qeZ+Zaj*e3fvIU#u*>(#@y`*% zrbZYsoyo|&$ifF^10u9mh|mNZDcYFEVfq-Cv}wWtIXz?f-?ZZ6kMl{U#=J6z(3&s9Q7mUx}*+V&o`h>+OwjjFU)>SfZ3TX#V zgqf|iIXl|DlCCY2yJ0LuWj2}>Pd>l+0cxAzS(p_f7QhW*k%C>G)~dRNOJV#^op=%B}M z4E_*fUY&o{N$>f3XR}zg3Zr`)w+}+_-+--^<59({n`B!1vaMIEUAO*Y`UY z@;T2IV+CCt47b%)_(x%M%{>TtZ493eq(>Aq`wOu*+OrXCD4BCTk(i4L>ECKkErmOA%i3np21NK`bO;1g`_T!5@o@?Rk97&ZLSX z;_M(@W2wLXI*h35{wN;@bYb|doMP$VkKc&uuAW6)HyIscqR)6%jCQXFud9l$zBZOb z@eh?ZxRT-Tz-GpH+BU9nrQ<8c4i+E+nFZ3q-;1v}fGW*yb{s)mG-B8cA5<1Sxf%$) z<>hUzIQh%7-J>Hr{SPd~RV10x&vFt?kwKPJ%dvf`5 z#PBSXpVx(6zFv6Uajh6J2}M7i160U~`9h?STwds^MXp$s{adUk@trCIF@!DX)QS%M zuvvE^|2YMJ))DD)fO~>}Zz6QbMyqMD$U+l=biOOF8>Q3VS0Qg} zfNzM!@!``ne>B+c_mroMdc$TpuPtXXEM9%)l+GkxZz{yvsqk=_qv55P23eVy6Y!_@ z{Yjs?k;$o&%+{=YC;n%^lYHw^%#YKpKcsWMu@*)4V#Lx7OIgDpWv%s(#sBo2^7rca z-Q@|R+H5iBBQfq{y!wo^PQ6KQ-dd(W#OAYQ3d>?K@xR>-8&S_#PG`cNkzXuE;5y#x z#8}G`@r6N6xLng%+&M6q1q{KPR3{L+gJxum<%lmtpHEl5mk=`)wKy1!op3ewdNGGR zi0pRTP4!jk+b=)69`~+-l`szyCiT4u`$fMg#+{<)h>jvg!{3bR7yg{nW^dc|=NWAk z@_eLyTbKuLNCiCm4XES$gG+H%fTNDV0`yW9zEJ(3-rc;h5~Hzs-CF<8Im}`a=Jij> zoL8mm*ZQ|`;~>p8uUGWMk!?~;`!;EK)nc(`P!0USHfcna0@}~U4sa8-CuxDvGMl&3 zSwiXAd(FvO;l;)^Qr-My{)ecaN5nPMLnlJrGoLG%(pF*R6_UE@+e8{wfT=nn{vx<; zjTO;;odfIFBy9u}L+5-RF$;O<-RYbSE9xCT@NUd)Td-G(;+?|0H4WmE10@(^)bctb zWOp^M0c#RVb^>Nx?=C`8u?1$dM|b@8Xusiz=i1dqKq)-v4n2;%HAKI|g~vL-}& z8RO)XCV^s4%f<2dQe`sZ8Z`KHoVdCI*&osfYYP4?@c)HvLS2FJAL1&wjlggYPqN7R z5%5W6YBdKN;A^061m6dCC#re{TK&cVGcnGKRUGnbS0EBQ67xEtyd33<{Y~})*Xr`t z6w|uJ@X!A-YeEvCjBRrKJjZZ1*OS69zM9_II_2%UvJt5N^K$*K^}{FMlz|o6V*GSS z*2fA1J2ydF0+o(Asm!`xeEBrB!IaJAc15}jnMyCUZdnB#{=#iuw=7s@cRhj(;H;S_4(8P}0$ZgKxGKdy77>=zi|!JKDk7xF2Ul-@{IJtm9KX^C~er zQKA7QHaQekK8Lc(E)f6z{{OcUU;1B5q$TC_D^WL!ylR(*J9q5Qa&)%MRX176akwz9V z_uzjLHU6b`YqGjudDYp`Y-ek=jZBpWGfgafJf2M?`-vY>iOkJ*`UXEPZ3i?V|8sfP zbw zPz_e$4I%D1uRRw2$8>GQo)@?(vz=O-{j*}qw+Y+Z=Lpd}tR%Iim|e`f_Db<($0*}R zwS&(T6g4fl>x!e&2Bg6G@y{9g@9b-^BdD8O;BI#0&u%Wc;`kVRW>-pRzZypFXfn3J zd;SWd$7ZiZJY%-)(t@I_fIh;UgwhmSr)SFIVo zn1%?Tt%jp68N9{!h@RT%x9EJ2R@#_PH;x|fW4bn_jP<>18*`b3PZ(3H>Q@^lV>MdS z$2M$9R`n}0kaA-o&@a?w!=`yvc za}8h@xmk;+JUHjW^WoKj*0iyG7q~~ObP+WN!G1CBfRk6&5R;}l6YPHn+O=h$xmF6t zq{$X#y{0i$P(hQO)*gv|W2xFJO@Z}cs_qlX+8&FP0>oH*xP1hUR#Y**R9>}@m}+=+ zjm@WQoK*f+&t(SM0$Hn42=7RSLo^2ObXSf`|7t>O;%jCHUr41Oo#sn{OB~$A!4U%^M>yUN_16K!xLX!f7qt!%;q(n zM|pL%s^M5-O|q&c)un2r{r8aVWEahu>QUFnSL<3oksfGjmY+h)EOMtc;7N`1c(#VC z)ifw!GkG)^;Y)8sYCU%4s6jZjG6*}mIkSNn;>rlDVac*)m$vD__VI5gV8_+ouIBe$ z(qIq4-C1_pIdQEcc>0)cBw4CV~)?<$##wbV}np(&~y_!btQKmMJHxwccXsw}8 ziHP89xulxdhKL$adE!6Abt5G z5J{utcTsmGk+zFT@;8&Sz`9>y=G7h)xSMl|6c~n-O+UirMZ?;H}J8rXH6;6v_{rO z)iw!;yEWH}br0<<*NSvjpiX=6r#rE;J!&jddm1|{wpQ6j?c&y;26$%r6{_1$OHVng zc~w;-zC~G+x>}aHykun;RXlw& zp01If?re&XpC03h9D1Vq?h_;N#HPDXG&hj3aW%AlqYs%5ruf3o*9<-1C_g{4Ekb^N zT$}P$m0XK+!D4q@qp9J0{i0-ZL!&;fb_P%D^jAc?O}Ja9gU}XIuVoI_NdtV(sDybM zUIJ;*5?_{%I5Q3{7C(?wuvtauIA})y_J0U_7q}*_ynTEolN$+_AZWuy4T)7CRs+~- zwcSF15v98*&|NRxHWh6L(H3~-`bu{jyi5jyq7{7lA@1@=Fka;YInQkv@X6tn4BGdu; z5noCEN0+R)!r~sidsOR~T~rTi^KTLsCs`Zsaa&<^;Cg;tr9gE1OFa``WF|!WxC1E1 z@Q`Q<**c=@^{p}WRzbj381d7zcQef|*#C)^4UZCLs@MDZHUtCZGAKBkAcb8Mk{ z;=W{+8M8IelS;+vkhY_;8j%Edb9aHS3%U+EYxK{^t9oCuXe7qpQt@$|Ws}c}md{dH zNA)P+Z54^VMJZw&bU!7}{j{<4YaZ$aD|(+(b)~BExNd8Qsmj@5I9V)s>WKYF=QW%hCCn2H{%i*EP>}w^ zpS{(jxsNa<;5J>B{0{Z77EwI6Z6PI(r8_4Rgb3qZ%Oc0qOLa3%~78gdNpj!J6;wh+lWk zJ*uY5onG}Gy!0BRD$^gJhjmJxNsZ(MlOEIKs=8RU)2{DX-jP(@3#JFkBY$oaZ^M4w zChvA^*r(g@%r^NMe|SQArrS@F1gSs#v_RLH_T$>p(fwC+BpDS1&<5j+zWwo>uREe&jev{MHzhL|O3U?B=09~s;veeGa;F_Y+;?tljV z#9-~SDSQn4t79fjt!1Xltco^S_q8GXH(aM*LQ_=-d5;BqK?O8PXkY6T??hiA_^lUZ zzbTX+{|sds-Q9tULmvP~y4KVkI76rfhYc34(rL-9WGsV1yR>M`mqs?rY28s7fKJxP zr0}&EgMYY1*QkB}CCsg&R7GZ~xEHlk_@ZQev$Zx{m$)N@sU&Oc`3UdNMdcv4t<5dv zti(ofria8u&?_aM)Crj;?U7#g4vyEQf5$zH=zUgaea%wuP^pEa!$Ae z@4sDj;otJYC9)$WematO`#GsZMSlc4s^%f_T{$msgb||nLLmZk8PL3P=VCT{Vq`We zJD0k}lsX2p**>=+6|-3?X0uexW~o2-#`#=8W-Ik3u4B@Ryt*nT{Xtx1Na1|Ng14?f zlYhQJdeR|AA%D1I!hOJ8a zHOvWB4Ut_2a2cHCW}GtC+I3xjG_rmT+n2bYTAKrGNd^{f_~p|_zr|^_0ShRKe^3y3 z4bT$r1&Sh~t$tT3HV=Uhus?yN<5*~B%)cw==^4HmU`!FP-$OE+{ZoufEx(2T8*ELE zjbN4uDfxf7*Hjt7z^$KdCe1jQyqt%+quj#25YL?tm?nPfD0zJRD25YZ_u2{J|Tz;AB02( zzoCBwG^oKMPnqCO&gR2)pfhS5O(EQ z?|p9TI%~(@+_zgG-Z!p8VW~s=>U?`8wJEEn1WJ+!cxAhjjp)ncgEOEdV9mb~{m>ag zlm9H%jV&f?goo>%g?EwQRpL!3@FwE19?*)CBt(pS$3Y^IOo<&>9jeniELfdJxf5We zxgRBIPnH0s3^t3BNWR1|ns0lrbYI3{uLfG*(^DzT}@EUH3zMa;ZLKKlpL$7{70wxRKUL z9BG|Iv_+RB*^)X6g=SbX6Wt#P5r}^LmE1O3pwAaiEW~OKnU2fF=-yIZDmLDtc4L@0 zcxfw}w!?cHI6HHi#POlzlgq9qf&(LJ%b~j>`JV}DFG(H?gipk*0R{XvQ~6KC6$6I5 z;0x`s-KF*-`bS8DlosdDj^W?~icxrj80jyUqvadZ_?Gfe;M0)KH`g6bL2PLQJP0yd zfMjq5Qo%aJt71ON0#98u*T`8EJG6wCl1(0|%EE`l?(fmIREQgm`#{UYVlVZdoecJL zz`p`=uo;#oLw1w6|6Qi@Zq&WJ4e{&C%9 z78cZ9?TJMUMOd$kx_4$`zCvuQ?3vRf{_0%=qJ62|<_J5ab(R`D7kl%ORZQc0lL}TQ z%xj?*=!@bz853!FC}J-ewj51CvS7+KI%3_~H)A!0H;YlH*0w#Eb@CbnsfAA35vM$Gx(3h>%l5_OSKiOGtDyVOrjzN`6L;KE&NWh z|KF%xkm^@xi>_)5imn<9=#Io&S(VjW)vPJ#EV$t;U{Vr+B2g-K3=s3}mE=9rH$eJs zt2AJoTY=y4xwLb_sOm<$qW3CQ^(g`jv`968R^YaqpZVE%~l@UdI}z z<+VVqyvzJqU`Vz%Cs^4Yg$+F%y?p$UER(Vg7Uw9;q0rNUGiPoo@RP{qJQn9+hV+pY zgc&J|BDcd{S?92KqG%%OVdRx{p%bH0zSI4<(}!{iqknWKh8cfk+W&H|$=}!M|GwAR z|MOmRajzY62~j_~7xjLvjCSB3B8*xSA@7^$`>?dyq;OwYV&V^p+u@gD%IMu@fy7Ls zF0)&AS{&JuTs|?KpHlA$&`X2m(n8vRHdC+O^mF|Si-dZ!uJ>I>RyyMH( zI!ydiVhk`Wz6{JBi1S(3THJkGi1~A!_y`b!=?Qb;->87y#R^U$g_oZFm$yCx%DMG$ zb9K^T$}`DzW6cfXw}T$+D-0RE+k3S~&{{U$WuM%6bxGfn6n=+zayZ*f{)H;<)#c%{ zfDkIT=GT}tDH`6t!GEN7+aYP3k9#g`e>rXZWgYw{>cUo-39!O!E59d6G=^<3`Yr#r z6=pav8(8*!SfWmE-LzG)?X)p+qB6m0wAZPFimYcKIYn$?8aLK8C#DL2FgCYy^#|Yq z4vSd*71&$^LD4uIxHzoFNLc^BmheBXr>n!)fvpwS1&#n!jCXGRudP$JO|E{f1D4O| zezE|2k+nG6*?L6#$fGVjVK`7Q9JY!4_v@bhx9i9TLf0u_2cc`jHW0f0 z3HV|7<+z_fuBx1ws08|7q%#%%ojWjtXdJJJzq)0D74Tw!13tz%-<_PfPiy% zJYs_xOWU$6h2nfFzf0^LTw0iwor{t2!Sz!)Tg6$3jLAWdIvYBK9X$D-*i3dAKTXaU1NJK|;xx#o##I5nad0)gZDX@+%J=cDL#a&4OnBG? z0zV7NrGgc;ZCO93K@OX;TYPMoVk({%UkR?}et6b7Lx+_qhZe^Tb8xaS7 zgMILaO3D6}+ah~(rEExsrcaCdmWrvjOh7G$)h3J|+%kYqFb}ftip-bn zjNk7(3=f}d|F_Ppb+q%i0(rkw{3kp+vi)B=vy8n@mbeqk?e3(th&l21IOkm5m_{X> z^(k$J)PH&Z?z;?s!a~1RPxn4!bLA^>=lT31yus&hQB=rFPRm*<`4n~?$#GbPlMEIh zljaeQb|tu7(L3NHns>ocqp;?9cS&ypv+;g!*2*N!%ya2N3v^Z|OpW$wU7R(uM{l)t z6KjF)64lZ*WRs)m%=`&);!tha%SwkGNmd4S6sdw9{`C|6ABAAIu$YbUnW=oGI12Zp zd~Ft;(VREY?+q>dQNAKr;j`4>VPwxhH+CCk@TJjM9o^@pz3^!=^XdN3&_dr2EqzxP z)qH}t$RDjEy|ON-8BD`2Q+IR5s>{a1(o)l$yi`7-UlH-N7W}yxfIG=$MG|PP`SvYfCh|7 zCv1ObE=TxRU}nLwy-L(d(Y|B+;MY{A^*6qJ^CFJ)II_K!{tY*^rTepQ!WJ;;NMyMR zv(1W3a6p5{y9JWAWnCP6hF%kgft61(6>&$Uz=z>g>6-8d9Pg=4;a?Z;km%V@Ai_y^ zf!@}v4$H~}jS?(*RO{Ep^Mlk<8M2fiWvBaf^85yS8(%U$$r|PmZQz+}TWXue}bVVjGSG{_m<*DRRY3@+>ZBukfubLM*9)%SK)(&{w zCUq2DU913~ijPth(6A?JReg0@c*kT|B($^_dnDod_gV||jEjB#q zhFh9(r>_0H_A`vYS9o@33D);B(4+6;>wVUm>)25lG9G>&*rs`}-ptOx6h6{&w(ds67o|JjSoCeYu)y8m?ue?K8PY#<~`x zPYxr7*mRgmFu3B-bG{s+C;P7rbbcC;Obb|CWjZ58n(&?dhFEi}4a}Zd@_ez^&R%dp zzu8jFp(Y<}P|hk_9d3U$JkTui6V60yJqQV8AI8APz+Pj_iiVN8WRpZ4?Y&&xoUiv< z%3b+d@2I^P-E1*mA`%8J<9~UBqoS+^_9OS_ffn!@`062vrF>-T`O0kvUui4guzZTm9U#v@?9_=-+rl{W7Tca$a znu__BH3rM&HKsKMC?z(?`xJ5+T9l!*#NvvQ@tidoQ5c**I$EJP0$vR*=H2)WKfagM z7u&2%d1Z|@)v6;?9sKFb=iJSxE0r?f?23@n!45c+D$ z3GojDCSdn3R26h?f{m2!ei=CYWoua1LARxbou#wJ%5_j{)jEUxFOmUPA!^I{l+eLp z7Flx!T*+N-ukB9de@y)M`JJ9=6WhwbJQFUuJ{}Sd`h1Ke%7U`~xpsbjO6+gqG*h<;(SERL4CG8~n36!2<{ZxeK1lY<4kyLu+Z!S91Db=Jz3x+Gl% ztOt1*eeg+u9GE{Bz8A2dVBSLs7NO{BozYrp5eS=s&Mm9kEOE}Z%F9*64o-|P^qcf) zR6@-6btu7|)#wd$XEsZN9$|5O9x&mq>i)TMDss_FI)l5Vxi)L%ZmG~#fxi#h=#B+` zleP^^9Guf4SXaSsMpv<_tgda<<*L3_x9>H{GYb-#A;uzb@SbNq<4|LxuBZJ}yWQB; z9+e*G38ix0kH>YjN2d4puxXsP7RRdez8=oJ!_ImC+#gaOvVY}aGrQU&(rNxVfA6ubHqm@2X!({^vrA|74qXT9u$_#>$9806oxWq|_N8uR#b1}-l@wWb zIWb;{2LoYgMVupkaP#$&GJV}f=O@d#GCKQoU70(tBC6u9qz7?kseIsLWDMn_&Ho@T8;9 z>p!{B%~vlAM8BS=3_s^zbR-TNhKLy-V$&7y`A-9 zjR(HT+wj-*pL7ZAOcywFbsdWwt_|2FfxV97Hw*FbjW-HT<1<_0GoQC}9u{~oVlS+D z@M<<3*&rnHDxXsL%J}M*_^b&X#CH}zE)di3$rkGDJE6%U42zH2xpmuq^s9bgv~8RH z+(@oR`fB<@w?~S<^TJZt5$<#?h3~#;@sp>J!uc+&XkI}_rzF$euv9Xz#Y_apF4(=; z-BE}CSbfW#Epq13b99r~hTn<}(%sO&#m-?5{zjY@V)t^RPPKEM-u8_$*1EyX4?0Em zZuWt1y?45I2XEfI(oQ~RVA09YyRqBvupk0toZmQ<-40twX9sND640fT;K7JIHI7fK zFqD5+UR-`&()v=s2Vb*hVeY4WEX&>;T=h46Z%yn<8kI9f{c^7etFvF5iz`N8F^x!(zfM0%p$q^ae-NvDm6gZ&qXb2eW!=H+*L&L=fg}{iKZEEeingB~s{Hi=aDb%ohae|F zI|psopWekxnM3S{MK_*Z#gtFNo_R;G=*AnXif;V#ag#H(e3!Tdzn@vS-$*e?@tBxjhMg2{DnTdu4owS?D049jXY`c{fOz#JZS&2mpIfSfvu;*`WDGB zDHF`a;$NYer&JXm=d(2 z&;>`ztxq+k-4f&UNXa=1U^^i01@L8;kM+mgqFut`=Qr9*z2xDb^kzf1F$Vs54|-Zw zFxC>!7b{jLy6i>0JJF&^ZgV-<4D1E?m1hgOCzXHa4kdO==k9sR|Dj@!{b=VMU_*Wx z-{bkW2coh6kFHyf710AwqIUx)_8eoa}r}c)A{vMN@qIX zD~@2UwK23}@8K)sQ{Nzy3>D zH47m75btn{9PdH<$WUM(`GyLnA;or0;W4*1V6#)Hb)c5I+cVzJQnN32m`1f1c za*2Noz3!kgmFOq6_N%?j1kQJdy9IJh3-qz{>?j?K1hKG#*bFJ|L;+p|Df6FaeeFQZ zO{!+idRU>}=?n#4K5<*8zSX_e9)sTd)$~|sVW_2M1M|lQ*^xLd#{C?)H>3w?~S3aFE?YWCsI>gk7>?*vuG$2e70^NaIX2FHnw1(waC;GWytR)NDXq;zglHbaQLo~MIr!&5z{9$2l z{`uY{>S@EG(L zYF^nRK;NpwY%^-8wSN@YGRHxy@ik=X1pfqPJk0B<%vU4-v+#Wn^Dy%SvyM53<4sH* z^E{L|dzcrP70fE;56ph1oq30OkNJT4g!v3wRmSC7`abND$r;Tn^zt|3+6Y$0}yAyC*jRH1LJkAL};4Xz_P&G0(LmC$}l$(ss+8hMwFodD{7d9 zQwg0TolzD_g?)D?BC>CvK|5-?;|x>n?Nr-`--Pq$+ur+zX~yv+#(EAB>&cksYtfs2 z<%7qgb;U)>sYSnBCSTdRvQ573MfAK2%NEON%`0D#)9{qbio@j(IBa`H(l$yC)9jJE z7TcctU+z_G`^iXtiEZ6TzRvpT_jM_;O_B2#uUt7&=Avcee1D&satU=qo228JHxDKI z^izS|W9o*@KfXtw&NjsMP(F5Vi1B}QC=z=xa5CX<9HaI@ex*Gb6ZVuRJggb;cX~XY z)`_oXhXQ{_D^KtMZF>Sm?z-&bykAz-x-BdAYNF1i2|J}?X3O%ei94nFhMe53_M{%# zNn4iAIB8kYq=`RgMa&+X(!Bg~8TDn%JI5|pkUoyk*xZPlxLjsgVHvriUV77XNUE`= zyMc;uvu2GGzZu_|S@vtGnfs7Vd9Ypf;23gm&b6mjH`-t5%(+&%hH@)sS01S!FxeEs zg5*0qU6P<+%s`q`ZCp^{o&x<)UM`sT%HD>KFv7hJ@^(CI2zd;&1(~MwZ@nRK1XZ4_ z$7;B+eQvT1YsN%Ry_8~lsQm~qlT7exadl!|D1JyvF)%5b^cOoHYR7MTsdQ&HGhuu6 z)0pk9WXHo!t@C){IkH8mKDQ{lBzqBJ^h`DhiFpij%%Ym)K%6m*x-XLVfjl@@+ z4sXEwz`@!e-46~{YBi1Z#m>d;h=?{9L$kzKUZ{S%gW{tT7Cz?QR$bDeugP_zU2tcz zh0J4>{zq=j=ul2GP40ugBt>vioFI#j7JI`adJaftA$Yyq#;DdJmm&^{u};pPw+vCS zri=wEOji{OEx%}K8ow4COq(Rzyw||S%vb_P*hVEE(L9>hy~J5zzei-67LjSi;%fu! zU0e^f)_t&Pj=f9enQ&KvC;6^%-peb&SB%k~+)XoWN2uF{IhDkh9AN`>#2!Ks{(RAj-?3r=w0E=?#Ji{o|9> z5ot*Ii=k;kf6lMP6UXj4pkm7RtC)&}B!B}YF)!mI9r>gjQ819B@Wv~X+(`nH zMX}ShcuQnqdeufN-~F~+tU)0#-1n`d)=EWd4G$8Iy^z_oFwL#6NkY$jkbO_|O4OgO z!Apg%dfA@q+17EjocLb_#h(`>pr_=O?S^Eg1S779R*!(5`yhA}f&Yd5WC6?iKLJ*? ze6`6`emmlCr?^qt1)a%dSjA`@yiXDc`h6Yx{n`$$rUHH6l#y67wZInRstQX>8hvgTTG`~Y%}wB_e{h}WZ4JPBK%&dlQYptyFR zNqQ*D0y$?6+UcOUW*~g83K{XlZn}nfF4sm{L#ks{sFpu~Cz-&qt&I7Y_`5;1PhVb= z&v}W#I!-O-g|J<{V3h}#F8 zvQ=e|vus6$`>;I{b8|hAAbJs3T#r7L4P3=C+PgeE9x?ZXETNI@2@Vf&U^CW-!Ah;g z_X1B3YLc5@3O&U)gFvVN(v>OZTQ8MIm@W!$0sp30e2Yyf;C1|O#PT4`cZFzYWy(QOiI`yg zHV{XI>lWB(oqHu6cy4W&xv8~Umh8sfa1;DSl+#U9cf!lm2Coy7fM=Zj8!>odr!>c8 zchfm!1G&>i>HEb8PMU}#H;#UV0yEyF79r0VH{zwh4k;xU#_&HC4u}f}t}j1sC-(X4 zOJ?xr1HIr$&cRN0oPVBly*#S}UT$L@0*l$cCS;>gcjqodL_)sC4u&vIF*l5Yt$abI zyG!s02cYrCIVz8X=A7$Zy^p~j%7oawi-CQTMW6`u1?A@h7jC7FCXk?WGHJW5H~;;pF|J*P;F}w`G3XcQtHol za}npLFJsr?FB!;|M=|iMFmiH$6ch@mhO*(+@j!^`w|gMZMx3dr<(IG(i=oPp`4RY} zorWJ}-kP^CuHu02q&{^5_u;(gN2j02S729=2h@Iehp!54f7X6qC;gtmD>F=KK5t3; z!sLj~osiHrNv4rcicNk}xu??(t_v{?DGWU!_{@AEtoXguxig;LpH=b zPoIE!6?VBE!546c4E>D00|+EChM~ShJUzf+g=ZT}#CHeS=8blf7rD0M@Pl~6N$Ws5 zY84ZlftH+um1sYB)nx0XlXMcl62}caYtQ!YkNF2Y(gA9L}H z!FfoXk1+@Kj%Kn(k!8*Y-&4&EM=@4TcrH6iTy_;aA#zYxs!h7gp+mdiHmuut>$XM7 zdf23dQDhtJ+CCo=CPh5-Zg<(au3hpRW3rJC-2L(!qrJtz!0k6S`ujJwb07u&JBgTg zO{S9e1<9j5nsgVm8nxP|DM&)?06m7!yWW*JuK+a~a?c1=p9eNRxw819K z`1fwe!aR>Ce`tOR;IVK}^kS_%ik0tGTQ(nIjkrkjDRfepyxFCxa+`5~@3j?q?h zbrBb__e|$Uh#1#4b$1r#;fddju4l|KJE9N7w4MPcBGosIk9Ni2soC8J#RtEyc_yB@ zcQBkE>53Z3e|t!acw-ix*6@{sXJ3SiX#jQruBVt^U*M3WusnsB47^#}3A~FdjNt|| zkMX|)xpE%vq-o&%e;wAiD&1ujWp1ij+|8Qxn%=|stGu{V5*QlM`<&zxCfKk?v9j2q zq?JvAVH_qf9zv(M#S*Ez~$xS9#?K^(cP&D(B z4#%IMZir@mOY4eyGiFE3f#`;4NS0^BCq~*N#uYu%ChhQ93ilIgvz-6YW{E=)&BU@D zZZYj%wjQV{jdXpu&Bmb3sJ*B*z;SK-*mw*!6SkqZUD240nXMS!c>9675)TbhHs)7K z(aHCQPfh)P@q=3$jAf1?Wa^NO^c@B!9PdloIL~M$X3Z-D;1h*ZQ_8lAJA-Mw4!CZ# zmYoR_hRM-ef2>}Hapf6JX@djM1Ip)ybsOi75z>yl;zK^7Gu8x2=BaSgZt+dq<>k3x zQlJ&%$UtohU9(o?kIta+pCj*Tf%~`A!<4s(mn3iuz+V!wPfkyu{9V*%K1rxYz^jmo zJyr(h6n_q6;^Uj8H=K%UP5Mu|X|Gem;=8f)y)?k0^2e?tEcRv zxh1MUJL0cW{JyCEJRPK=`bFd~1yuRZF?My$2gTLsafS@YPTPyo|JZ>XKGsEf2eCfV z4A#57S+V^Jqh7@85&5ob*4Bq}e=g_VzV1JzSXYKz=0WlJpuTAX|K~nNZ^GMY7}mN@ z^(lZYyPJMPbs-99d4qwQpc}&@*Z$6E@(>OjV6=Wqr4l-b0>A+s#0+AQxd0-H8Tn@tLH*%LH|z64thWfV@w`{gu#yPzwiu?>$_Bf7x7xH6!NLs=wY9swtNj6qmlACNK7nvdN zm)aQr@e^f233?j!3O{5+4&UG6yH(sc@D6rN#o}YYl|3rW<&=%Z;^JG%X02c$ddl&d*W+jw~;JyYEVy=#X(*83;9-RPZ#+bz=dI#M*vjrMt7U^5?z zXe{z+o3`YSIg4E;wK-(1)3;PEXn&fU`EYA($bU|@kr!(<_2}0T5e+lpSxxWbhjL9k zmAhYj?H1S-!E>tHIkE$ z_S0*7{wgIO(mcvGZy~DoDgZKZV`^R<%Wq)92?3s)?2@CV5VU+6SQ3@R0;YeU#*Lc?X z7)t?W+32?USf66rv@Reoz`tqjt?>GxRV#H7DJWba46jlEj z4*JtB*!j4{Ngo;Uj)5TU8pb}(pn1szbgzl-$d|@+Wb%uX4gxJ@aZ;wIM;X^|y$>Y!AD8jzkIIPP4v2pVF($_o z`pbx_z`75s#)kjdcbnU(_hOETQ#NXM>=*4rs_%R8DgW{fG<(b#QejMl+uPlj9TU~1 zb z>ptE;Hb&KRyq}Lrg)beiC#<${dX;M_)>B1LA3Pqs9{i+F!KpBYZU%q2(&_KS&SbyX z7p%>r?{6S4?+0Hllah-u!R+3UHv@9tsarHlXx-!BEsb_^ENb5kD;JJzq)RZ{_KTkc zHLhB_s$1Rsl06yrFS7$E-6*LusA^uEp9;kBa9t1emBdh=ThR5AUFQPgOy6S2n#rB2 zrq;gs5j*g%cJMEuZ20GD@X=FFk@h9Ks`*%+vGY;B=xT|A#=`rMgCM7|^YbEM`)=gf zw4>-B)B_`_u7<*PDuv!D`iIKc`BA$S`yG;D|1o?!-zewbpQlCcBJlN6?%%)9jg)gg zYNsBo?^AKl`2M#VtD3@fX3)2do!j`4af+H<$eW)RuGMhhy`kIp{Bfz&a~ETOtA2^v zkY;jf89eKc#>QjAL1-(Sv3ei?73N#IQ0jjh6Drp>yP{90{_k@{9qyT8P`T(X^khq* zF{E06l_2T=e^g*ZsD=ZNkCYK^o19@4W}J~S5)Q!sfiYn}^Thfu6c`ihHt3qRVU}ME zx$pw;NwluUeC64X^CP=xZHVZ?h_NKnY@gBq%N#osqs6l9DdsM#N9WpQPd{tz(Kce*81|nZs{9Zs=gXviXHhm8&7I z&2GSo!I~Evbw1sTEIyp?5-@+56jk`!tb*4!=G7gz%b_Cdqj%(^olMwK2Vtw){c~R5 zKxjQiry9QDlY#25-aQV#CpfX1)OYY2s-107`&PS-`iH5vJrXFy#?HvbkNec$OA%2t z{s+}ACWUFx!6t&f|3m@aLGqAs`oVlBP)}M`LaT?dI2GQi+|8LKj;zHANk&)xWJHv( z*hesyH|@Rc>YhKWJZRjFxGebZnUQLaYU*n5u%~wAcFgQ(S*de@u}@o%9#PLf;v;QO zu`H!12jA~gYg<-^$DA|2poh-ufd&5%#^NEG!Bgt<_jclYgT9%1-vhqfj=5A~6P;Oy z66^T8eKqbBXe#!L7Y9^w9g~bN+0(jPR?<1R>d*w=&+}VW{vuD?(`S4ctH5~v9lV*N z{2~4hADuHBcRR|*%4Hn;Q5l-9mX&?L^3rMd;!Z%;{pJvVFkjR2UcRa;!UYcsSvqv( zy=m9<@JJ)>fpD5=)Vk{PwLO24eua4p^O)I+cD*rlA5gQ_bkGytUY~O0^;kR7N7$em zwa_%Z-=|g36}?0Hrf06|boi*ZU1jm+^!jaJIE;`}@m5{=kV{#M2J8vy=7>i14)z<` z&A>kmyBV@N8DPz%ojh5c!bnThQnLr})<wqUJ&FpJH427kd99QbBnm-I)&DK~fq5Y3MLiXoNX3|rWLEju7yMvTY- zu?ByK1C;~kzt_6-JxhCsSlEe&1CGI6-|PLNy@#s_b=b~Z++k!}n~&!#OY`|>jzQ{ znzX2kOq#y8(GGp%s7Km4FH&vIXyL=m-xi>qCsNsoo|cLh#M@`d^6mk#3O1VqVhsMi zQX$X(h%yMvK5C zSR|MDHLfg}p98&XtN8e!F@^R#Ik~C)+>BOncDJ$pD%b)0?^>)EzyLeSm8=XL;3XZfF{c^1}8Eryn} zgkwyp)mlbcjbfrclS(mrV)bl?ADCeq+O1(Ah0&y<-BR_v+w9P;DSnA|L#o_vZOn(% zZj&g2bHVfT#YaMag4JZcxCpU2C~JP9dzY+*`UR|qDbO1agTHRR?}+r1eY>#JrTL`H zTe0G}J;!5*&J_0XxZ%J=?9WPpy!<+1i$0SI5c{(LEp&dsn39vbfGwK`LMeh>wkY0P3$eS?udgQT(~UiUB3`tM_>Fq3!*{SQ`)Rrr`iMtvB%5@I*H8 zNVh%ZA02TnP&SYT#0cU_J7u%1nuRs_l&x$PX;^xRiq#HgU&I}cxS4bNx5yz}TTYVgCsg^kcunJH# zuo}HH6}F3SW#s2p@YuIh&+6FNo_$T7nWV_|tGVWO77-YUXs-;EcNKDKC4A+g;peNt zb+3bK@gE8m?gboku}{iC?`(xHe;V|{*{eAPcVm4njh?^ZI@uOGyAJ4_QSwM;_O*&v z$qQ)ea^Pz`1Rr>7O`Myan1u!{GUGqCW1rb}Kr&W>Vc=k^SOa7WMN_AObA2ejDJg*6 zscPk#A%!uP@}BpU64Ah`pz=><5<}#b-v!ZO#WLLT8kMbGhIoUj_OM z^-4u+*Y?W`5;t=2=4J<5&<5spi{$e-m!kQAcqc4L!f9i_m&bU=PBX)W{P>)8!=)t4&~$tiZ{7G!uxn(9d;t@u2!*NplrEm+cvkN ziF17b+~%_76SlpoK>skGPCOjE0gq5+a9q|0q6BtiLbaagFB;S}&%oVscs=e07CGGQ zMa%_cJ^bJ9aL2#hVeXIako0eNcx&ViABa0c|MLzj7%9} zoSo$%UVsYstf~td-FeE@c-9Cdc}ZIsYr1EY#o`#}n^o1TNjZlRBBNr+F;71OV=b54 z7tIyG!ZedVDs~QYe7(C?78eohU<^Lk}pgmxQzqhMi& zM+(Kh^=Kl_(d_#lfw&O;X0s@E^QVvx=vZl`Uw8L(OIian>5%ZKSa1swUK~;@fzG03 z8WB~-DZxWQF@|Q@=1_>W5jt<@Z^TmQ4MwFL73X2EqQ&=LWZT+Bur{}Wvx4p#X)Xk^ zi<1Rg#vbLK3dDICd>ruA9?5#@YHn@{|J2ozT*lnoegHUcvSl;3Rs7_ne6&$IqJ8lW z%M+rp1z)KQNW`!3cuMYmK&$aR360?)-%yP z+LwF7S(b}F!Y!lOeyN~Li1z3T(%^ksgm<~1Lv6AARst&T82GM|wM05evhM9;rZWJH z5t3zpj%b?Mf~C$d<>SRWJO9*fnCP#jncQC2IXSPdle( z&lRh=bA>AI{HcgA${$7Jpf)nneJ*f3E=e=$>)?INRK~o>H8z0T=u7um#5*O`D6u=; zDvzMrU_Jc$z?9Ju{{3ihUPra^X`mm35d$u!5Msc^l-2O; zPy%0zjnN>2I@-fn%e`&DrQn(uLUz*jaZDT5+}-Gr4)0i>#y_OF0Pku2;iGu-bcPkZ zgjUt_!AiGhYMby=udxa~LO8#`8@^YVNhAl+7XNR9^q$K91lT`Hz6vp>vF=#5{^mMN z!W!|*5c#MWvM&X)!GA2^9JH`(dv{j4fV7i+!^td`zZoVxH){B24jJIbSr1&@d15n0TKyldGSDw_(_~ z{Yo-pN1XjXxX&fO`VH|RXi3fnR$#?F3tOy>SIa9r;^$0B!bWM9A>8-2t!J~g{kE_! z*RSLXorJSpSFx#jDS29vWf90vbLzIhv$GMF8^%O2WS+!Rxu;^n@nkuPaYjg|K;keM zjEV51#r50ZhnhvctTc<4O!3T1&n@S?pFE7V;3j#v@=q2ltWK=nVOMt>*FC&$(?|pw zy{Cukz&0JjdXm>ic4&b!TJNq)WKy|HQRaEMdiZziO^engtvj0t1T>^6f*fNwX#|6Y z9<`#?hCaE%Vs{g~~OAS{0io_A86%l8fWxDEZ?1zd6RFRWLTk3VDElp^>p3K zt3g~E{U58xt(hl9u6Se>QdY?+tH!OKCuvtaQi+sGIi+&ks(F&~KK(;c(+sv<_TFCe z)h|~^ndasC5l^^T*pm1cp%vc7If$$%Hijl^z$=-Gz2;Ymz>pfzh$tL?aTp0p^ho`c zcxD@|$JfD-2VY79e4Q_La>CrYQ9xBCX*$IldFKx49)l{#=1-|!S^cIxp=(RWDD2ut zdwPYGdqb9rQ;CQAnWB*hzmu=@v)lr(+j9(J1F^2;)-3|_mUI0lRi_dO zfiBz{l}8ld6}hiF7k*o8Pslpm%cXIbBFD%3V`4JA+`SPIY`WT8i*wRFAy|vqw2590 za>{t$rYd%_!lRfRn9Jgf3nC{65OD9M5j6&+$H=R#KpM62l{q*s1 zZ`vbp#{KTs?AmUO^Q^7*OTAPtnxSw1Wjfb~9$>Ublm*H{7K{uE#MjkT)X&zQ?BAed z^6}YLy>Y}NIP$#Qo9eV!`?qNH=M&a5rr65G>q{`((g>-XO?r;o$NDm6!E*O5AZ=V>M!TI#)j73~`ab75#j)qM!uyMSyS~NRY=bYc4Ypdn z@M5(R^UxL3Xm^8h%z32`lEb5;JYAgOoUS_2tw=GI>ky}z0DI`CpPe!OFS(=3T7KGS@tDcDwUS0bBg?mh%&7C zjJ8P33r1ikucnqmhUVSgFWp!DVDyyuLner2lvR|*!PvqK+ z5_c%l!UgpuiDQ$h8zgq$={_AKY$j&nrF!9B%*{+6hv<>gVe*O4c`NFA)SB~%VO*W4 zJGMG8GAVj+^{h1u2b}{^7Q$Zv^XG5b=6j4AB`};{O|Y=8#>%p))5fyO+YIo3@nWn` zw1t^meoq*2H0NRzCh3L5>ITh&o$Sr8S0#WSt4O>!XsMAS2UZ)fTa4$o0`n@9W*^fY z<&^V^^6d+j*TrfkpZ}NeGk1FRlhy5ZW!Ik)?_m)|tpF~}#CUU~-P8;1<|GqV_>>km->XXYSUP*kBz1E|MkI&I>bkFdXKfD%t2n;Dh=t+I1Q~2QHV|- zkKL&R?59oTO6OwZZCcK8KZ9GD3qPsa0OQP$bOMo46Y8($=TIXH#2;Vu;e`y4Y+2Gy|}h@s0W zO_e{~M+xcGBYEbX4Lm-uY?)&vlNtc_phxOP$}b1*TxOC}$OBRy*4=~z*b6OPn5iiSnLhMBNoT~uyCv$S=f-9^c8!m0{=~>MuJn~v?FW9bX3|bb7x1Q^ zj-JMy?Pqjz`#9ZO_63)y*F}Jf>};T4vN@R4UwTroH!2c)2G%Dj`&7VeWtt=U)%xcA zIo$<(1pK+)gcdRv-iWO8K)(`N+}KM@v%XIo(Ud=<`%IrkLnWqpY{Ek5YqArH#J30X z^HO|_OAky0mwn<{%Gb#G@Owx8s{_*ni|@qPqmU6F%!~Ij&HKl`Y#-GPUvu2;w;{p3 ztm-~qdB4WTOg)Nrrt9_IuM+;5q`2$%7j0mXVJ4gnydq6=Fh0C_v?b|sNcP*vb31lG z4!9)U=VT_05ylDz-xF2Q&5G%4<4kC#u!nBGCyCh=3OGVy(jODPPGBd6J?`d-ZHO`? z##E9Bb)FgS+NxZ%BQPznBVgdMg1?NRnRAb?{77OPkR0ZzWSMCF5m@-ZKp%k}rLI}k zpgO2%R6^7HCt#Q{Sk06`l-qo0H1_@E_npYUBi07>z8%nS0EzJYHenH@Tj(;Nx&Bw+ z(s0-V{2lR`AbEiId5N`kJj&3n?{;skXskXCTubr?jRRs9mG_Rg7`p5*W254Hz4Q$; zW5mP!9pIcWsr_D{0Rz(?>$NZrx}0YZC4kKY`sG!>7XLDk3GCH3pix$I0h?i##X-NA zlq|54wLPiB&SU{|n|VbKEyHe^$%a~b+abt66Tq}+*Lv>LB+_X7#kOWmPV_6G(cNY9PjYW}j79*Lqg~d4#e478+oBrZtF8 zF=YH>`=1m$B~|@SNxg5WB_gOE&;`|lhjhxOj^OnH&IP}t!S}^YA*D;xpl#(`S}<;K z;3?1?_(0?&WwWYLb%1MDx2hX8@RNIA90;jhI#_g}H$SU6poKOmi+^AIETna{2y^o` zUddC2%oiMYqt}DI)pZt{_XFT>yr-Jo%}lK2<9#han}|qQ00|m=gQgO!Mlp!@+b0y{ z*)f+{aD$tLSm#yY}3--^-b1eerN)Wah6CL2f zl=Jo~IppO+s%xoaP3&|9SnQX+rI-7a6KgoNwMqcjkcFA3sE(2L4ShlmKb=1<+j0(wMzBPU+EOK96kO7uq2J9V8gNHgWSAwUzFj(iNYgjW~qwNpf z%Qh8OktMD$|BLQv{3HBv@~riRkJw3D;h)IfqnL8s+s&8NDf>-&gPAz5u|s;XNSr8@ z)miY|`^tAp%2Q>)SG)|L&PP0tRX>)$xQ9ty;(2V{4*M^9impZ`bA6HQ--OTHllhaLg107b$)DWd-4{OF!B>^xW-cjZ(tLxU>b3PJ&J@?p{AeXHed$#KGZyV7w z6kKB^@mYMaJOn0zCRo+oKpoL|)z$SvCY$3ou(b=! zWsf<{6)DRV{fxah@iD~Z_FrQ&!zc%rmz323mH!;m+^va_ear8I^@yw^Ind?5IK)o6 zjS)lKfO>%`PhPOj9aTNrt+kXnBYex86ytm!Vw}5hO#-gjICN(vMRCXT+bW3b1fJkN zL@h0U7p)oVft=?X2l+12Ls8A}a2rTPWU`50y*w27-2gN=Nz%y#>^lpfOWiO2HI#v~ zR9Kg0;M`vfXgeIpr*jy{wS|x%SWe@i2sLHl-jUr;m_Lx|q;W&Cf3X^)XLck;M8S^q zbCCW`ktv8E&WWzpjh$2NwwrqHVfO$ns#iFNQFJol*uoqdJ+JH+pARh;SnvXc0vQAF zg6Dx6B}Rt&gpl>l6^Krlmr`6_`|v2>xoJI2qgmFZT6x8so#LMd z8DQ=Hebp%Sb zqc5p>lvQ~#9HVh*aFkEi&oNwv8negU(6NToy+FmB3Hvd5YJM{KS81s;sV(6x+8eNq zQSdz-bMTHf^3T>fLxIEcI(`YV2&2%?-N8k|TxbnapBsYHVd3V6q{*WbCx7>)oc?%l zF5W?-nnoSQX^puXfw@ZnCNdJ3NDc6SKf4!Uw^8YJ!P|ty!_-?2+7QYV%c1zgkky1l z1NC=B=uwR6X5Z>pXA2|SNUI_2OH+IU{3tbE20gYZSv9M6jIq(OC#oTC zRD8?nQJsl95-s)djh}k7Ej=6KnhtGTkQ@v7U~LoOZ=87630^ojm~JNshj#bM^maa1 zlNp4~Lj{vh(nV7xU~a%v?QQa_=Y4 z?^b5~PDt}i8k3FLGtGt#va#WUOWzdLT+q8lVQg6pJ}vE_&Ath*TAJelKMilo zn|-ENwXHV`MQ!?)7VL6vvZD)f$bs*Jb3E~o3OF6O1RagNig_s#WU`yV8J*BVYmU5b z^WH?|h`rg6)rU9eR%PQn@cUF=gK~}krh(_6`Ea4luy;;d^xn$Vy((alP)L7@SKJsfyt(9n|9X5UCyf<59>i>uncc8xy^_IVe9#v22TI?`$$ zdDaMP4}bC>3Z7VQrIN*ba2lBdzd+KUkTHxq%U5U&VdosL> zk#C^5E{8A{wdDorMyf(hrv_34mkT~yQB%)=BT1&2v%j#ptxVC|O~Bv{obr(3pkl#d z|4B*B?0M6@BHNc&T9r+DSeI8G+Id+Id*R9jii3;&2d~Mu{`igXQ%t8;t19j+*}qpu zY~TM0a`Xz&a{uK2sh_J)$M?Lj`X3l|7ru%72`|FSLe{H@!^j?;^mDlul%v`D47T%A zFw(O8{>r!L^{j?|`B30c*piY4U8!p5@Gj&?Hyu7$8!Fn=hn2wf;knqZF6Hs|AaARG z!#r~y9qieWt@3@fWOIgiuOGGP@TMIXZU(n!CFB!Y!K#c31d%molv_}=A z7lXQ|;C|MDCp~z~NRd$}sQTSeji9cg8weyV_?WKZkNd+RJAC+FS?>@JIltKm>>YdU zi1Y}24WK>?LLj0%!j<{I9%5EV#TF;^0CA>P|8HRvmlNwDxuJq>jYq8cLh=EUM7i}b zI_>uc^M&y?^MM=vyMrc-fPIqzxSqPcs9T?2?T-&XBh}}O#`kmU4Rq}ZuKHbH<`u{woaSKey9>7 zII;9^fjpp)Jtf<`Ah8C22 z3k_Y6g_$pOh&U3#e{efQx8_e)X3|nNd5ezMA z_yj0V5EYt{U9c2$yT(`ki`VU9*u==G&D+H`kRwGh1`hFrtK;Y)1ahcIaAqt^8f(->h!*pJkRU2LpXW2_EuY zQUz@jmF>9ynIK_TulOGdj%;W1kVl%MP5vl}to1;uvmDk!)*CTHoQ`OAF*>5z#p{S> zH%iBOnt_?nNfrQBs)0>l1#s%iSx?`xeN${(GiVh`Pm9U~UDFX~xMxy;Tq#C$huOA(?Myp1=d7FNv&3mpo02Tg7JmOzppXB6q!y23;=R012OagT?kc4~v# z+6+5*JS?DrdTfniw9jlt`)p86KHCKv%W6>1U-usfj%8GqJ=#%c^^@zR-(~NVMr7&T zptxi`(T?&5_f_$dYO>OXSC5?_(2ph6b)5Zk==sr_AbQPe)YO8z`aE=;FH|WHuGqA% zit52jfN0o@KM$;ckL`omhBxUcv>=pUAc zfqog$eI$r+KjlKA=3BKL-%M^*g!k9mh6I% z#L{;7kebI=){WA}o^1t}#J+iSTjgfn)~W!N*hXbx{1SbVPyEIXdM!S^mQL$%U_$@f zo1TK6flRkI0^^`r90MJ$8L*LNZ%=F^dVvZ3r#oXP@D}ubDaSqGeQj@Us-%*jAnDGI z#d@On=}bx`9QY2BWz-^B?>pQf;f^uD)4g)_8N6mI>qf(>J>`C8NUpWyn*QxV|MKwG zT%n;J>duA(?@FZqHQfKLNH-l{P-U#zQN^#WfaMIC^YktFmNaX?tf~yQr!Z?oZ6i(Q zkB72xTfgiVhK_A=3i~0kM${n_Y`{|=j6+n@;8L#{Qi5ntn^Z>gXy>)ep-v85gy(t`$~m?VCyeS#CpvamkI)-xOynH?C-} zJ_%Vg#E@LbXIK|4+L0)67-LSmjdsG_kl9$v%Is0;&qDgz{-}dePP<;}IUtW_0p9^E#X8vZR$ZOSI{DIsS8(t~jhDSkPlI)zP z0h37xD^h@?B780|UfRF2I5v@-2%j~j5l^)g92oE=5sz?~g#iR)CXra4|IDI6Mj&*mmw z-?a)nW?jszuBWU1QdL@|NRR1Krdz?^&2~3wr(z9pnUffQWj4+ru>f_RbZhNrN0ALD ztF0|jr~r*?5b~td`wYyzoNGH*cX=WSXsO_2y;pt~aJD?SZN~2c!y?ZCv|6mD42ZI14bAbhLFV zB&Nu6V^qKVdm68aJSKNU{=xYOmOd;Op$0$q&&!)Pa>V;CAzIsTN)$_34iBpePT7^X zd3Yq`T$>r~Oj9)&*a2HU+%DK=1Lnx3SvriMuPO0mpG%*l{yiXsH`AUjYdXqJXn>#Z zjaGV}=o)u`BA5iZ%W;C~*_~2Jc~@Y86je`{eNAoQ##`b2YENO5TaiV0*CKxs!};&7 zCA^sju5=U@$26Yr9^$7s@zUcb=<8tx_gV1qypAZ)kGv&HMT(+nK0611)g6T#IsB9> zaVlux*QTi-ex8qNTZvCh))$joh62+hsV)0!((BEx%}3vOTUS7V9cyiKY*b{g_y2xi zV>`v?*gg&TVM~a5np`WVJNwV3;$R&BMkMgHDkGi%Y@zUuBqSOMfQ4~9LUVBzhhYAnFFQ>)zWp}?|1vh($U+vd@==Dr!V zCrxNbUb?Z--_eg1aBRz_D%?>W?9dr5`3G@zTJOl2ERk!v20{c1U#G4Et(LJEf6X={O%OvD>Ti z-~3F;pY41o?-*w{?ol0~H9wNAd1FpA(Q%(K&K?Tf)DJrh>`oXZJ%`fk+wO(+qLeY~ z{l!=bM)DAl1rKGo1C+2}N3zLbNJxq}jm8M4R`cL-K35or6V95QAuRI$GFaWNZaobD zoGMV@DCWlCuuPNu@~3k~mLSwrJ#my9AMKr}jrJz%ouJ2%cSQ0eZ#5`(s~WYtbh~y+ z6CK!__57}(Kp0jqOr6mw>ef|)0#sjc-FIzaJ@1uD**6RZ-e4A41_Q5!pOYqXAGXo# z#&+!{e~RQOsT>|~vwD_Sg4Ro?AbI{ygx$$eu$HhKGP96a25u&E1x?3IIG2;KLzcmx z(tcKce>uqnC?PGA1q#Zxqn|8?kC21*>a%!p9QQ96&_`Y_>a$zOC!vye+p9H@+9&?; zasLvW0RLiqX6d+MwMK}l(pK$V&P|%y6}^d@JOMYH0(Sy=Hck>&fjaugnkR<;e zVYkv?;9+LVZYVGrxHO|~^{0xfG2J`V!nC=*@CAdIi1g=OVp)WsoF^(wHQXAWv5p*Pi0zYIsip z{@&t58&_kU6%^~NpjeW+FybzlW-?B=C}r(~CGHR~tHv?lrKo1mOAXwldZKtc+=O|; zYZfq$ty1#7t74qPX3DOr#NUgX~kFM%UkqFB00nJ3U& zhqny|Mh%h`vIT8q394D8hK0ydU`&Gncld9RQ|7YZhqO(O1HU#r9QtkeLr6}jVjNdK za31oib5qcT zszA8nb4Y#vlvIkI?gsCe+TSfjby6R8O9uKi?v|qK7k29__^c)6yWx!h9Os3*A>D}N9Q_<-+-;?E7iF*T+5R7%uN^c_6Nul@MdM@1H{** z+2!|SwD)Y>&tMh7Y;I+XuRJH8Si_PlJ8|MfWs=phi_-F=+A94n!>$J}>JMV)Hy92Y zXY&oll%tmym$u#d4s=iZ^cS&YI_b63=g%%LAMRIX1r6uA5@@}>M-9J4lKcI zhNv^V$|^+DJLPF5^NtSewzdwpi3T*9aal&8>7IDtn|WQ0mzCUm(mBp5yeNHXy3e0B zkPE+z;}luKKbPyk3w+3VT)I1pYdmyMIIuAMP~9HTBxYkb(i`F>*lD6)-u5!=S*s2c z|4<3tBEAW_D~AW+RS%l^O%BKlAy1QL4_RqA5M&xYOjo2CRI!ohPfQk36EszyEUyGt zTBpeA+OcU3Y@-rBp$D#@J<}4Qgvfh&T8KPHf&&Vjo)nB#I1mQSt`m293|_lT&ky$9 zNtZ1c_#Jo!X&60$Q73?jM`#`;Va_uWX9r=WTL~XenmrgNo@?Z7iUv9ZX!IN53Bbu_t73pKwpi$hjKjUV zwk{EJp+xH(4DjHC(C;zGMW+L|QH13Y2{8YlT$L%?0<5^fuOH+g-(9(BZTl8@79u=@ zq+l*6)zGyd{y(=HR^7ux47+Y&m;&^AKxr=(On7q;wlEmD8Tgpc-u08-; zAhw0D198GT4))34ul@VwQKFT5j~~xv;qMY|JN~}M{|bL^!M_Il`<4si?`S@rPvcXN zHkE&Ye+9q8|G&u-+5Doku_S?Eb&(2xHL=9 zvo2}|77wV>n#o;hhE_>3R{##mLjU@~DtNLd>uhSg!MayB_?P#8`A>BVLhk0hA7|DJMneRVfa7 zRmy7rOQAJi6NLCi#3&Aw^0b%02LV+VJeAJ_HtCi~t=H8y!BWTU^1c5gU0_Xp0siW$ zn{8#}~t!$?Q|$Uba-Nggwj{8;`SPq2Dl+_)pSKCC%P%!XE&C zCwskvf!C#XShx_cmvG?9;E71e3ZxzHKStiuk7C@iFmCm*L&-GAf9o6#xmISE(Lg*h z=q3hcqHm?BdjOnlPHb?Jj;lAY4L!|9|Hk!`pFjg%im1axvs&icrzk?oK)BX(7c1La zH5B*&r8l{WJ_{`=<@@-hZ~8qg?rLk@O?w%@c$_%#yFO|}e z3UbVJ4~*@%dXSDauE84Tp?f;fqu#?q;)Kh=>akr292*#meVxFK#@}czk-duI@jfzp zxDH1TG=Z!-D{xJuj$t%{Hcp{3`PcC1xF^tn_Rh><=Dponk z!u^E7wK)G&U5V|4=U8zHF>Wa+FQ#lKQMwzR1YPmAr|LG*`0sLZ6G#Jf?=APi$2RJX2FK`Oa9`)sKfIxlZL}|4r`%n`jY?H0M$aa4ReH3{*Qx{n^MSr;7k4& znf*XmE~}?pvIVpG8OvZzW_vnOsi8mW|0>9jUw|>;r!APftT+V8Q4J(VPx(&=sVCZ& zb2~MA_-Uv7jv&P=1?_=T{`Z2~R$Y_sAS^^2(l=4Qb34n6PWg8PqZlq>fP^UzIbpI% zsD*?C$-5ZqF9fP^rZFEek1MO3cbCI!NW+@b(xmJ^L#IXTRu#WmTg&`2{)rl9auOUE=U+ySqyoSV8oJNy5as^65{LPq3_`g#ow5a}?SR$>qEi z_+7b3()ai)9*-$=AKf>BxL#!8w+bg)elSOf?$L1VNelhCL3Pi2%Io?q)?#Uzb@3rZ z&s^2C{(X~fEnfl}1=qnH9s_>1sqEm<#jFl(-@Y2TmV}_T??Z&CriK0(sz;G_knfqR z%){29n87=>Sho|~pkgiYjIs&u(;7AoJ37Xt3+1%@O4 zEnb6~Es>hjQ1jwB0;@S5HG6&!|M5r0a7U#eG|(JnrsEoSYKbPYss~$mIzUm>wako9d>dRK$ zhq&uhHJ%sxg7>}X+W3EJ%1~7z#|%~ZH8o99-GaDTs$a00ma>|1RAq>}UbPT4CEur+ z^P)@mKXqlQu0x)gs#(|6HC2_1xY?>KR@Wp}SFS1@aW|+YpsuWSnpusm^%?*9g_Bex zkta`Oxu&ixRW#z}s0^$w`Kza?l!$YvI1dLe7bJ%d&mNp*{7prwzRo)zOPW6B^*UA3 zYyBDxm$s(v)w;wBe9rcyICyv3?&81rC`s$-8ndNP^+oF_W$tvzob^$n-gU1SR<^*q z6EvgJ4|If6bb@$NZFfp1rjhQTDr3Ys@@5bnt<*+w&^!}kc&$fopkJj&56q9nq}O#6 zh$4T1YjNm`Oeblke#il7~F~WC#o;o|6FagN7Z=j3u-hdZ#pTjh!~`Kk)~pCT0s3* zp)49B)Ho@vNt&{}Nt!w@W14*#NW=BIt@dZw`ZGty4P2srqjLIvd7)XElzlxpRA zwkr5(%ANwHN>r*ot8^jBN~imJBa{N;>C&F7z zupG0s*ynmi%3C+GJppsF5SCB#*G+8K_#DFPeU7rZfUjT0PjR@Pk-oW^n>?p0b)0^3 zK31t(R7b_;;lFXInab2L)yCBL4bkwrM&Ut(2U1}*0O21H{xS9D4f@pR4U0C^N_mTG zrToQ-EX{(n_(&NQ!slH~%Hxi+J(B#K$1s^dIp@u^ZFe*H4P+x@S^i*OW;&x~XO}a$5c) zC&er6rVanMA8zFC`j6a4aT2GwXQAFTlajhJCfQiM%aHS?|Hw)879zgrzr>pmANwEi z)g|zwlH%}V&pUGA%VTS5Jx-X_@+8zb z&I+Aoj$e?t62Bdd-Z5NOP;n(2vJXn=oOih#-Ac+~)m59S6RWvavNAxYsA4Zx3RmB+ zGAdiF?TxNhm#sXi+;lR|INB(O*cpX%%CE%EK^Z~oQG$9kx7)$-Ii0Q*y3?=>*XK5! z+)?MqP{I-zmGaXU73x<<8;p6dndFX}I7+Q6kR5v@zgv)O2^ zTH~-*^{^0@uc(HkA)VHaqGMR6IyXUdOIw(BIo&i|+8te_Gqk_vyP9XPhEvPoRW5v7 z8p@(OTFFlLGB@vWpf^st(`864E-LfAS@Y)fXF}e-)Y5{YBd*fkMC+|OE~GXU_1;r3 zuSn6eZ!wp)-#Pta(kMQkOV7SoUzpw1=@Q13B>P?4#;B)+T|c^%=i5f9vkmF|x%bET zT`NZOv(=f(i-$(3a|{{$xozWqbdgNb1K=T8*OBDvI)uuZ5A0tfv~L|r-d2S@>v*el zGE0EI2Y%VVjzl=S%{yM~U$uU&f647!dSXX1urKiceFZh~Vsw8R!j4{TcD$&KgbfJu z2s?VCvu(fu^BnPF{~Pd0NMpOW%=c-{ap{eec=0D`|Jo+0DeDVu1*BV!OK+z*dap;F z|B$RGI}y3wMXoOyGzZZ8fFLV^v=l%e1Ntk2(gFPy& zYg)CH>}xu)3$Krj7avBhyW%S1 z#akG34rysfTgsp>0gVT=fI%KWGXTwH&<}u80bR!+5l}v$84U6PngwVogDwHG0ZIep z@K1|9E?s8Y-tpo%*y)yV<0Y0q1$!s)LP4*xVjbv=@nRhEW&l>8XGVl)A*@AMgK$Bw zrXq*&oh;%|hv|5kucStWF$~99L_g>Oj@~iZGV~LJ#zvsa3>wEElIXICfA6Sf7|Ffj zT!l(FCH;{4nRIFT`nFl~Z!Ma2V@dDsoAVbuoAg;C{O-cDYG2>$t|KmZ5cMs%zs$FG z1Nkw*%w=1|H&HW%XCr((622bcS0mvY5Iz_Q7b3hr5-vjcxky+*cy}aRf^Y-EklFH; z)mX$QSlH2f9pZ`NLGg2Ue+4ohYA-BvwRFi}fv%}Ey^KC9K z>oz6AJ9C@5r&ie{)g~Opi~1;D*mbUVlQ?^$>!-v&N}dmluWp@d2d_wxJ0i2s9qk>< zarOffwIS6n!->25>oyp3Z_2bvip@SZXK%&4?*KhRHPz&fbt$b4AyMRd9GrfX-lc#y zDL$vs73Uh8aiC+Ytfe46{S8?SFBD$Ow5ki1 zL_3oug_ZLZ3QJw%f=`Hw#&N+%2bA^mU3~MSD^-n(jjHBH3*)*H+P-k{86 lbz} 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�dQLkdL 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®T-+QFIL@Ox&od1Les#m{?$ZlKaF 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

>v<7#z9XWyf|&{9_ug_BD(rg$ta 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 y1@XYZfd2h@WcSMM6}UQY PKG_CPE_ID:=cpe:/a:openssl:openssl @@ -42,6 +39,7 @@ PKG_CONFIG_DEPENDS:= \ CONFIG_OPENSSL_NO_DEPRECATED \ CONFIG_OPENSSL_OPTIMIZE_SPEED \ CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM \ + CONFIG_OPENSSL_SMALL_FOOTPRINT \ CONFIG_OPENSSL_WITH_ARIA \ CONFIG_OPENSSL_WITH_ASM \ CONFIG_OPENSSL_WITH_ASYNC \ @@ -66,7 +64,7 @@ PKG_CONFIG_DEPENDS:= \ CONFIG_OPENSSL_WITH_WHIRLPOOL include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/openssl-engine.mk +include $(INCLUDE_DIR)/openssl-module.mk ifneq ($(CONFIG_CCACHE),) HOSTCC=$(HOSTCC_NOCACHE) @@ -97,9 +95,10 @@ $(call Package/openssl/Default) DEPENDS:=+OPENSSL_WITH_COMPRESSION:zlib \ +OPENSSL_ENGINE_BUILTIN_AFALG:kmod-crypto-user \ +OPENSSL_ENGINE_BUILTIN_DEVCRYPTO:kmod-cryptodev \ - +OPENSSL_ENGINE_BUILTIN_PADLOCK:kmod-crypto-hw-padlock + +OPENSSL_ENGINE_BUILTIN_PADLOCK:kmod-crypto-hw-padlock \ + +(arm||armeb||mips||mipsel||powerpc||arc):libatomic TITLE+= (libraries) - ABI_VERSION:=1.1 + ABI_VERSION:=$(firstword $(subst .,$(space),$(PKG_VERSION))) MENU:=1 endef @@ -130,8 +129,8 @@ endef define Package/libopenssl-conf/conffiles /etc/ssl/openssl.cnf -$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO),/etc/ssl/engines.cnf.d/devcrypto.cnf) -$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK),/etc/ssl/engines.cnf.d/padlock.cnf) +$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO),/etc/ssl/modules.cnf.d/devcrypto.cnf) +$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK),/etc/ssl/modules.cnf.d/padlock.cnf) endef define Package/libopenssl-conf/description @@ -139,6 +138,37 @@ $(call Package/openssl/Default/description) This package installs the OpenSSL configuration file /etc/ssl/openssl.cnf. endef +ifneq ($(CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK)$(CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO),) +define Package/libopenssl-conf/postinst +#!/bin/sh + +add_engine_config() { + if [ -z "$${IPKG_INSTROOT}" ] && uci -q get "openssl.$$1" >/dev/null; then + [ "$$(uci -q get "openssl.$$1.builtin")" = 1 ] && return + uci set "openssl.$$1.builtin=1" && uci commit openssl + return + fi +} + +$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO),add_engine_config devcrypto) +$(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK),add_engine_config padlock) +endef +endif + +$(eval $(call Package/openssl/add-provider,legacy)) +define Package/libopenssl-legacy + $(call Package/openssl/Default) + $(call Package/openssl/module/Default) + TITLE:=OpenSSL legacy provider +endef + +define Package/libopenssl-legacy/description +The OpenSSL legacy provider supplies OpenSSL implementations of algorithms that +have been deemed legacy. Such algorithms have commonly fallen out of use, have +been deemed insecure by the cryptography community, or something similar. See +https://www.openssl.org/docs/man3.0/man7/OSSL_PROVIDER-legacy.html +endef + $(eval $(call Package/openssl/add-engine,afalg)) define Package/libopenssl-afalg $(call Package/openssl/Default) @@ -151,7 +181,7 @@ endef define Package/libopenssl-afalg/description This package adds an engine that enables hardware acceleration through the AF_ALG kernel interface. -See https://www.openssl.org/docs/man1.1.1/man5/config.html#Engine-Configuration-Module +See https://www.openssl.org/docs/man3.0/man5/config.html#Engine-Configuration and https://openwrt.org/docs/techref/hardware/cryptographic.hardware.accelerators The engine_id is "afalg" endef @@ -167,7 +197,7 @@ endef define Package/libopenssl-devcrypto/description This package adds an engine that enables hardware acceleration through the /dev/crypto kernel interface. -See https://www.openssl.org/docs/man1.1.1/man5/config.html#Engine-Configuration-Module +See https://www.openssl.org/docs/man3.0/man5/config.html#Engine-Configuration and https://openwrt.org/docs/techref/hardware/cryptographic.hardware.accelerators The engine_id is "devcrypto" endef @@ -183,12 +213,12 @@ endef define Package/libopenssl-padlock/description This package adds an engine that enables VIA Padlock hardware acceleration. -See https://www.openssl.org/docs/man1.1.1/man5/config.html#Engine-Configuration-Module +See https://www.openssl.org/docs/man3.0/man5/config.html#Engine-Configuration and https://openwrt.org/docs/techref/hardware/cryptographic.hardware.accelerators The engine_id is "padlock" endef -OPENSSL_OPTIONS:= shared +OPENSSL_OPTIONS:= shared no-tests ifndef CONFIG_OPENSSL_WITH_BLAKE2 OPENSSL_OPTIONS += no-blake2 @@ -260,7 +290,9 @@ endif ifeq ($(CONFIG_OPENSSL_OPTIMIZE_SPEED),y) TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -O3 -else +endif + +ifeq ($(CONFIG_OPENSSL_SMALL_FOOTPRINT),y) OPENSSL_OPTIONS += -DOPENSSL_SMALL_FOOTPRINT endif @@ -274,7 +306,7 @@ ifdef CONFIG_OPENSSL_ENGINE OPENSSL_OPTIONS += enable-devcryptoeng endif ifndef CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK - OPENSSL_OPTIONS += no-hw-padlock + OPENSSL_OPTIONS += no-padlockeng endif else ifdef CONFIG_PACKAGE_libopenssl-devcrypto @@ -284,7 +316,7 @@ ifdef CONFIG_OPENSSL_ENGINE OPENSSL_OPTIONS += no-afalgeng endif ifndef CONFIG_PACKAGE_libopenssl-padlock - OPENSSL_OPTIONS += no-hw-padlock + OPENSSL_OPTIONS += no-padlockeng endif endif else @@ -342,8 +374,7 @@ define Build/Configure ) endef -TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += $(FPIC) define Build/Compile +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ @@ -380,17 +411,17 @@ define Package/libopenssl/install endef define Package/libopenssl-conf/install - $(INSTALL_DIR) $(1)/etc/ssl/engines.cnf.d $(1)/etc/config $(1)/etc/init.d + $(INSTALL_DIR) $(1)/etc/ssl/modules.cnf.d $(1)/etc/config $(1)/etc/init.d $(CP) $(PKG_INSTALL_DIR)/etc/ssl/openssl.cnf $(1)/etc/ssl/ $(INSTALL_BIN) ./files/openssl.init $(1)/etc/init.d/openssl $(SED) 's!%ENGINES_DIR%!/usr/lib/$(ENGINES_DIR)!' $(1)/etc/init.d/openssl touch $(1)/etc/config/openssl $(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO), - $(CP) ./files/devcrypto.cnf $(1)/etc/ssl/engines.cnf.d/ - echo -e "config engine 'devcrypto'\n\toption enabled '1'" >> $(1)/etc/config/openssl) + $(CP) ./files/devcrypto.cnf $(1)/etc/ssl/modules.cnf.d/ + echo -e "config engine 'devcrypto'\n\toption enabled '1'\n\toption builtin '1'" >> $(1)/etc/config/openssl) $(if $(CONFIG_OPENSSL_ENGINE_BUILTIN_PADLOCK), - $(CP) ./files/padlock.cnf $(1)/etc/ssl/engines.cnf.d/ - echo -e "\nconfig engine 'padlock'\n\toption enabled '1'" >> $(1)/etc/config/openssl) + $(CP) ./files/padlock.cnf $(1)/etc/ssl/modules.cnf.d/ + echo -e "\nconfig engine 'padlock'\n\toption enabled '1'\n\toption builtin '1'" >> $(1)/etc/config/openssl) endef define Package/openssl-util/install @@ -402,5 +433,6 @@ $(eval $(call BuildPackage,libopenssl)) $(eval $(call BuildPackage,libopenssl-conf)) $(eval $(call BuildPackage,libopenssl-afalg)) $(eval $(call BuildPackage,libopenssl-devcrypto)) +$(eval $(call BuildPackage,libopenssl-legacy)) $(eval $(call BuildPackage,libopenssl-padlock)) $(eval $(call BuildPackage,openssl-util)) diff --git a/package/libs/openssl/files/afalg.cnf b/package/libs/openssl/files/afalg.cnf index 4f573d757..fd206361b 100644 --- a/package/libs/openssl/files/afalg.cnf +++ b/package/libs/openssl/files/afalg.cnf @@ -1,3 +1,3 @@ -[afalg] +[afalg_sect] default_algorithms = ALL diff --git a/package/libs/openssl/files/devcrypto.cnf b/package/libs/openssl/files/devcrypto.cnf index 549275600..91d0eee17 100644 --- a/package/libs/openssl/files/devcrypto.cnf +++ b/package/libs/openssl/files/devcrypto.cnf @@ -1,4 +1,4 @@ -[devcrypto] +[devcrypto_sect] # Leave this alone and configure algorithms with CIPERS/DIGESTS below default_algorithms = ALL @@ -17,8 +17,9 @@ default_algorithms = ALL # It is recommended to disable the ECB ciphers; in most cases, it will # only be used for PRNG, in small blocks, where performance is poor, # and there may be problems with apps forking with open crypto -# contexts, leading to failures. The CBC ciphers work well: -#CIPHERS=DES-CBC, DES-EDE3-CBC, AES-128-CBC, AES-192-CBC, AES-256-CBC +# contexts, leading to failures. The CBC ciphers work well. +CIPHERS=DES-CBC, DES-EDE3-CBC, AES-128-CBC, AES-192-CBC, AES-256-CBC, \ + AES-128-CTR, AES-192-CTR, AES-256-CTR # DIGESTS: either ALL, NONE, or a comma-separated list of digests to # enable [default=NONE] @@ -26,6 +27,8 @@ default_algorithms = ALL # is poor, and there are many cases in which they will not work, # especially when calling fork with open crypto contexts. Openssh, # for example, does this, and you may not be able to login. -#DIGESTS = NONE - +# Sysupgrade will fail as well. If you're adventurous enough to change +# this, you should change it back to NONE, and reboot before running +# sysupgrade! +DIGESTS = NONE diff --git a/package/libs/openssl/files/legacy.cnf b/package/libs/openssl/files/legacy.cnf new file mode 100644 index 000000000..4c2061744 --- /dev/null +++ b/package/libs/openssl/files/legacy.cnf @@ -0,0 +1,3 @@ +[legacy_sect] +activate = 1 + diff --git a/package/libs/openssl/files/openssl.init b/package/libs/openssl/files/openssl.init index 21e253e7a..1c1e8745f 100644 --- a/package/libs/openssl/files/openssl.init +++ b/package/libs/openssl/files/openssl.init @@ -1,31 +1,72 @@ #!/bin/sh /etc/rc.common START=13 -ENGINES_CNF_D="/etc/ssl/engines.cnf.d" -ENGINES_CNF="/var/etc/ssl/engines.cnf" -ENGINES_DIR="%ENGINES_DIR%" +ENGINES_CNF=/var/etc/ssl/engines.cnf +ENGINES_DIR=%ENGINES_DIR% +MODULES_DIR=/usr/lib/ossl-modules +PROVIDERS_CNF=/var/etc/ssl/providers.cnf -config_engine() { - local enabled force +#1: cnf file +write_cnf_header() { + mkdir -p "$(dirname "$1")" && \ + echo "# This file is automatically generated from /etc/config/openssl." >"$1" || { + echo "Error writing to $1." + return 1 + } +} + + +#1: module name +#2: output cnf file +#3: module.so +enable_module() { + local builtin enabled force + + config_get_bool builtin "$1" builtin 0 config_get_bool enabled "$1" enabled 1 config_get_bool force "$1" force 0 - [ "$enabled" = 0 ] && return - if [ "$force" = 0 ] && \ - [ ! -f "${ENGINES_CNF_D}/$1.cnf" ] && \ - [ ! -f "${ENGINES_DIR}/$1.so" ]; then - echo Skipping engine "$1": not installed - return + + if [ "$enabled" = 0 ]; then + [ "$builtin" = 0 ] && return 1 + echo "Engine $1 is built into the libcrypto library and can't be disabled through UCI." + echo "If the engine was not built-in, remove 'config builtin' from /etc/config/openssl." + elif [ "$force" = 1 ]; then + printf "[Forced] " + elif ! grep -q "\\[ *$1_sect *]" /etc/ssl/modules.cnf.d/*; then + echo "$1: Could not find section [$1] in config files." + return 1 + elif [ "$builtin" = 1 ]; then + printf "[Builtin] " + elif [ ! -f "$3" ];then + echo "Skipping $1: $3 not found." + return 1 fi - echo Enabling engine "$1" - echo "$1=$1" >> "${ENGINES_CNF}" + echo "Enabling $1" + echo "$1=$1_sect" >>"$2" +} + +config_engine() { + enable_module "$1" "$ENGINES_CNF" \ + "${ENGINES_DIR}/${1}.so" +} + +config_provider() { + enable_module "$1" "$PROVIDERS_CNF" \ + "${MODULES_DIR}/${1}.so" } start() { - mkdir -p "$(dirname "${ENGINES_CNF}")" || exit 1 - echo Generating engines.cnf - echo "# This file is automatically generated from /etc/config/openssl." \ - > "${ENGINES_CNF}" || \ - { echo Error writing ${ENGINES_CNF} >&2; exit 1; } + local ret=0 + config_load openssl - config_foreach config_engine engine + + echo Generating engines.cnf + write_cnf_header "${ENGINES_CNF}" && \ + config_foreach config_engine engine || ret=$? + + echo Generating providers.cnf + write_cnf_header "${PROVIDERS_CNF}" && \ + config_foreach config_provider provider || ret=$? + + return $ret } diff --git a/package/libs/openssl/files/padlock.cnf b/package/libs/openssl/files/padlock.cnf index ef91079e5..f4085d907 100644 --- a/package/libs/openssl/files/padlock.cnf +++ b/package/libs/openssl/files/padlock.cnf @@ -1,3 +1,3 @@ -[padlock] +[padlock_sect] default_algorithms = ALL diff --git a/package/libs/openssl/patches/001-crypto-perlasm-ppc-xlate.pl-add-linux64v2-flavour.patch b/package/libs/openssl/patches/001-crypto-perlasm-ppc-xlate.pl-add-linux64v2-flavour.patch deleted file mode 100644 index 3da67e25f..000000000 --- a/package/libs/openssl/patches/001-crypto-perlasm-ppc-xlate.pl-add-linux64v2-flavour.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Andy Polyakov -Date: Sun, 5 May 2019 18:25:50 +0200 -Subject: crypto/perlasm/ppc-xlate.pl: add linux64v2 flavour -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This is a big endian ELFv2 configuration. ELFv2 was already being -used for little endian, and big endian was traditionally ELFv1 -but there are practical configurations that use ELFv2 with big -endian nowadays (Adélie Linux, Void Linux, possibly Gentoo, etc.) - -Reviewed-by: Paul Dale -Reviewed-by: Richard Levitte -(Merged from https://github.com/openssl/openssl/pull/8883) - ---- a/crypto/perlasm/ppc-xlate.pl -+++ b/crypto/perlasm/ppc-xlate.pl -@@ -49,7 +49,7 @@ my $globl = sub { - /osx/ && do { $name = "_$name"; - last; - }; -- /linux.*(32|64le)/ -+ /linux.*(32|64(le|v2))/ - && do { $ret .= ".globl $name"; - if (!$$type) { - $ret .= "\n.type $name,\@function"; -@@ -80,7 +80,7 @@ my $globl = sub { - }; - my $text = sub { - my $ret = ($flavour =~ /aix/) ? ".csect\t.text[PR],7" : ".text"; -- $ret = ".abiversion 2\n".$ret if ($flavour =~ /linux.*64le/); -+ $ret = ".abiversion 2\n".$ret if ($flavour =~ /linux.*64(le|v2)/); - $ret; - }; - my $machine = sub { -@@ -186,7 +186,7 @@ my $vmr = sub { - - # Some ABIs specify vrsave, special-purpose register #256, as reserved - # for system use. --my $no_vrsave = ($flavour =~ /aix|linux64le/); -+my $no_vrsave = ($flavour =~ /aix|linux64(le|v2)/); - my $mtspr = sub { - my ($f,$idx,$ra) = @_; - if ($idx == 256 && $no_vrsave) { -@@ -318,7 +318,7 @@ while($line=<>) { - if ($label) { - my $xlated = ($GLOBALS{$label} or $label); - print "$xlated:"; -- if ($flavour =~ /linux.*64le/) { -+ if ($flavour =~ /linux.*64(le|v2)/) { - if ($TYPES{$label} =~ /function/) { - printf "\n.localentry %s,0\n",$xlated; - } diff --git a/package/libs/openssl/patches/100-Configure-afalg-support.patch b/package/libs/openssl/patches/100-Configure-afalg-support.patch index 746c50621..307e23b80 100644 --- a/package/libs/openssl/patches/100-Configure-afalg-support.patch +++ b/package/libs/openssl/patches/100-Configure-afalg-support.patch @@ -10,7 +10,7 @@ Signed-off-by: Eneas U de Queiroz --- a/Configure +++ b/Configure -@@ -1548,7 +1548,9 @@ unless ($disabled{"crypto-mdebug-backtra +@@ -1674,7 +1674,9 @@ $config{CFLAGS} = [ map { $_ eq '--ossl- unless ($disabled{afalgeng}) { $config{afalgeng}=""; diff --git a/package/libs/openssl/patches/110-openwrt_targets.patch b/package/libs/openssl/patches/110-openwrt_targets.patch index 76f67e02d..a97c603fa 100644 --- a/package/libs/openssl/patches/110-openwrt_targets.patch +++ b/package/libs/openssl/patches/110-openwrt_targets.patch @@ -23,7 +23,7 @@ Signed-off-by: Eneas U de Queiroz + inherit_from => [ "linux-aarch64", "openwrt" ], + }, + "linux-arc-openwrt" => { -+ inherit_from => [ "linux-generic32", "openwrt" ], ++ inherit_from => [ "linux-latomic", "openwrt" ], + }, + "linux-arm-openwrt" => { + inherit_from => [ "linux-armv4", "openwrt" ], diff --git a/package/libs/openssl/patches/120-strip-cflags-from-binary.patch b/package/libs/openssl/patches/120-strip-cflags-from-binary.patch index 90282706d..c4f254039 100644 --- a/package/libs/openssl/patches/120-strip-cflags-from-binary.patch +++ b/package/libs/openssl/patches/120-strip-cflags-from-binary.patch @@ -10,12 +10,12 @@ Signed-off-by: Eneas U de Queiroz --- a/crypto/build.info +++ b/crypto/build.info -@@ -10,7 +10,7 @@ EXTRA= ../ms/uplink-x86.pl ../ms/uplink - ppccpuid.pl pariscid.pl alphacpuid.pl arm64cpuid.pl armv4cpuid.pl +@@ -111,7 +111,7 @@ DEFINE[../libcrypto]=$UPLINKDEF + DEPEND[info.o]=buildinf.h DEPEND[cversion.o]=buildinf.h -GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q)" "$(PLATFORM)" +GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(filter-out -I% -iremap% -fmacro-prefix-map% -ffile-prefix-map%,$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q))" "$(PLATFORM)" - DEPEND[buildinf.h]=../configdata.pm - GENERATE[uplink-x86.s]=../ms/uplink-x86.pl $(PERLASM_SCHEME) + GENERATE[uplink-x86.S]=../ms/uplink-x86.pl + GENERATE[uplink-x86_64.s]=../ms/uplink-x86_64.pl diff --git a/package/libs/openssl/patches/130-dont-build-fuzz-docs.patch b/package/libs/openssl/patches/130-dont-build-fuzz-docs.patch new file mode 100644 index 000000000..60c466392 --- /dev/null +++ b/package/libs/openssl/patches/130-dont-build-fuzz-docs.patch @@ -0,0 +1,20 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Eneas U de Queiroz +Date: Thu, 27 Sep 2018 08:34:38 -0300 +Subject: Do not build tests and fuzz directories + +This shortens build time. + +Signed-off-by: Eneas U de Queiroz + +--- a/build.info ++++ b/build.info +@@ -1,7 +1,7 @@ + # Note that some of these directories are filtered in Configure. Look for + # %skipdir there for further explanations. + +-SUBDIRS=crypto ssl apps util tools fuzz providers doc ++SUBDIRS=crypto ssl apps util tools providers + IF[{- !$disabled{tests} -}] + SUBDIRS=test + ENDIF diff --git a/package/libs/openssl/patches/130-dont-build-tests-fuzz.patch b/package/libs/openssl/patches/130-dont-build-tests-fuzz.patch deleted file mode 100644 index baf8bca9e..000000000 --- a/package/libs/openssl/patches/130-dont-build-tests-fuzz.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Thu, 27 Sep 2018 08:34:38 -0300 -Subject: Do not build tests and fuzz directories - -This shortens build time. - -Signed-off-by: Eneas U de Queiroz - ---- a/Configure -+++ b/Configure -@@ -318,7 +318,7 @@ my $auto_threads=1; # enable threads - my $default_ranlib; - - # Top level directories to build --$config{dirs} = [ "crypto", "ssl", "engines", "apps", "test", "util", "tools", "fuzz" ]; -+$config{dirs} = [ "crypto", "ssl", "engines", "apps", "util", "tools" ]; - # crypto/ subdirectories to build - $config{sdirs} = [ - "objects", -@@ -330,7 +330,7 @@ $config{sdirs} = [ - "cms", "ts", "srp", "cmac", "ct", "async", "kdf", "store" - ]; - # test/ subdirectories to build --$config{tdirs} = [ "ossl_shim" ]; -+$config{tdirs} = []; - - # Known TLS and DTLS protocols - my @tls = qw(ssl3 tls1 tls1_1 tls1_2 tls1_3); diff --git a/package/libs/openssl/patches/140-allow-prefer-chacha20.patch b/package/libs/openssl/patches/140-allow-prefer-chacha20.patch index 99afd9acf..43fd92e38 100644 --- a/package/libs/openssl/patches/140-allow-prefer-chacha20.patch +++ b/package/libs/openssl/patches/140-allow-prefer-chacha20.patch @@ -14,30 +14,9 @@ when the client has it on top of its ciphersuite preference. Signed-off-by: Eneas U de Queiroz ---- a/include/openssl/ssl.h -+++ b/include/openssl/ssl.h -@@ -173,9 +173,15 @@ extern "C" { - # define SSL_DEFAULT_CIPHER_LIST "ALL:!COMPLEMENTOFDEFAULT:!eNULL" - /* This is the default set of TLSv1.3 ciphersuites */ - # if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) --# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ -- "TLS_CHACHA20_POLY1305_SHA256:" \ -- "TLS_AES_128_GCM_SHA256" -+# ifdef OPENSSL_PREFER_CHACHA_OVER_GCM -+# define TLS_DEFAULT_CIPHERSUITES "TLS_CHACHA20_POLY1305_SHA256:" \ -+ "TLS_AES_256_GCM_SHA384:" \ -+ "TLS_AES_128_GCM_SHA256" -+# else -+# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ -+ "TLS_CHACHA20_POLY1305_SHA256:" \ -+ "TLS_AES_128_GCM_SHA256" -+# endif - # else - # define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ - "TLS_AES_128_GCM_SHA256" --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c -@@ -1465,11 +1465,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ +@@ -1505,11 +1505,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_DEL, -1, &head, &tail); @@ -67,7 +46,7 @@ Signed-off-by: Eneas U de Queiroz /* * ...and generally, our preferred cipher is AES. -@@ -1525,7 +1543,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ +@@ -1564,7 +1582,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ * Within each group, ciphers remain sorted by strength and previous * preference, i.e., * 1) ECDHE > DHE @@ -76,3 +55,38 @@ Signed-off-by: Eneas U de Queiroz * 3) AES > rest * 4) TLS 1.2 > legacy * +@@ -2235,7 +2253,13 @@ const char *OSSL_default_cipher_list(voi + */ + const char *OSSL_default_ciphersuites(void) + { ++#ifdef OPENSSL_PREFER_CHACHA_OVER_GCM ++ return "TLS_CHACHA20_POLY1305_SHA256:" ++ "TLS_AES_256_GCM_SHA384:" ++ "TLS_AES_128_GCM_SHA256"; ++#else + return "TLS_AES_256_GCM_SHA384:" + "TLS_CHACHA20_POLY1305_SHA256:" + "TLS_AES_128_GCM_SHA256"; ++#endif + } +--- a/include/openssl/ssl.h.in ++++ b/include/openssl/ssl.h.in +@@ -195,9 +195,15 @@ extern "C" { + * DEPRECATED IN 3.0.0, in favor of OSSL_default_ciphersuites() + * Update both macro and function simultaneously + */ +-# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ +- "TLS_CHACHA20_POLY1305_SHA256:" \ +- "TLS_AES_128_GCM_SHA256" ++# ifdef OPENSSL_PREFER_CHACHA_OVER_GCM ++# define TLS_DEFAULT_CIPHERSUITES "TLS_CHACHA20_POLY1305_SHA256:" \ ++ "TLS_AES_256_GCM_SHA384:" \ ++ "TLS_AES_128_GCM_SHA256" ++# else ++# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ ++ "TLS_CHACHA20_POLY1305_SHA256:" \ ++ "TLS_AES_128_GCM_SHA256" ++# endif + # endif + /* + * As of OpenSSL 1.0.0, ssl_create_cipher_list() in ssl/ssl_ciph.c always diff --git a/package/libs/openssl/patches/150-openssl.cnf-add-engines-conf.patch b/package/libs/openssl/patches/150-openssl.cnf-add-engines-conf.patch index fa92fbe2a..9fe9cdf59 100644 --- a/package/libs/openssl/patches/150-openssl.cnf-add-engines-conf.patch +++ b/package/libs/openssl/patches/150-openssl.cnf-add-engines-conf.patch @@ -10,20 +10,32 @@ Signed-off-by: Eneas U de Queiroz --- a/apps/openssl.cnf +++ b/apps/openssl.cnf -@@ -22,6 +22,16 @@ oid_section = new_oids - # (Alternatively, use a configuration file that has only - # X.509v3 extensions in its main [= default] section.) +@@ -52,10 +52,13 @@ tsa_policy3 = 1.2.3.4.5.7 -+openssl_conf=openssl_conf + [openssl_init] + providers = provider_sect ++engines = engines_sect + + # List of providers to load + [provider_sect] + default = default_sect ++.include /var/etc/ssl/providers.cnf + -+[openssl_conf] -+engines=engines + # The fips section name should match the section name inside the + # included fipsmodule.cnf. + # fips = fips_sect +@@ -69,7 +72,13 @@ default = default_sect + # OpenSSL may not work correctly which could lead to significant system + # problems including inability to remotely access the system. + [default_sect] +-# activate = 1 ++activate = 1 + -+[engines] ++[engines_sect] +.include /var/etc/ssl/engines.cnf + -+.include /etc/ssl/engines.cnf.d ++.include /etc/ssl/modules.cnf.d + - [ new_oids ] - # We can add new OIDs in here for use by 'ca', 'req' and 'ts'. + + #################################################################### diff --git a/package/libs/openssl/patches/400-eng_devcrypto-save-ioctl-if-EVP_MD_.FLAG_ONESHOT.patch b/package/libs/openssl/patches/400-eng_devcrypto-save-ioctl-if-EVP_MD_.FLAG_ONESHOT.patch deleted file mode 100644 index ed8204c33..000000000 --- a/package/libs/openssl/patches/400-eng_devcrypto-save-ioctl-if-EVP_MD_.FLAG_ONESHOT.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Mon, 5 Nov 2018 15:54:17 -0200 -Subject: eng_devcrypto: save ioctl if EVP_MD_..FLAG_ONESHOT - -Since each ioctl causes a context switch, slowing things down, if -EVP_MD_CTX_FLAG_ONESHOT is set, then: - - call the ioctl in digest_update, saving the result; and - - just copy the result in digest_final, instead of using another ioctl. - -Signed-off-by: Eneas U de Queiroz - -Reviewed-by: Matthias St. Pierre -Reviewed-by: Richard Levitte -(Merged from https://github.com/openssl/openssl/pull/7585) - ---- a/crypto/engine/eng_devcrypto.c -+++ b/crypto/engine/eng_devcrypto.c -@@ -461,6 +461,7 @@ struct digest_ctx { - struct session_op sess; - /* This signals that the init function was called, not that it succeeded. */ - int init_called; -+ unsigned char digest_res[HASH_MAX_LEN]; - }; - - static const struct digest_data_st { -@@ -564,12 +565,15 @@ static int digest_update(EVP_MD_CTX *ctx - if (digest_ctx == NULL) - return 0; - -- if (digest_op(digest_ctx, data, count, NULL, COP_FLAG_UPDATE) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -+ if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -+ if (digest_op(digest_ctx, data, count, digest_ctx->digest_res, 0) >= 0) -+ return 1; -+ } else if (digest_op(digest_ctx, data, count, NULL, COP_FLAG_UPDATE) >= 0) { -+ return 1; - } - -- return 1; -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; - } - - static int digest_final(EVP_MD_CTX *ctx, unsigned char *md) -@@ -579,7 +583,10 @@ static int digest_final(EVP_MD_CTX *ctx, - - if (md == NULL || digest_ctx == NULL) - return 0; -- if (digest_op(digest_ctx, NULL, 0, md, COP_FLAG_FINAL) < 0) { -+ -+ if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -+ memcpy(md, digest_ctx->digest_res, EVP_MD_CTX_size(ctx)); -+ } else if (digest_op(digest_ctx, NULL, 0, md, COP_FLAG_FINAL) < 0) { - SYSerr(SYS_F_IOCTL, errno); - return 0; - } diff --git a/package/libs/openssl/patches/410-eng_devcrypto-add-configuration-options.patch b/package/libs/openssl/patches/410-eng_devcrypto-add-configuration-options.patch deleted file mode 100644 index bad7a3725..000000000 --- a/package/libs/openssl/patches/410-eng_devcrypto-add-configuration-options.patch +++ /dev/null @@ -1,566 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Sat, 3 Nov 2018 15:41:10 -0300 -Subject: eng_devcrypto: add configuration options - -USE_SOFTDRIVERS: whether to use software (not accelerated) drivers -CIPHERS: list of ciphers to enable -DIGESTS: list of digests to enable - -Signed-off-by: Eneas U de Queiroz - -Reviewed-by: Matthias St. Pierre -Reviewed-by: Richard Levitte -(Merged from https://github.com/openssl/openssl/pull/7585) - ---- a/crypto/engine/eng_devcrypto.c -+++ b/crypto/engine/eng_devcrypto.c -@@ -16,6 +16,7 @@ - #include - #include - -+#include - #include - #include - #include -@@ -36,6 +37,30 @@ - * saner... why re-open /dev/crypto for every session? - */ - static int cfd; -+#define DEVCRYPTO_REQUIRE_ACCELERATED 0 /* require confirmation of acceleration */ -+#define DEVCRYPTO_USE_SOFTWARE 1 /* allow software drivers */ -+#define DEVCRYPTO_REJECT_SOFTWARE 2 /* only disallow confirmed software drivers */ -+ -+#define DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS DEVCRYPTO_REJECT_SOFTWARE -+static int use_softdrivers = DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS; -+ -+/* -+ * cipher/digest status & acceleration definitions -+ * Make sure the defaults are set to 0 -+ */ -+struct driver_info_st { -+ enum devcrypto_status_t { -+ DEVCRYPTO_STATUS_UNUSABLE = -1, /* session open failed */ -+ DEVCRYPTO_STATUS_UNKNOWN = 0, /* not tested yet */ -+ DEVCRYPTO_STATUS_USABLE = 1 /* algo can be used */ -+ } status; -+ -+ enum devcrypto_accelerated_t { -+ DEVCRYPTO_NOT_ACCELERATED = -1, /* software implemented */ -+ DEVCRYPTO_ACCELERATION_UNKNOWN = 0, /* acceleration support unkown */ -+ DEVCRYPTO_ACCELERATED = 1 /* hardware accelerated */ -+ } accelerated; -+}; - - static int clean_devcrypto_session(struct session_op *sess) { - if (ioctl(cfd, CIOCFSESSION, &sess->ses) < 0) { -@@ -119,13 +144,22 @@ static const struct cipher_data_st { - #endif - }; - --static size_t get_cipher_data_index(int nid) -+static size_t find_cipher_data_index(int nid) - { - size_t i; - - for (i = 0; i < OSSL_NELEM(cipher_data); i++) - if (nid == cipher_data[i].nid) - return i; -+ return (size_t)-1; -+} -+ -+static size_t get_cipher_data_index(int nid) -+{ -+ size_t i = find_cipher_data_index(nid); -+ -+ if (i != (size_t)-1) -+ return i; - - /* - * Code further down must make sure that only NIDs in the table above -@@ -333,19 +367,40 @@ static int cipher_cleanup(EVP_CIPHER_CTX - } - - /* -- * Keep a table of known nids and associated methods. -+ * Keep tables of known nids, associated methods, selected ciphers, and driver -+ * info. - * Note that known_cipher_nids[] isn't necessarily indexed the same way as -- * cipher_data[] above, which known_cipher_methods[] is. -+ * cipher_data[] above, which the other tables are. - */ - static int known_cipher_nids[OSSL_NELEM(cipher_data)]; - static int known_cipher_nids_amount = -1; /* -1 indicates not yet initialised */ - static EVP_CIPHER *known_cipher_methods[OSSL_NELEM(cipher_data)] = { NULL, }; -+static int selected_ciphers[OSSL_NELEM(cipher_data)]; -+static struct driver_info_st cipher_driver_info[OSSL_NELEM(cipher_data)]; -+ -+ -+static int devcrypto_test_cipher(size_t cipher_data_index) -+{ -+ return (cipher_driver_info[cipher_data_index].status == DEVCRYPTO_STATUS_USABLE -+ && selected_ciphers[cipher_data_index] == 1 -+ && (cipher_driver_info[cipher_data_index].accelerated -+ == DEVCRYPTO_ACCELERATED -+ || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -+ || (cipher_driver_info[cipher_data_index].accelerated -+ != DEVCRYPTO_NOT_ACCELERATED -+ && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); -+} - - static void prepare_cipher_methods(void) - { - size_t i; - struct session_op sess; - unsigned long cipher_mode; -+#ifdef CIOCGSESSINFO -+ struct session_info_op siop; -+#endif -+ -+ memset(&cipher_driver_info, 0, sizeof(cipher_driver_info)); - - memset(&sess, 0, sizeof(sess)); - sess.key = (void *)"01234567890123456789012345678901234567890123456789"; -@@ -353,15 +408,16 @@ static void prepare_cipher_methods(void) - for (i = 0, known_cipher_nids_amount = 0; - i < OSSL_NELEM(cipher_data); i++) { - -+ selected_ciphers[i] = 1; - /* -- * Check that the algo is really availably by trying to open and close -- * a session. -+ * Check that the cipher is usable - */ - sess.cipher = cipher_data[i].devcryptoid; - sess.keylen = cipher_data[i].keylen; -- if (ioctl(cfd, CIOCGSESSION, &sess) < 0 -- || ioctl(cfd, CIOCFSESSION, &sess.ses) < 0) -+ if (ioctl(cfd, CIOCGSESSION, &sess) < 0) { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; - continue; -+ } - - cipher_mode = cipher_data[i].flags & EVP_CIPH_MODE; - -@@ -387,15 +443,41 @@ static void prepare_cipher_methods(void) - cipher_cleanup) - || !EVP_CIPHER_meth_set_impl_ctx_size(known_cipher_methods[i], - sizeof(struct cipher_ctx))) { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; - EVP_CIPHER_meth_free(known_cipher_methods[i]); - known_cipher_methods[i] = NULL; - } else { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; -+#ifdef CIOCGSESSINFO -+ siop.ses = sess.ses; -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) -+ cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -+ else if (!(siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY)) -+ cipher_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ else -+ cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+#endif /* CIOCGSESSINFO */ -+ } -+ ioctl(cfd, CIOCFSESSION, &sess.ses); -+ if (devcrypto_test_cipher(i)) { - known_cipher_nids[known_cipher_nids_amount++] = - cipher_data[i].nid; - } - } - } - -+static void rebuild_known_cipher_nids(ENGINE *e) -+{ -+ size_t i; -+ -+ for (i = 0, known_cipher_nids_amount = 0; i < OSSL_NELEM(cipher_data); i++) { -+ if (devcrypto_test_cipher(i)) -+ known_cipher_nids[known_cipher_nids_amount++] = cipher_data[i].nid; -+ } -+ ENGINE_unregister_ciphers(e); -+ ENGINE_register_ciphers(e); -+} -+ - static const EVP_CIPHER *get_cipher_method(int nid) - { - size_t i = get_cipher_data_index(nid); -@@ -438,6 +520,36 @@ static int devcrypto_ciphers(ENGINE *e, - return *cipher != NULL; - } - -+static void devcrypto_select_all_ciphers(int *cipher_list) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) -+ cipher_list[i] = 1; -+} -+ -+static int cryptodev_select_cipher_cb(const char *str, int len, void *usr) -+{ -+ int *cipher_list = (int *)usr; -+ char *name; -+ const EVP_CIPHER *EVP; -+ size_t i; -+ -+ if (len == 0) -+ return 1; -+ if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -+ return 0; -+ EVP = EVP_get_cipherbyname(name); -+ if (EVP == NULL) -+ fprintf(stderr, "devcrypto: unknown cipher %s\n", name); -+ else if ((i = find_cipher_data_index(EVP_CIPHER_nid(EVP))) != (size_t)-1) -+ cipher_list[i] = 1; -+ else -+ fprintf(stderr, "devcrypto: cipher %s not available\n", name); -+ OPENSSL_free(name); -+ return 1; -+} -+ - /* - * We only support digests if the cryptodev implementation supports multiple - * data updates and session copying. Otherwise, we would be forced to maintain -@@ -493,13 +605,22 @@ static const struct digest_data_st { - #endif - }; - --static size_t get_digest_data_index(int nid) -+static size_t find_digest_data_index(int nid) - { - size_t i; - - for (i = 0; i < OSSL_NELEM(digest_data); i++) - if (nid == digest_data[i].nid) - return i; -+ return (size_t)-1; -+} -+ -+static size_t get_digest_data_index(int nid) -+{ -+ size_t i = find_digest_data_index(nid); -+ -+ if (i != (size_t)-1) -+ return i; - - /* - * Code further down must make sure that only NIDs in the table above -@@ -516,8 +637,8 @@ static const struct digest_data_st *get_ - } - - /* -- * Following are the four necessary functions to map OpenSSL functionality -- * with cryptodev. -+ * Following are the five necessary functions to map OpenSSL functionality -+ * with cryptodev: init, update, final, cleanup, and copy. - */ - - static int digest_init(EVP_MD_CTX *ctx) -@@ -630,52 +751,94 @@ static int digest_cleanup(EVP_MD_CTX *ct - return clean_devcrypto_session(&digest_ctx->sess); - } - --static int devcrypto_test_digest(size_t digest_data_index) --{ -- struct session_op sess1, sess2; -- struct cphash_op cphash; -- int ret=0; -- -- memset(&sess1, 0, sizeof(sess1)); -- memset(&sess2, 0, sizeof(sess2)); -- sess1.mac = digest_data[digest_data_index].devcryptoid; -- if (ioctl(cfd, CIOCGSESSION, &sess1) < 0) -- return 0; -- /* Make sure the driver is capable of hash state copy */ -- sess2.mac = sess1.mac; -- if (ioctl(cfd, CIOCGSESSION, &sess2) >= 0) { -- cphash.src_ses = sess1.ses; -- cphash.dst_ses = sess2.ses; -- if (ioctl(cfd, CIOCCPHASH, &cphash) >= 0) -- ret = 1; -- ioctl(cfd, CIOCFSESSION, &sess2.ses); -- } -- ioctl(cfd, CIOCFSESSION, &sess1.ses); -- return ret; --} -- - /* -- * Keep a table of known nids and associated methods. -+ * Keep tables of known nids, associated methods, selected digests, and -+ * driver info. - * Note that known_digest_nids[] isn't necessarily indexed the same way as -- * digest_data[] above, which known_digest_methods[] is. -+ * digest_data[] above, which the other tables are. - */ - static int known_digest_nids[OSSL_NELEM(digest_data)]; - static int known_digest_nids_amount = -1; /* -1 indicates not yet initialised */ - static EVP_MD *known_digest_methods[OSSL_NELEM(digest_data)] = { NULL, }; -+static int selected_digests[OSSL_NELEM(digest_data)]; -+static struct driver_info_st digest_driver_info[OSSL_NELEM(digest_data)]; -+ -+static int devcrypto_test_digest(size_t digest_data_index) -+{ -+ return (digest_driver_info[digest_data_index].status == DEVCRYPTO_STATUS_USABLE -+ && selected_digests[digest_data_index] == 1 -+ && (digest_driver_info[digest_data_index].accelerated -+ == DEVCRYPTO_ACCELERATED -+ || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -+ || (digest_driver_info[digest_data_index].accelerated -+ != DEVCRYPTO_NOT_ACCELERATED -+ && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); -+} -+ -+static void rebuild_known_digest_nids(ENGINE *e) -+{ -+ size_t i; -+ -+ for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); i++) { -+ if (devcrypto_test_digest(i)) -+ known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -+ } -+ ENGINE_unregister_digests(e); -+ ENGINE_register_digests(e); -+} - - static void prepare_digest_methods(void) - { - size_t i; -+ struct session_op sess1, sess2; -+#ifdef CIOCGSESSINFO -+ struct session_info_op siop; -+#endif -+ struct cphash_op cphash; -+ -+ memset(&digest_driver_info, 0, sizeof(digest_driver_info)); -+ -+ memset(&sess1, 0, sizeof(sess1)); -+ memset(&sess2, 0, sizeof(sess2)); - - for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); - i++) { - -+ selected_digests[i] = 1; -+ - /* -- * Check that the algo is usable -+ * Check that the digest is usable - */ -- if (!devcrypto_test_digest(i)) -- continue; -+ sess1.mac = digest_data[i].devcryptoid; -+ sess2.ses = 0; -+ if (ioctl(cfd, CIOCGSESSION, &sess1) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ goto finish; -+ } - -+#ifdef CIOCGSESSINFO -+ /* gather hardware acceleration info from the driver */ -+ siop.ses = sess1.ses; -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) -+ digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -+ else if (siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY) -+ digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ else -+ digest_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+#endif -+ -+ /* digest must be capable of hash state copy */ -+ sess2.mac = sess1.mac; -+ if (ioctl(cfd, CIOCGSESSION, &sess2) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ goto finish; -+ } -+ cphash.src_ses = sess1.ses; -+ cphash.dst_ses = sess2.ses; -+ if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ goto finish; -+ } - if ((known_digest_methods[i] = EVP_MD_meth_new(digest_data[i].nid, - NID_undef)) == NULL - || !EVP_MD_meth_set_input_blocksize(known_digest_methods[i], -@@ -689,11 +852,18 @@ static void prepare_digest_methods(void) - || !EVP_MD_meth_set_cleanup(known_digest_methods[i], digest_cleanup) - || !EVP_MD_meth_set_app_datasize(known_digest_methods[i], - sizeof(struct digest_ctx))) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; - EVP_MD_meth_free(known_digest_methods[i]); - known_digest_methods[i] = NULL; -- } else { -- known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -+ goto finish; - } -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; -+finish: -+ ioctl(cfd, CIOCFSESSION, &sess1.ses); -+ if (sess2.ses != 0) -+ ioctl(cfd, CIOCFSESSION, &sess2.ses); -+ if (devcrypto_test_digest(i)) -+ known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; - } - } - -@@ -739,7 +909,153 @@ static int devcrypto_digests(ENGINE *e, - return *digest != NULL; - } - -+static void devcrypto_select_all_digests(int *digest_list) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) -+ digest_list[i] = 1; -+} -+ -+static int cryptodev_select_digest_cb(const char *str, int len, void *usr) -+{ -+ int *digest_list = (int *)usr; -+ char *name; -+ const EVP_MD *EVP; -+ size_t i; -+ -+ if (len == 0) -+ return 1; -+ if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -+ return 0; -+ EVP = EVP_get_digestbyname(name); -+ if (EVP == NULL) -+ fprintf(stderr, "devcrypto: unknown digest %s\n", name); -+ else if ((i = find_digest_data_index(EVP_MD_type(EVP))) != (size_t)-1) -+ digest_list[i] = 1; -+ else -+ fprintf(stderr, "devcrypto: digest %s not available\n", name); -+ OPENSSL_free(name); -+ return 1; -+} -+ -+#endif -+ -+/****************************************************************************** -+ * -+ * CONTROL COMMANDS -+ * -+ *****/ -+ -+#define DEVCRYPTO_CMD_USE_SOFTDRIVERS ENGINE_CMD_BASE -+#define DEVCRYPTO_CMD_CIPHERS (ENGINE_CMD_BASE + 1) -+#define DEVCRYPTO_CMD_DIGESTS (ENGINE_CMD_BASE + 2) -+#define DEVCRYPTO_CMD_DUMP_INFO (ENGINE_CMD_BASE + 3) -+ -+/* Helper macros for CPP string composition */ -+#ifndef OPENSSL_MSTR -+# define OPENSSL_MSTR_HELPER(x) #x -+# define OPENSSL_MSTR(x) OPENSSL_MSTR_HELPER(x) -+#endif -+ -+static const ENGINE_CMD_DEFN devcrypto_cmds[] = { -+#ifdef CIOCGSESSINFO -+ {DEVCRYPTO_CMD_USE_SOFTDRIVERS, -+ "USE_SOFTDRIVERS", -+ "specifies whether to use software (not accelerated) drivers (" -+ OPENSSL_MSTR(DEVCRYPTO_REQUIRE_ACCELERATED) "=use only accelerated drivers, " -+ OPENSSL_MSTR(DEVCRYPTO_USE_SOFTWARE) "=allow all drivers, " -+ OPENSSL_MSTR(DEVCRYPTO_REJECT_SOFTWARE) -+ "=use if acceleration can't be determined) [default=" -+ OPENSSL_MSTR(DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS) "]", -+ ENGINE_CMD_FLAG_NUMERIC}, -+#endif -+ -+ {DEVCRYPTO_CMD_CIPHERS, -+ "CIPHERS", -+ "either ALL, NONE, or a comma-separated list of ciphers to enable [default=ALL]", -+ ENGINE_CMD_FLAG_STRING}, -+ -+#ifdef IMPLEMENT_DIGEST -+ {DEVCRYPTO_CMD_DIGESTS, -+ "DIGESTS", -+ "either ALL, NONE, or a comma-separated list of digests to enable [default=ALL]", -+ ENGINE_CMD_FLAG_STRING}, -+#endif -+ -+ {0, NULL, NULL, 0} -+}; -+ -+static int devcrypto_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void)) -+{ -+ int *new_list; -+ switch (cmd) { -+#ifdef CIOCGSESSINFO -+ case DEVCRYPTO_CMD_USE_SOFTDRIVERS: -+ switch (i) { -+ case DEVCRYPTO_REQUIRE_ACCELERATED: -+ case DEVCRYPTO_USE_SOFTWARE: -+ case DEVCRYPTO_REJECT_SOFTWARE: -+ break; -+ default: -+ fprintf(stderr, "devcrypto: invalid value (%ld) for USE_SOFTDRIVERS\n", i); -+ return 0; -+ } -+ if (use_softdrivers == i) -+ return 1; -+ use_softdrivers = i; -+#ifdef IMPLEMENT_DIGEST -+ rebuild_known_digest_nids(e); - #endif -+ rebuild_known_cipher_nids(e); -+ return 1; -+#endif /* CIOCGSESSINFO */ -+ -+ case DEVCRYPTO_CMD_CIPHERS: -+ if (p == NULL) -+ return 1; -+ if (strcasecmp((const char *)p, "ALL") == 0) { -+ devcrypto_select_all_ciphers(selected_ciphers); -+ } else if (strcasecmp((const char*)p, "NONE") == 0) { -+ memset(selected_ciphers, 0, sizeof(selected_ciphers)); -+ } else { -+ new_list=OPENSSL_zalloc(sizeof(selected_ciphers)); -+ if (!CONF_parse_list(p, ',', 1, cryptodev_select_cipher_cb, new_list)) { -+ OPENSSL_free(new_list); -+ return 0; -+ } -+ memcpy(selected_ciphers, new_list, sizeof(selected_ciphers)); -+ OPENSSL_free(new_list); -+ } -+ rebuild_known_cipher_nids(e); -+ return 1; -+ -+#ifdef IMPLEMENT_DIGEST -+ case DEVCRYPTO_CMD_DIGESTS: -+ if (p == NULL) -+ return 1; -+ if (strcasecmp((const char *)p, "ALL") == 0) { -+ devcrypto_select_all_digests(selected_digests); -+ } else if (strcasecmp((const char*)p, "NONE") == 0) { -+ memset(selected_digests, 0, sizeof(selected_digests)); -+ } else { -+ new_list=OPENSSL_zalloc(sizeof(selected_digests)); -+ if (!CONF_parse_list(p, ',', 1, cryptodev_select_digest_cb, new_list)) { -+ OPENSSL_free(new_list); -+ return 0; -+ } -+ memcpy(selected_digests, new_list, sizeof(selected_digests)); -+ OPENSSL_free(new_list); -+ } -+ rebuild_known_digest_nids(e); -+ return 1; -+#endif /* IMPLEMENT_DIGEST */ -+ -+ default: -+ break; -+ } -+ return 0; -+} - - /****************************************************************************** - * -@@ -806,6 +1122,8 @@ void engine_load_devcrypto_int() - - if (!ENGINE_set_id(e, "devcrypto") - || !ENGINE_set_name(e, "/dev/crypto engine") -+ || !ENGINE_set_cmd_defns(e, devcrypto_cmds) -+ || !ENGINE_set_ctrl_function(e, devcrypto_ctrl) - - /* - * Asymmetric ciphers aren't well supported with /dev/crypto. Among the BSD diff --git a/package/libs/openssl/patches/420-eng_devcrypto-add-command-to-dump-driver-info.patch b/package/libs/openssl/patches/420-eng_devcrypto-add-command-to-dump-driver-info.patch deleted file mode 100644 index eee71c6c6..000000000 --- a/package/libs/openssl/patches/420-eng_devcrypto-add-command-to-dump-driver-info.patch +++ /dev/null @@ -1,273 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Tue, 6 Nov 2018 22:54:07 -0200 -Subject: eng_devcrypto: add command to dump driver info - -This is useful to determine the kernel driver running each algorithm. - -Signed-off-by: Eneas U de Queiroz - -Reviewed-by: Matthias St. Pierre -Reviewed-by: Richard Levitte -(Merged from https://github.com/openssl/openssl/pull/7585) - ---- a/crypto/engine/eng_devcrypto.c -+++ b/crypto/engine/eng_devcrypto.c -@@ -50,16 +50,20 @@ static int use_softdrivers = DEVCRYPTO_D - */ - struct driver_info_st { - enum devcrypto_status_t { -- DEVCRYPTO_STATUS_UNUSABLE = -1, /* session open failed */ -- DEVCRYPTO_STATUS_UNKNOWN = 0, /* not tested yet */ -- DEVCRYPTO_STATUS_USABLE = 1 /* algo can be used */ -+ DEVCRYPTO_STATUS_FAILURE = -3, /* unusable for other reason */ -+ DEVCRYPTO_STATUS_NO_CIOCCPHASH = -2, /* hash state copy not supported */ -+ DEVCRYPTO_STATUS_NO_CIOCGSESSION = -1, /* session open failed */ -+ DEVCRYPTO_STATUS_UNKNOWN = 0, /* not tested yet */ -+ DEVCRYPTO_STATUS_USABLE = 1 /* algo can be used */ - } status; - - enum devcrypto_accelerated_t { -- DEVCRYPTO_NOT_ACCELERATED = -1, /* software implemented */ -- DEVCRYPTO_ACCELERATION_UNKNOWN = 0, /* acceleration support unkown */ -- DEVCRYPTO_ACCELERATED = 1 /* hardware accelerated */ -+ DEVCRYPTO_NOT_ACCELERATED = -1, /* software implemented */ -+ DEVCRYPTO_ACCELERATION_UNKNOWN = 0, /* acceleration support unkown */ -+ DEVCRYPTO_ACCELERATED = 1 /* hardware accelerated */ - } accelerated; -+ -+ char *driver_name; - }; - - static int clean_devcrypto_session(struct session_op *sess) { -@@ -415,7 +419,7 @@ static void prepare_cipher_methods(void) - sess.cipher = cipher_data[i].devcryptoid; - sess.keylen = cipher_data[i].keylen; - if (ioctl(cfd, CIOCGSESSION, &sess) < 0) { -- cipher_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; - continue; - } - -@@ -443,19 +447,24 @@ static void prepare_cipher_methods(void) - cipher_cleanup) - || !EVP_CIPHER_meth_set_impl_ctx_size(known_cipher_methods[i], - sizeof(struct cipher_ctx))) { -- cipher_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; - EVP_CIPHER_meth_free(known_cipher_methods[i]); - known_cipher_methods[i] = NULL; - } else { - cipher_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; - #ifdef CIOCGSESSINFO - siop.ses = sess.ses; -- if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { - cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -- else if (!(siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY)) -- cipher_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -- else -- cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ } else { -+ cipher_driver_info[i].driver_name = -+ OPENSSL_strndup(siop.cipher_info.cra_driver_name, -+ CRYPTODEV_MAX_ALG_NAME); -+ if (!(siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY)) -+ cipher_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ else -+ cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ } - #endif /* CIOCGSESSINFO */ - } - ioctl(cfd, CIOCFSESSION, &sess.ses); -@@ -505,8 +514,11 @@ static void destroy_all_cipher_methods(v - { - size_t i; - -- for (i = 0; i < OSSL_NELEM(cipher_data); i++) -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) { - destroy_cipher_method(cipher_data[i].nid); -+ OPENSSL_free(cipher_driver_info[i].driver_name); -+ cipher_driver_info[i].driver_name = NULL; -+ } - } - - static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher, -@@ -550,6 +562,40 @@ static int cryptodev_select_cipher_cb(co - return 1; - } - -+static void dump_cipher_info(void) -+{ -+ size_t i; -+ const char *name; -+ -+ fprintf (stderr, "Information about ciphers supported by the /dev/crypto" -+ " engine:\n"); -+#ifndef CIOCGSESSINFO -+ fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); -+#endif -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) { -+ name = OBJ_nid2sn(cipher_data[i].nid); -+ fprintf (stderr, "Cipher %s, NID=%d, /dev/crypto info: id=%d, ", -+ name ? name : "unknown", cipher_data[i].nid, -+ cipher_data[i].devcryptoid); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION ) { -+ fprintf (stderr, "CIOCGSESSION (session open call) failed\n"); -+ continue; -+ } -+ fprintf (stderr, "driver=%s ", cipher_driver_info[i].driver_name ? -+ cipher_driver_info[i].driver_name : "unknown"); -+ if (cipher_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -+ fprintf(stderr, "(hw accelerated)"); -+ else if (cipher_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -+ fprintf(stderr, "(software)"); -+ else -+ fprintf(stderr, "(acceleration status unknown)"); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -+ fprintf (stderr, ". Cipher setup failed"); -+ fprintf(stderr, "\n"); -+ } -+ fprintf(stderr, "\n"); -+} -+ - /* - * We only support digests if the cryptodev implementation supports multiple - * data updates and session copying. Otherwise, we would be forced to maintain -@@ -812,31 +858,36 @@ static void prepare_digest_methods(void) - sess1.mac = digest_data[i].devcryptoid; - sess2.ses = 0; - if (ioctl(cfd, CIOCGSESSION, &sess1) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; - goto finish; - } - - #ifdef CIOCGSESSINFO - /* gather hardware acceleration info from the driver */ - siop.ses = sess1.ses; -- if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { - digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -- else if (siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY) -- digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -- else -- digest_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ } else { -+ digest_driver_info[i].driver_name = -+ OPENSSL_strndup(siop.hash_info.cra_driver_name, -+ CRYPTODEV_MAX_ALG_NAME); -+ if (siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY) -+ digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ else -+ digest_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ } - #endif - - /* digest must be capable of hash state copy */ - sess2.mac = sess1.mac; - if (ioctl(cfd, CIOCGSESSION, &sess2) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; - goto finish; - } - cphash.src_ses = sess1.ses; - cphash.dst_ses = sess2.ses; - if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCCPHASH; - goto finish; - } - if ((known_digest_methods[i] = EVP_MD_meth_new(digest_data[i].nid, -@@ -852,7 +903,7 @@ static void prepare_digest_methods(void) - || !EVP_MD_meth_set_cleanup(known_digest_methods[i], digest_cleanup) - || !EVP_MD_meth_set_app_datasize(known_digest_methods[i], - sizeof(struct digest_ctx))) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_UNUSABLE; -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; - EVP_MD_meth_free(known_digest_methods[i]); - known_digest_methods[i] = NULL; - goto finish; -@@ -894,8 +945,11 @@ static void destroy_all_digest_methods(v - { - size_t i; - -- for (i = 0; i < OSSL_NELEM(digest_data); i++) -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) { - destroy_digest_method(digest_data[i].nid); -+ OPENSSL_free(digest_driver_info[i].driver_name); -+ digest_driver_info[i].driver_name = NULL; -+ } - } - - static int devcrypto_digests(ENGINE *e, const EVP_MD **digest, -@@ -939,6 +993,43 @@ static int cryptodev_select_digest_cb(co - return 1; - } - -+static void dump_digest_info(void) -+{ -+ size_t i; -+ const char *name; -+ -+ fprintf (stderr, "Information about digests supported by the /dev/crypto" -+ " engine:\n"); -+#ifndef CIOCGSESSINFO -+ fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); -+#endif -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) { -+ name = OBJ_nid2sn(digest_data[i].nid); -+ fprintf (stderr, "Digest %s, NID=%d, /dev/crypto info: id=%d, driver=%s", -+ name ? name : "unknown", digest_data[i].nid, -+ digest_data[i].devcryptoid, -+ digest_driver_info[i].driver_name ? digest_driver_info[i].driver_name : "unknown"); -+ if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION) { -+ fprintf (stderr, ". CIOCGSESSION (session open) failed\n"); -+ continue; -+ } -+ if (digest_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -+ fprintf(stderr, " (hw accelerated)"); -+ else if (digest_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -+ fprintf(stderr, " (software)"); -+ else -+ fprintf(stderr, " (acceleration status unknown)"); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -+ fprintf (stderr, ". Cipher setup failed\n"); -+ else if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCCPHASH) -+ fprintf(stderr, ", CIOCCPHASH failed\n"); -+ else -+ fprintf(stderr, ", CIOCCPHASH capable\n"); -+ } -+ fprintf(stderr, "\n"); -+} -+ - #endif - - /****************************************************************************** -@@ -983,6 +1074,11 @@ static const ENGINE_CMD_DEFN devcrypto_c - ENGINE_CMD_FLAG_STRING}, - #endif - -+ {DEVCRYPTO_CMD_DUMP_INFO, -+ "DUMP_INFO", -+ "dump info about each algorithm to stderr; use 'openssl engine -pre DUMP_INFO devcrypto'", -+ ENGINE_CMD_FLAG_NO_INPUT}, -+ - {0, NULL, NULL, 0} - }; - -@@ -1051,6 +1147,13 @@ static int devcrypto_ctrl(ENGINE *e, int - return 1; - #endif /* IMPLEMENT_DIGEST */ - -+ case DEVCRYPTO_CMD_DUMP_INFO: -+ dump_cipher_info(); -+#ifdef IMPLEMENT_DIGEST -+ dump_digest_info(); -+#endif -+ return 1; -+ - default: - break; - } diff --git a/package/libs/openssl/patches/430-e_devcrypto-make-the-dev-crypto-engine-dynamic.patch b/package/libs/openssl/patches/430-e_devcrypto-make-the-dev-crypto-engine-dynamic.patch deleted file mode 100644 index 00c74972a..000000000 --- a/package/libs/openssl/patches/430-e_devcrypto-make-the-dev-crypto-engine-dynamic.patch +++ /dev/null @@ -1,2718 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Tue, 6 Nov 2018 10:57:03 -0200 -Subject: e_devcrypto: make the /dev/crypto engine dynamic - -Engine has been moved from crypto/engine/eng_devcrypto.c to -engines/e_devcrypto.c. - -Signed-off-by: Eneas U de Queiroz - ---- a/crypto/engine/build.info -+++ b/crypto/engine/build.info -@@ -6,6 +6,3 @@ SOURCE[../../libcrypto]=\ - tb_cipher.c tb_digest.c tb_pkmeth.c tb_asnmth.c tb_eckey.c \ - eng_openssl.c eng_cnf.c eng_dyn.c \ - eng_rdrand.c --IF[{- !$disabled{devcryptoeng} -}] -- SOURCE[../../libcrypto]=eng_devcrypto.c --ENDIF ---- a/crypto/init.c -+++ b/crypto/init.c -@@ -328,18 +328,6 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_ - engine_load_openssl_int(); - return 1; - } --# ifndef OPENSSL_NO_DEVCRYPTOENG --static CRYPTO_ONCE engine_devcrypto = CRYPTO_ONCE_STATIC_INIT; --DEFINE_RUN_ONCE_STATIC(ossl_init_engine_devcrypto) --{ --# ifdef OPENSSL_INIT_DEBUG -- fprintf(stderr, "OPENSSL_INIT: ossl_init_engine_devcrypto: " -- "engine_load_devcrypto_int()\n"); --# endif -- engine_load_devcrypto_int(); -- return 1; --} --# endif - - # ifndef OPENSSL_NO_RDRAND - static CRYPTO_ONCE engine_rdrand = CRYPTO_ONCE_STATIC_INIT; -@@ -364,6 +352,18 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_ - return 1; - } - # ifndef OPENSSL_NO_STATIC_ENGINE -+# ifndef OPENSSL_NO_DEVCRYPTOENG -+static CRYPTO_ONCE engine_devcrypto = CRYPTO_ONCE_STATIC_INIT; -+DEFINE_RUN_ONCE_STATIC(ossl_init_engine_devcrypto) -+{ -+# ifdef OPENSSL_INIT_DEBUG -+ fprintf(stderr, "OPENSSL_INIT: ossl_init_engine_devcrypto: " -+ "engine_load_devcrypto_int()\n"); -+# endif -+ engine_load_devcrypto_int(); -+ return 1; -+} -+# endif - # if !defined(OPENSSL_NO_HW) && !defined(OPENSSL_NO_HW_PADLOCK) - static CRYPTO_ONCE engine_padlock = CRYPTO_ONCE_STATIC_INIT; - DEFINE_RUN_ONCE_STATIC(ossl_init_engine_padlock) -@@ -704,11 +704,6 @@ int OPENSSL_init_crypto(uint64_t opts, c - if ((opts & OPENSSL_INIT_ENGINE_OPENSSL) - && !RUN_ONCE(&engine_openssl, ossl_init_engine_openssl)) - return 0; --# if !defined(OPENSSL_NO_HW) && !defined(OPENSSL_NO_DEVCRYPTOENG) -- if ((opts & OPENSSL_INIT_ENGINE_CRYPTODEV) -- && !RUN_ONCE(&engine_devcrypto, ossl_init_engine_devcrypto)) -- return 0; --# endif - # ifndef OPENSSL_NO_RDRAND - if ((opts & OPENSSL_INIT_ENGINE_RDRAND) - && !RUN_ONCE(&engine_rdrand, ossl_init_engine_rdrand)) -@@ -718,6 +713,11 @@ int OPENSSL_init_crypto(uint64_t opts, c - && !RUN_ONCE(&engine_dynamic, ossl_init_engine_dynamic)) - return 0; - # ifndef OPENSSL_NO_STATIC_ENGINE -+# ifndef OPENSSL_NO_DEVCRYPTOENG -+ if ((opts & OPENSSL_INIT_ENGINE_CRYPTODEV) -+ && !RUN_ONCE(&engine_devcrypto, ossl_init_engine_devcrypto)) -+ return 0; -+# endif - # if !defined(OPENSSL_NO_HW) && !defined(OPENSSL_NO_HW_PADLOCK) - if ((opts & OPENSSL_INIT_ENGINE_PADLOCK) - && !RUN_ONCE(&engine_padlock, ossl_init_engine_padlock)) ---- a/engines/build.info -+++ b/engines/build.info -@@ -11,6 +11,9 @@ IF[{- !$disabled{"engine"} -}] - IF[{- !$disabled{afalgeng} -}] - SOURCE[../libcrypto]=e_afalg.c - ENDIF -+ IF[{- !$disabled{"devcryptoeng"} -}] -+ SOURCE[../libcrypto]=e_devcrypto.c -+ ENDIF - ELSE - IF[{- !$disabled{hw} && !$disabled{'hw-padlock'} -}] - ENGINES=padlock -@@ -30,6 +33,12 @@ IF[{- !$disabled{"engine"} -}] - DEPEND[afalg]=../libcrypto - INCLUDE[afalg]= ../include - ENDIF -+ IF[{- !$disabled{"devcryptoeng"} -}] -+ ENGINES=devcrypto -+ SOURCE[devcrypto]=e_devcrypto.c -+ DEPEND[devcrypto]=../libcrypto -+ INCLUDE[devcrypto]=../include -+ ENDIF - - ENGINES_NO_INST=ossltest dasync - SOURCE[dasync]=e_dasync.c ---- a/crypto/engine/eng_devcrypto.c -+++ /dev/null -@@ -1,1277 +0,0 @@ --/* -- * Copyright 2017-2021 The OpenSSL Project Authors. All Rights Reserved. -- * -- * Licensed under the OpenSSL license (the "License"). You may not use -- * this file except in compliance with the License. You can obtain a copy -- * in the file LICENSE in the source distribution or at -- * https://www.openssl.org/source/license.html -- */ -- --#include "e_os.h" --#include --#include --#include --#include --#include --#include --#include -- --#include --#include --#include --#include --#include --#include -- --#include "crypto/engine.h" -- --/* #define ENGINE_DEVCRYPTO_DEBUG */ -- --#if CRYPTO_ALGORITHM_MIN < CRYPTO_ALGORITHM_MAX --# define CHECK_BSD_STYLE_MACROS --#endif -- --/* -- * ONE global file descriptor for all sessions. This allows operations -- * such as digest session data copying (see digest_copy()), but is also -- * saner... why re-open /dev/crypto for every session? -- */ --static int cfd; --#define DEVCRYPTO_REQUIRE_ACCELERATED 0 /* require confirmation of acceleration */ --#define DEVCRYPTO_USE_SOFTWARE 1 /* allow software drivers */ --#define DEVCRYPTO_REJECT_SOFTWARE 2 /* only disallow confirmed software drivers */ -- --#define DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS DEVCRYPTO_REJECT_SOFTWARE --static int use_softdrivers = DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS; -- --/* -- * cipher/digest status & acceleration definitions -- * Make sure the defaults are set to 0 -- */ --struct driver_info_st { -- enum devcrypto_status_t { -- DEVCRYPTO_STATUS_FAILURE = -3, /* unusable for other reason */ -- DEVCRYPTO_STATUS_NO_CIOCCPHASH = -2, /* hash state copy not supported */ -- DEVCRYPTO_STATUS_NO_CIOCGSESSION = -1, /* session open failed */ -- DEVCRYPTO_STATUS_UNKNOWN = 0, /* not tested yet */ -- DEVCRYPTO_STATUS_USABLE = 1 /* algo can be used */ -- } status; -- -- enum devcrypto_accelerated_t { -- DEVCRYPTO_NOT_ACCELERATED = -1, /* software implemented */ -- DEVCRYPTO_ACCELERATION_UNKNOWN = 0, /* acceleration support unkown */ -- DEVCRYPTO_ACCELERATED = 1 /* hardware accelerated */ -- } accelerated; -- -- char *driver_name; --}; -- --static int clean_devcrypto_session(struct session_op *sess) { -- if (ioctl(cfd, CIOCFSESSION, &sess->ses) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- memset(sess, 0, sizeof(struct session_op)); -- return 1; --} -- --/****************************************************************************** -- * -- * Ciphers -- * -- * Because they all do the same basic operation, we have only one set of -- * method functions for them all to share, and a mapping table between -- * NIDs and cryptodev IDs, with all the necessary size data. -- * -- *****/ -- --struct cipher_ctx { -- struct session_op sess; -- int op; /* COP_ENCRYPT or COP_DECRYPT */ -- unsigned long mode; /* EVP_CIPH_*_MODE */ -- -- /* to handle ctr mode being a stream cipher */ -- unsigned char partial[EVP_MAX_BLOCK_LENGTH]; -- unsigned int blocksize, num; --}; -- --static const struct cipher_data_st { -- int nid; -- int blocksize; -- int keylen; -- int ivlen; -- int flags; -- int devcryptoid; --} cipher_data[] = { --#ifndef OPENSSL_NO_DES -- { NID_des_cbc, 8, 8, 8, EVP_CIPH_CBC_MODE, CRYPTO_DES_CBC }, -- { NID_des_ede3_cbc, 8, 24, 8, EVP_CIPH_CBC_MODE, CRYPTO_3DES_CBC }, --#endif --#ifndef OPENSSL_NO_BF -- { NID_bf_cbc, 8, 16, 8, EVP_CIPH_CBC_MODE, CRYPTO_BLF_CBC }, --#endif --#ifndef OPENSSL_NO_CAST -- { NID_cast5_cbc, 8, 16, 8, EVP_CIPH_CBC_MODE, CRYPTO_CAST_CBC }, --#endif -- { NID_aes_128_cbc, 16, 128 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, -- { NID_aes_192_cbc, 16, 192 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, -- { NID_aes_256_cbc, 16, 256 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, --#ifndef OPENSSL_NO_RC4 -- { NID_rc4, 1, 16, 0, EVP_CIPH_STREAM_CIPHER, CRYPTO_ARC4 }, --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_AES_CTR) -- { NID_aes_128_ctr, 16, 128 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, -- { NID_aes_192_ctr, 16, 192 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, -- { NID_aes_256_ctr, 16, 256 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, --#endif --#if 0 /* Not yet supported */ -- { NID_aes_128_xts, 16, 128 / 8 * 2, 16, EVP_CIPH_XTS_MODE, CRYPTO_AES_XTS }, -- { NID_aes_256_xts, 16, 256 / 8 * 2, 16, EVP_CIPH_XTS_MODE, CRYPTO_AES_XTS }, --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_AES_ECB) -- { NID_aes_128_ecb, 16, 128 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, -- { NID_aes_192_ecb, 16, 192 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, -- { NID_aes_256_ecb, 16, 256 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, --#endif --#if 0 /* Not yet supported */ -- { NID_aes_128_gcm, 16, 128 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, -- { NID_aes_192_gcm, 16, 192 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, -- { NID_aes_256_gcm, 16, 256 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, --#endif --#ifndef OPENSSL_NO_CAMELLIA -- { NID_camellia_128_cbc, 16, 128 / 8, 16, EVP_CIPH_CBC_MODE, -- CRYPTO_CAMELLIA_CBC }, -- { NID_camellia_192_cbc, 16, 192 / 8, 16, EVP_CIPH_CBC_MODE, -- CRYPTO_CAMELLIA_CBC }, -- { NID_camellia_256_cbc, 16, 256 / 8, 16, EVP_CIPH_CBC_MODE, -- CRYPTO_CAMELLIA_CBC }, --#endif --}; -- --static size_t find_cipher_data_index(int nid) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(cipher_data); i++) -- if (nid == cipher_data[i].nid) -- return i; -- return (size_t)-1; --} -- --static size_t get_cipher_data_index(int nid) --{ -- size_t i = find_cipher_data_index(nid); -- -- if (i != (size_t)-1) -- return i; -- -- /* -- * Code further down must make sure that only NIDs in the table above -- * are used. If any other NID reaches this function, there's a grave -- * coding error further down. -- */ -- assert("Code that never should be reached" == NULL); -- return -1; --} -- --static const struct cipher_data_st *get_cipher_data(int nid) --{ -- return &cipher_data[get_cipher_data_index(nid)]; --} -- --/* -- * Following are the three necessary functions to map OpenSSL functionality -- * with cryptodev. -- */ -- --static int cipher_init(EVP_CIPHER_CTX *ctx, const unsigned char *key, -- const unsigned char *iv, int enc) --{ -- struct cipher_ctx *cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -- const struct cipher_data_st *cipher_d = -- get_cipher_data(EVP_CIPHER_CTX_nid(ctx)); -- -- /* cleanup a previous session */ -- if (cipher_ctx->sess.ses != 0 && -- clean_devcrypto_session(&cipher_ctx->sess) == 0) -- return 0; -- -- cipher_ctx->sess.cipher = cipher_d->devcryptoid; -- cipher_ctx->sess.keylen = cipher_d->keylen; -- cipher_ctx->sess.key = (void *)key; -- cipher_ctx->op = enc ? COP_ENCRYPT : COP_DECRYPT; -- cipher_ctx->mode = cipher_d->flags & EVP_CIPH_MODE; -- cipher_ctx->blocksize = cipher_d->blocksize; -- if (ioctl(cfd, CIOCGSESSION, &cipher_ctx->sess) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- -- return 1; --} -- --static int cipher_do_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, -- const unsigned char *in, size_t inl) --{ -- struct cipher_ctx *cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -- struct crypt_op cryp; -- unsigned char *iv = EVP_CIPHER_CTX_iv_noconst(ctx); --#if !defined(COP_FLAG_WRITE_IV) -- unsigned char saved_iv[EVP_MAX_IV_LENGTH]; -- const unsigned char *ivptr; -- size_t nblocks, ivlen; --#endif -- -- memset(&cryp, 0, sizeof(cryp)); -- cryp.ses = cipher_ctx->sess.ses; -- cryp.len = inl; -- cryp.src = (void *)in; -- cryp.dst = (void *)out; -- cryp.iv = (void *)iv; -- cryp.op = cipher_ctx->op; --#if !defined(COP_FLAG_WRITE_IV) -- cryp.flags = 0; -- -- ivlen = EVP_CIPHER_CTX_iv_length(ctx); -- if (ivlen > 0) -- switch (cipher_ctx->mode) { -- case EVP_CIPH_CBC_MODE: -- assert(inl >= ivlen); -- if (!EVP_CIPHER_CTX_encrypting(ctx)) { -- ivptr = in + inl - ivlen; -- memcpy(saved_iv, ivptr, ivlen); -- } -- break; -- -- case EVP_CIPH_CTR_MODE: -- break; -- -- default: /* should not happen */ -- return 0; -- } --#else -- cryp.flags = COP_FLAG_WRITE_IV; --#endif -- -- if (ioctl(cfd, CIOCCRYPT, &cryp) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- --#if !defined(COP_FLAG_WRITE_IV) -- if (ivlen > 0) -- switch (cipher_ctx->mode) { -- case EVP_CIPH_CBC_MODE: -- assert(inl >= ivlen); -- if (EVP_CIPHER_CTX_encrypting(ctx)) -- ivptr = out + inl - ivlen; -- else -- ivptr = saved_iv; -- -- memcpy(iv, ivptr, ivlen); -- break; -- -- case EVP_CIPH_CTR_MODE: -- nblocks = (inl + cipher_ctx->blocksize - 1) -- / cipher_ctx->blocksize; -- do { -- ivlen--; -- nblocks += iv[ivlen]; -- iv[ivlen] = (uint8_t) nblocks; -- nblocks >>= 8; -- } while (ivlen); -- break; -- -- default: /* should not happen */ -- return 0; -- } --#endif -- -- return 1; --} -- --static int ctr_do_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, -- const unsigned char *in, size_t inl) --{ -- struct cipher_ctx *cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -- size_t nblocks, len; -- -- /* initial partial block */ -- while (cipher_ctx->num && inl) { -- (*out++) = *(in++) ^ cipher_ctx->partial[cipher_ctx->num]; -- --inl; -- cipher_ctx->num = (cipher_ctx->num + 1) % cipher_ctx->blocksize; -- } -- -- /* full blocks */ -- if (inl > (unsigned int) cipher_ctx->blocksize) { -- nblocks = inl/cipher_ctx->blocksize; -- len = nblocks * cipher_ctx->blocksize; -- if (cipher_do_cipher(ctx, out, in, len) < 1) -- return 0; -- inl -= len; -- out += len; -- in += len; -- } -- -- /* final partial block */ -- if (inl) { -- memset(cipher_ctx->partial, 0, cipher_ctx->blocksize); -- if (cipher_do_cipher(ctx, cipher_ctx->partial, cipher_ctx->partial, -- cipher_ctx->blocksize) < 1) -- return 0; -- while (inl--) { -- out[cipher_ctx->num] = in[cipher_ctx->num] -- ^ cipher_ctx->partial[cipher_ctx->num]; -- cipher_ctx->num++; -- } -- } -- -- return 1; --} -- --static int cipher_ctrl(EVP_CIPHER_CTX *ctx, int type, int p1, void* p2) --{ -- struct cipher_ctx *cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -- EVP_CIPHER_CTX *to_ctx = (EVP_CIPHER_CTX *)p2; -- struct cipher_ctx *to_cipher_ctx; -- -- switch (type) { -- case EVP_CTRL_COPY: -- if (cipher_ctx == NULL) -- return 1; -- /* when copying the context, a new session needs to be initialized */ -- to_cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(to_ctx); -- memset(&to_cipher_ctx->sess, 0, sizeof(to_cipher_ctx->sess)); -- return cipher_init(to_ctx, cipher_ctx->sess.key, EVP_CIPHER_CTX_iv(ctx), -- (cipher_ctx->op == COP_ENCRYPT)); -- -- case EVP_CTRL_INIT: -- memset(&cipher_ctx->sess, 0, sizeof(cipher_ctx->sess)); -- return 1; -- -- default: -- break; -- } -- -- return -1; --} -- --static int cipher_cleanup(EVP_CIPHER_CTX *ctx) --{ -- struct cipher_ctx *cipher_ctx = -- (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -- -- return clean_devcrypto_session(&cipher_ctx->sess); --} -- --/* -- * Keep tables of known nids, associated methods, selected ciphers, and driver -- * info. -- * Note that known_cipher_nids[] isn't necessarily indexed the same way as -- * cipher_data[] above, which the other tables are. -- */ --static int known_cipher_nids[OSSL_NELEM(cipher_data)]; --static int known_cipher_nids_amount = -1; /* -1 indicates not yet initialised */ --static EVP_CIPHER *known_cipher_methods[OSSL_NELEM(cipher_data)] = { NULL, }; --static int selected_ciphers[OSSL_NELEM(cipher_data)]; --static struct driver_info_st cipher_driver_info[OSSL_NELEM(cipher_data)]; -- -- --static int devcrypto_test_cipher(size_t cipher_data_index) --{ -- return (cipher_driver_info[cipher_data_index].status == DEVCRYPTO_STATUS_USABLE -- && selected_ciphers[cipher_data_index] == 1 -- && (cipher_driver_info[cipher_data_index].accelerated -- == DEVCRYPTO_ACCELERATED -- || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -- || (cipher_driver_info[cipher_data_index].accelerated -- != DEVCRYPTO_NOT_ACCELERATED -- && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); --} -- --static void prepare_cipher_methods(void) --{ -- size_t i; -- struct session_op sess; -- unsigned long cipher_mode; --#ifdef CIOCGSESSINFO -- struct session_info_op siop; --#endif -- -- memset(&cipher_driver_info, 0, sizeof(cipher_driver_info)); -- -- memset(&sess, 0, sizeof(sess)); -- sess.key = (void *)"01234567890123456789012345678901234567890123456789"; -- -- for (i = 0, known_cipher_nids_amount = 0; -- i < OSSL_NELEM(cipher_data); i++) { -- -- selected_ciphers[i] = 1; -- /* -- * Check that the cipher is usable -- */ -- sess.cipher = cipher_data[i].devcryptoid; -- sess.keylen = cipher_data[i].keylen; -- if (ioctl(cfd, CIOCGSESSION, &sess) < 0) { -- cipher_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; -- continue; -- } -- -- cipher_mode = cipher_data[i].flags & EVP_CIPH_MODE; -- -- if ((known_cipher_methods[i] = -- EVP_CIPHER_meth_new(cipher_data[i].nid, -- cipher_mode == EVP_CIPH_CTR_MODE ? 1 : -- cipher_data[i].blocksize, -- cipher_data[i].keylen)) == NULL -- || !EVP_CIPHER_meth_set_iv_length(known_cipher_methods[i], -- cipher_data[i].ivlen) -- || !EVP_CIPHER_meth_set_flags(known_cipher_methods[i], -- cipher_data[i].flags -- | EVP_CIPH_CUSTOM_COPY -- | EVP_CIPH_CTRL_INIT -- | EVP_CIPH_FLAG_DEFAULT_ASN1) -- || !EVP_CIPHER_meth_set_init(known_cipher_methods[i], cipher_init) -- || !EVP_CIPHER_meth_set_do_cipher(known_cipher_methods[i], -- cipher_mode == EVP_CIPH_CTR_MODE ? -- ctr_do_cipher : -- cipher_do_cipher) -- || !EVP_CIPHER_meth_set_ctrl(known_cipher_methods[i], cipher_ctrl) -- || !EVP_CIPHER_meth_set_cleanup(known_cipher_methods[i], -- cipher_cleanup) -- || !EVP_CIPHER_meth_set_impl_ctx_size(known_cipher_methods[i], -- sizeof(struct cipher_ctx))) { -- cipher_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -- EVP_CIPHER_meth_free(known_cipher_methods[i]); -- known_cipher_methods[i] = NULL; -- } else { -- cipher_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; --#ifdef CIOCGSESSINFO -- siop.ses = sess.ses; -- if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { -- cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -- } else { -- cipher_driver_info[i].driver_name = -- OPENSSL_strndup(siop.cipher_info.cra_driver_name, -- CRYPTODEV_MAX_ALG_NAME); -- if (!(siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY)) -- cipher_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -- else -- cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -- } --#endif /* CIOCGSESSINFO */ -- } -- ioctl(cfd, CIOCFSESSION, &sess.ses); -- if (devcrypto_test_cipher(i)) { -- known_cipher_nids[known_cipher_nids_amount++] = -- cipher_data[i].nid; -- } -- } --} -- --static void rebuild_known_cipher_nids(ENGINE *e) --{ -- size_t i; -- -- for (i = 0, known_cipher_nids_amount = 0; i < OSSL_NELEM(cipher_data); i++) { -- if (devcrypto_test_cipher(i)) -- known_cipher_nids[known_cipher_nids_amount++] = cipher_data[i].nid; -- } -- ENGINE_unregister_ciphers(e); -- ENGINE_register_ciphers(e); --} -- --static const EVP_CIPHER *get_cipher_method(int nid) --{ -- size_t i = get_cipher_data_index(nid); -- -- if (i == (size_t)-1) -- return NULL; -- return known_cipher_methods[i]; --} -- --static int get_cipher_nids(const int **nids) --{ -- *nids = known_cipher_nids; -- return known_cipher_nids_amount; --} -- --static void destroy_cipher_method(int nid) --{ -- size_t i = get_cipher_data_index(nid); -- -- EVP_CIPHER_meth_free(known_cipher_methods[i]); -- known_cipher_methods[i] = NULL; --} -- --static void destroy_all_cipher_methods(void) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(cipher_data); i++) { -- destroy_cipher_method(cipher_data[i].nid); -- OPENSSL_free(cipher_driver_info[i].driver_name); -- cipher_driver_info[i].driver_name = NULL; -- } --} -- --static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher, -- const int **nids, int nid) --{ -- if (cipher == NULL) -- return get_cipher_nids(nids); -- -- *cipher = get_cipher_method(nid); -- -- return *cipher != NULL; --} -- --static void devcrypto_select_all_ciphers(int *cipher_list) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(cipher_data); i++) -- cipher_list[i] = 1; --} -- --static int cryptodev_select_cipher_cb(const char *str, int len, void *usr) --{ -- int *cipher_list = (int *)usr; -- char *name; -- const EVP_CIPHER *EVP; -- size_t i; -- -- if (len == 0) -- return 1; -- if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -- return 0; -- EVP = EVP_get_cipherbyname(name); -- if (EVP == NULL) -- fprintf(stderr, "devcrypto: unknown cipher %s\n", name); -- else if ((i = find_cipher_data_index(EVP_CIPHER_nid(EVP))) != (size_t)-1) -- cipher_list[i] = 1; -- else -- fprintf(stderr, "devcrypto: cipher %s not available\n", name); -- OPENSSL_free(name); -- return 1; --} -- --static void dump_cipher_info(void) --{ -- size_t i; -- const char *name; -- -- fprintf (stderr, "Information about ciphers supported by the /dev/crypto" -- " engine:\n"); --#ifndef CIOCGSESSINFO -- fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); --#endif -- for (i = 0; i < OSSL_NELEM(cipher_data); i++) { -- name = OBJ_nid2sn(cipher_data[i].nid); -- fprintf (stderr, "Cipher %s, NID=%d, /dev/crypto info: id=%d, ", -- name ? name : "unknown", cipher_data[i].nid, -- cipher_data[i].devcryptoid); -- if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION ) { -- fprintf (stderr, "CIOCGSESSION (session open call) failed\n"); -- continue; -- } -- fprintf (stderr, "driver=%s ", cipher_driver_info[i].driver_name ? -- cipher_driver_info[i].driver_name : "unknown"); -- if (cipher_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -- fprintf(stderr, "(hw accelerated)"); -- else if (cipher_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -- fprintf(stderr, "(software)"); -- else -- fprintf(stderr, "(acceleration status unknown)"); -- if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -- fprintf (stderr, ". Cipher setup failed"); -- fprintf(stderr, "\n"); -- } -- fprintf(stderr, "\n"); --} -- --/* -- * We only support digests if the cryptodev implementation supports multiple -- * data updates and session copying. Otherwise, we would be forced to maintain -- * a cache, which is perilous if there's a lot of data coming in (if someone -- * wants to checksum an OpenSSL tarball, for example). -- */ --#if defined(CIOCCPHASH) && defined(COP_FLAG_UPDATE) && defined(COP_FLAG_FINAL) --#define IMPLEMENT_DIGEST -- --/****************************************************************************** -- * -- * Digests -- * -- * Because they all do the same basic operation, we have only one set of -- * method functions for them all to share, and a mapping table between -- * NIDs and cryptodev IDs, with all the necessary size data. -- * -- *****/ -- --struct digest_ctx { -- struct session_op sess; -- /* This signals that the init function was called, not that it succeeded. */ -- int init_called; -- unsigned char digest_res[HASH_MAX_LEN]; --}; -- --static const struct digest_data_st { -- int nid; -- int blocksize; -- int digestlen; -- int devcryptoid; --} digest_data[] = { --#ifndef OPENSSL_NO_MD5 -- { NID_md5, /* MD5_CBLOCK */ 64, 16, CRYPTO_MD5 }, --#endif -- { NID_sha1, SHA_CBLOCK, 20, CRYPTO_SHA1 }, --#ifndef OPENSSL_NO_RMD160 --# if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_RIPEMD160) -- { NID_ripemd160, /* RIPEMD160_CBLOCK */ 64, 20, CRYPTO_RIPEMD160 }, --# endif --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_224) -- { NID_sha224, SHA256_CBLOCK, 224 / 8, CRYPTO_SHA2_224 }, --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_256) -- { NID_sha256, SHA256_CBLOCK, 256 / 8, CRYPTO_SHA2_256 }, --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_384) -- { NID_sha384, SHA512_CBLOCK, 384 / 8, CRYPTO_SHA2_384 }, --#endif --#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_512) -- { NID_sha512, SHA512_CBLOCK, 512 / 8, CRYPTO_SHA2_512 }, --#endif --}; -- --static size_t find_digest_data_index(int nid) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(digest_data); i++) -- if (nid == digest_data[i].nid) -- return i; -- return (size_t)-1; --} -- --static size_t get_digest_data_index(int nid) --{ -- size_t i = find_digest_data_index(nid); -- -- if (i != (size_t)-1) -- return i; -- -- /* -- * Code further down must make sure that only NIDs in the table above -- * are used. If any other NID reaches this function, there's a grave -- * coding error further down. -- */ -- assert("Code that never should be reached" == NULL); -- return -1; --} -- --static const struct digest_data_st *get_digest_data(int nid) --{ -- return &digest_data[get_digest_data_index(nid)]; --} -- --/* -- * Following are the five necessary functions to map OpenSSL functionality -- * with cryptodev: init, update, final, cleanup, and copy. -- */ -- --static int digest_init(EVP_MD_CTX *ctx) --{ -- struct digest_ctx *digest_ctx = -- (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -- const struct digest_data_st *digest_d = -- get_digest_data(EVP_MD_CTX_type(ctx)); -- -- digest_ctx->init_called = 1; -- -- memset(&digest_ctx->sess, 0, sizeof(digest_ctx->sess)); -- digest_ctx->sess.mac = digest_d->devcryptoid; -- if (ioctl(cfd, CIOCGSESSION, &digest_ctx->sess) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- -- return 1; --} -- --static int digest_op(struct digest_ctx *ctx, const void *src, size_t srclen, -- void *res, unsigned int flags) --{ -- struct crypt_op cryp; -- -- memset(&cryp, 0, sizeof(cryp)); -- cryp.ses = ctx->sess.ses; -- cryp.len = srclen; -- cryp.src = (void *)src; -- cryp.dst = NULL; -- cryp.mac = res; -- cryp.flags = flags; -- return ioctl(cfd, CIOCCRYPT, &cryp); --} -- --static int digest_update(EVP_MD_CTX *ctx, const void *data, size_t count) --{ -- struct digest_ctx *digest_ctx = -- (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -- -- if (count == 0) -- return 1; -- -- if (digest_ctx == NULL) -- return 0; -- -- if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -- if (digest_op(digest_ctx, data, count, digest_ctx->digest_res, 0) >= 0) -- return 1; -- } else if (digest_op(digest_ctx, data, count, NULL, COP_FLAG_UPDATE) >= 0) { -- return 1; -- } -- -- SYSerr(SYS_F_IOCTL, errno); -- return 0; --} -- --static int digest_final(EVP_MD_CTX *ctx, unsigned char *md) --{ -- struct digest_ctx *digest_ctx = -- (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -- -- if (md == NULL || digest_ctx == NULL) -- return 0; -- -- if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -- memcpy(md, digest_ctx->digest_res, EVP_MD_CTX_size(ctx)); -- } else if (digest_op(digest_ctx, NULL, 0, md, COP_FLAG_FINAL) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- -- return 1; --} -- --static int digest_copy(EVP_MD_CTX *to, const EVP_MD_CTX *from) --{ -- struct digest_ctx *digest_from = -- (struct digest_ctx *)EVP_MD_CTX_md_data(from); -- struct digest_ctx *digest_to = -- (struct digest_ctx *)EVP_MD_CTX_md_data(to); -- struct cphash_op cphash; -- -- if (digest_from == NULL || digest_from->init_called != 1) -- return 1; -- -- if (!digest_init(to)) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- -- cphash.src_ses = digest_from->sess.ses; -- cphash.dst_ses = digest_to->sess.ses; -- if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -- SYSerr(SYS_F_IOCTL, errno); -- return 0; -- } -- return 1; --} -- --static int digest_cleanup(EVP_MD_CTX *ctx) --{ -- struct digest_ctx *digest_ctx = -- (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -- -- if (digest_ctx == NULL) -- return 1; -- -- return clean_devcrypto_session(&digest_ctx->sess); --} -- --/* -- * Keep tables of known nids, associated methods, selected digests, and -- * driver info. -- * Note that known_digest_nids[] isn't necessarily indexed the same way as -- * digest_data[] above, which the other tables are. -- */ --static int known_digest_nids[OSSL_NELEM(digest_data)]; --static int known_digest_nids_amount = -1; /* -1 indicates not yet initialised */ --static EVP_MD *known_digest_methods[OSSL_NELEM(digest_data)] = { NULL, }; --static int selected_digests[OSSL_NELEM(digest_data)]; --static struct driver_info_st digest_driver_info[OSSL_NELEM(digest_data)]; -- --static int devcrypto_test_digest(size_t digest_data_index) --{ -- return (digest_driver_info[digest_data_index].status == DEVCRYPTO_STATUS_USABLE -- && selected_digests[digest_data_index] == 1 -- && (digest_driver_info[digest_data_index].accelerated -- == DEVCRYPTO_ACCELERATED -- || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -- || (digest_driver_info[digest_data_index].accelerated -- != DEVCRYPTO_NOT_ACCELERATED -- && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); --} -- --static void rebuild_known_digest_nids(ENGINE *e) --{ -- size_t i; -- -- for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); i++) { -- if (devcrypto_test_digest(i)) -- known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -- } -- ENGINE_unregister_digests(e); -- ENGINE_register_digests(e); --} -- --static void prepare_digest_methods(void) --{ -- size_t i; -- struct session_op sess1, sess2; --#ifdef CIOCGSESSINFO -- struct session_info_op siop; --#endif -- struct cphash_op cphash; -- -- memset(&digest_driver_info, 0, sizeof(digest_driver_info)); -- -- memset(&sess1, 0, sizeof(sess1)); -- memset(&sess2, 0, sizeof(sess2)); -- -- for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); -- i++) { -- -- selected_digests[i] = 1; -- -- /* -- * Check that the digest is usable -- */ -- sess1.mac = digest_data[i].devcryptoid; -- sess2.ses = 0; -- if (ioctl(cfd, CIOCGSESSION, &sess1) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; -- goto finish; -- } -- --#ifdef CIOCGSESSINFO -- /* gather hardware acceleration info from the driver */ -- siop.ses = sess1.ses; -- if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { -- digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -- } else { -- digest_driver_info[i].driver_name = -- OPENSSL_strndup(siop.hash_info.cra_driver_name, -- CRYPTODEV_MAX_ALG_NAME); -- if (siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY) -- digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -- else -- digest_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -- } --#endif -- -- /* digest must be capable of hash state copy */ -- sess2.mac = sess1.mac; -- if (ioctl(cfd, CIOCGSESSION, &sess2) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -- goto finish; -- } -- cphash.src_ses = sess1.ses; -- cphash.dst_ses = sess2.ses; -- if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCCPHASH; -- goto finish; -- } -- if ((known_digest_methods[i] = EVP_MD_meth_new(digest_data[i].nid, -- NID_undef)) == NULL -- || !EVP_MD_meth_set_input_blocksize(known_digest_methods[i], -- digest_data[i].blocksize) -- || !EVP_MD_meth_set_result_size(known_digest_methods[i], -- digest_data[i].digestlen) -- || !EVP_MD_meth_set_init(known_digest_methods[i], digest_init) -- || !EVP_MD_meth_set_update(known_digest_methods[i], digest_update) -- || !EVP_MD_meth_set_final(known_digest_methods[i], digest_final) -- || !EVP_MD_meth_set_copy(known_digest_methods[i], digest_copy) -- || !EVP_MD_meth_set_cleanup(known_digest_methods[i], digest_cleanup) -- || !EVP_MD_meth_set_app_datasize(known_digest_methods[i], -- sizeof(struct digest_ctx))) { -- digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -- EVP_MD_meth_free(known_digest_methods[i]); -- known_digest_methods[i] = NULL; -- goto finish; -- } -- digest_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; --finish: -- ioctl(cfd, CIOCFSESSION, &sess1.ses); -- if (sess2.ses != 0) -- ioctl(cfd, CIOCFSESSION, &sess2.ses); -- if (devcrypto_test_digest(i)) -- known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -- } --} -- --static const EVP_MD *get_digest_method(int nid) --{ -- size_t i = get_digest_data_index(nid); -- -- if (i == (size_t)-1) -- return NULL; -- return known_digest_methods[i]; --} -- --static int get_digest_nids(const int **nids) --{ -- *nids = known_digest_nids; -- return known_digest_nids_amount; --} -- --static void destroy_digest_method(int nid) --{ -- size_t i = get_digest_data_index(nid); -- -- EVP_MD_meth_free(known_digest_methods[i]); -- known_digest_methods[i] = NULL; --} -- --static void destroy_all_digest_methods(void) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(digest_data); i++) { -- destroy_digest_method(digest_data[i].nid); -- OPENSSL_free(digest_driver_info[i].driver_name); -- digest_driver_info[i].driver_name = NULL; -- } --} -- --static int devcrypto_digests(ENGINE *e, const EVP_MD **digest, -- const int **nids, int nid) --{ -- if (digest == NULL) -- return get_digest_nids(nids); -- -- *digest = get_digest_method(nid); -- -- return *digest != NULL; --} -- --static void devcrypto_select_all_digests(int *digest_list) --{ -- size_t i; -- -- for (i = 0; i < OSSL_NELEM(digest_data); i++) -- digest_list[i] = 1; --} -- --static int cryptodev_select_digest_cb(const char *str, int len, void *usr) --{ -- int *digest_list = (int *)usr; -- char *name; -- const EVP_MD *EVP; -- size_t i; -- -- if (len == 0) -- return 1; -- if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -- return 0; -- EVP = EVP_get_digestbyname(name); -- if (EVP == NULL) -- fprintf(stderr, "devcrypto: unknown digest %s\n", name); -- else if ((i = find_digest_data_index(EVP_MD_type(EVP))) != (size_t)-1) -- digest_list[i] = 1; -- else -- fprintf(stderr, "devcrypto: digest %s not available\n", name); -- OPENSSL_free(name); -- return 1; --} -- --static void dump_digest_info(void) --{ -- size_t i; -- const char *name; -- -- fprintf (stderr, "Information about digests supported by the /dev/crypto" -- " engine:\n"); --#ifndef CIOCGSESSINFO -- fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); --#endif -- -- for (i = 0; i < OSSL_NELEM(digest_data); i++) { -- name = OBJ_nid2sn(digest_data[i].nid); -- fprintf (stderr, "Digest %s, NID=%d, /dev/crypto info: id=%d, driver=%s", -- name ? name : "unknown", digest_data[i].nid, -- digest_data[i].devcryptoid, -- digest_driver_info[i].driver_name ? digest_driver_info[i].driver_name : "unknown"); -- if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION) { -- fprintf (stderr, ". CIOCGSESSION (session open) failed\n"); -- continue; -- } -- if (digest_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -- fprintf(stderr, " (hw accelerated)"); -- else if (digest_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -- fprintf(stderr, " (software)"); -- else -- fprintf(stderr, " (acceleration status unknown)"); -- if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -- fprintf (stderr, ". Cipher setup failed\n"); -- else if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCCPHASH) -- fprintf(stderr, ", CIOCCPHASH failed\n"); -- else -- fprintf(stderr, ", CIOCCPHASH capable\n"); -- } -- fprintf(stderr, "\n"); --} -- --#endif -- --/****************************************************************************** -- * -- * CONTROL COMMANDS -- * -- *****/ -- --#define DEVCRYPTO_CMD_USE_SOFTDRIVERS ENGINE_CMD_BASE --#define DEVCRYPTO_CMD_CIPHERS (ENGINE_CMD_BASE + 1) --#define DEVCRYPTO_CMD_DIGESTS (ENGINE_CMD_BASE + 2) --#define DEVCRYPTO_CMD_DUMP_INFO (ENGINE_CMD_BASE + 3) -- --/* Helper macros for CPP string composition */ --#ifndef OPENSSL_MSTR --# define OPENSSL_MSTR_HELPER(x) #x --# define OPENSSL_MSTR(x) OPENSSL_MSTR_HELPER(x) --#endif -- --static const ENGINE_CMD_DEFN devcrypto_cmds[] = { --#ifdef CIOCGSESSINFO -- {DEVCRYPTO_CMD_USE_SOFTDRIVERS, -- "USE_SOFTDRIVERS", -- "specifies whether to use software (not accelerated) drivers (" -- OPENSSL_MSTR(DEVCRYPTO_REQUIRE_ACCELERATED) "=use only accelerated drivers, " -- OPENSSL_MSTR(DEVCRYPTO_USE_SOFTWARE) "=allow all drivers, " -- OPENSSL_MSTR(DEVCRYPTO_REJECT_SOFTWARE) -- "=use if acceleration can't be determined) [default=" -- OPENSSL_MSTR(DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS) "]", -- ENGINE_CMD_FLAG_NUMERIC}, --#endif -- -- {DEVCRYPTO_CMD_CIPHERS, -- "CIPHERS", -- "either ALL, NONE, or a comma-separated list of ciphers to enable [default=ALL]", -- ENGINE_CMD_FLAG_STRING}, -- --#ifdef IMPLEMENT_DIGEST -- {DEVCRYPTO_CMD_DIGESTS, -- "DIGESTS", -- "either ALL, NONE, or a comma-separated list of digests to enable [default=ALL]", -- ENGINE_CMD_FLAG_STRING}, --#endif -- -- {DEVCRYPTO_CMD_DUMP_INFO, -- "DUMP_INFO", -- "dump info about each algorithm to stderr; use 'openssl engine -pre DUMP_INFO devcrypto'", -- ENGINE_CMD_FLAG_NO_INPUT}, -- -- {0, NULL, NULL, 0} --}; -- --static int devcrypto_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void)) --{ -- int *new_list; -- switch (cmd) { --#ifdef CIOCGSESSINFO -- case DEVCRYPTO_CMD_USE_SOFTDRIVERS: -- switch (i) { -- case DEVCRYPTO_REQUIRE_ACCELERATED: -- case DEVCRYPTO_USE_SOFTWARE: -- case DEVCRYPTO_REJECT_SOFTWARE: -- break; -- default: -- fprintf(stderr, "devcrypto: invalid value (%ld) for USE_SOFTDRIVERS\n", i); -- return 0; -- } -- if (use_softdrivers == i) -- return 1; -- use_softdrivers = i; --#ifdef IMPLEMENT_DIGEST -- rebuild_known_digest_nids(e); --#endif -- rebuild_known_cipher_nids(e); -- return 1; --#endif /* CIOCGSESSINFO */ -- -- case DEVCRYPTO_CMD_CIPHERS: -- if (p == NULL) -- return 1; -- if (strcasecmp((const char *)p, "ALL") == 0) { -- devcrypto_select_all_ciphers(selected_ciphers); -- } else if (strcasecmp((const char*)p, "NONE") == 0) { -- memset(selected_ciphers, 0, sizeof(selected_ciphers)); -- } else { -- new_list=OPENSSL_zalloc(sizeof(selected_ciphers)); -- if (!CONF_parse_list(p, ',', 1, cryptodev_select_cipher_cb, new_list)) { -- OPENSSL_free(new_list); -- return 0; -- } -- memcpy(selected_ciphers, new_list, sizeof(selected_ciphers)); -- OPENSSL_free(new_list); -- } -- rebuild_known_cipher_nids(e); -- return 1; -- --#ifdef IMPLEMENT_DIGEST -- case DEVCRYPTO_CMD_DIGESTS: -- if (p == NULL) -- return 1; -- if (strcasecmp((const char *)p, "ALL") == 0) { -- devcrypto_select_all_digests(selected_digests); -- } else if (strcasecmp((const char*)p, "NONE") == 0) { -- memset(selected_digests, 0, sizeof(selected_digests)); -- } else { -- new_list=OPENSSL_zalloc(sizeof(selected_digests)); -- if (!CONF_parse_list(p, ',', 1, cryptodev_select_digest_cb, new_list)) { -- OPENSSL_free(new_list); -- return 0; -- } -- memcpy(selected_digests, new_list, sizeof(selected_digests)); -- OPENSSL_free(new_list); -- } -- rebuild_known_digest_nids(e); -- return 1; --#endif /* IMPLEMENT_DIGEST */ -- -- case DEVCRYPTO_CMD_DUMP_INFO: -- dump_cipher_info(); --#ifdef IMPLEMENT_DIGEST -- dump_digest_info(); --#endif -- return 1; -- -- default: -- break; -- } -- return 0; --} -- --/****************************************************************************** -- * -- * LOAD / UNLOAD -- * -- *****/ -- --static int devcrypto_unload(ENGINE *e) --{ -- destroy_all_cipher_methods(); --#ifdef IMPLEMENT_DIGEST -- destroy_all_digest_methods(); --#endif -- -- close(cfd); -- -- return 1; --} --/* -- * This engine is always built into libcrypto, so it doesn't offer any -- * ability to be dynamically loadable. -- */ --void engine_load_devcrypto_int() --{ -- ENGINE *e = NULL; -- int fd; -- -- if ((fd = open("/dev/crypto", O_RDWR, 0)) < 0) { --#ifndef ENGINE_DEVCRYPTO_DEBUG -- if (errno != ENOENT) --#endif -- fprintf(stderr, "Could not open /dev/crypto: %s\n", strerror(errno)); -- return; -- } -- --#ifdef CRIOGET -- if (ioctl(fd, CRIOGET, &cfd) < 0) { -- fprintf(stderr, "Could not create crypto fd: %s\n", strerror(errno)); -- close(fd); -- cfd = -1; -- return; -- } -- close(fd); --#else -- cfd = fd; --#endif -- -- if ((e = ENGINE_new()) == NULL -- || !ENGINE_set_destroy_function(e, devcrypto_unload)) { -- ENGINE_free(e); -- /* -- * We know that devcrypto_unload() won't be called when one of the -- * above two calls have failed, so we close cfd explicitly here to -- * avoid leaking resources. -- */ -- close(cfd); -- return; -- } -- -- prepare_cipher_methods(); --#ifdef IMPLEMENT_DIGEST -- prepare_digest_methods(); --#endif -- -- if (!ENGINE_set_id(e, "devcrypto") -- || !ENGINE_set_name(e, "/dev/crypto engine") -- || !ENGINE_set_cmd_defns(e, devcrypto_cmds) -- || !ENGINE_set_ctrl_function(e, devcrypto_ctrl) -- --/* -- * Asymmetric ciphers aren't well supported with /dev/crypto. Among the BSD -- * implementations, it seems to only exist in FreeBSD, and regarding the -- * parameters in its crypt_kop, the manual crypto(4) has this to say: -- * -- * The semantics of these arguments are currently undocumented. -- * -- * Reading through the FreeBSD source code doesn't give much more than -- * their CRK_MOD_EXP implementation for ubsec. -- * -- * It doesn't look much better with cryptodev-linux. They have the crypt_kop -- * structure as well as the command (CRK_*) in cryptodev.h, but no support -- * seems to be implemented at all for the moment. -- * -- * At the time of writing, it seems impossible to write proper support for -- * FreeBSD's asym features without some very deep knowledge and access to -- * specific kernel modules. -- * -- * /Richard Levitte, 2017-05-11 -- */ --#if 0 --# ifndef OPENSSL_NO_RSA -- || !ENGINE_set_RSA(e, devcrypto_rsa) --# endif --# ifndef OPENSSL_NO_DSA -- || !ENGINE_set_DSA(e, devcrypto_dsa) --# endif --# ifndef OPENSSL_NO_DH -- || !ENGINE_set_DH(e, devcrypto_dh) --# endif --# ifndef OPENSSL_NO_EC -- || !ENGINE_set_EC(e, devcrypto_ec) --# endif --#endif -- || !ENGINE_set_ciphers(e, devcrypto_ciphers) --#ifdef IMPLEMENT_DIGEST -- || !ENGINE_set_digests(e, devcrypto_digests) --#endif -- ) { -- ENGINE_free(e); -- return; -- } -- -- ENGINE_add(e); -- ENGINE_free(e); /* Loose our local reference */ -- ERR_clear_error(); --} ---- /dev/null -+++ b/engines/e_devcrypto.c -@@ -0,0 +1,1327 @@ -+/* -+ * Copyright 2017-2021 The OpenSSL Project Authors. All Rights Reserved. -+ * -+ * Licensed under the OpenSSL license (the "License"). You may not use -+ * this file except in compliance with the License. You can obtain a copy -+ * in the file LICENSE in the source distribution or at -+ * https://www.openssl.org/source/license.html -+ */ -+ -+#include "../e_os.h" -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "crypto/engine.h" -+ -+/* #define ENGINE_DEVCRYPTO_DEBUG */ -+ -+#if CRYPTO_ALGORITHM_MIN < CRYPTO_ALGORITHM_MAX -+# define CHECK_BSD_STYLE_MACROS -+#endif -+ -+#define engine_devcrypto_id "devcrypto" -+ -+/* -+ * ONE global file descriptor for all sessions. This allows operations -+ * such as digest session data copying (see digest_copy()), but is also -+ * saner... why re-open /dev/crypto for every session? -+ */ -+static int cfd = -1; -+#define DEVCRYPTO_REQUIRE_ACCELERATED 0 /* require confirmation of acceleration */ -+#define DEVCRYPTO_USE_SOFTWARE 1 /* allow software drivers */ -+#define DEVCRYPTO_REJECT_SOFTWARE 2 /* only disallow confirmed software drivers */ -+ -+#define DEVCRYPTO_DEFAULT_USE_SOFTDRIVERS DEVCRYPTO_REJECT_SOFTWARE -+static int use_softdrivers = DEVCRYPTO_DEFAULT_USE_SOFTDRIVERS; -+ -+/* -+ * cipher/digest status & acceleration definitions -+ * Make sure the defaults are set to 0 -+ */ -+struct driver_info_st { -+ enum devcrypto_status_t { -+ DEVCRYPTO_STATUS_FAILURE = -3, /* unusable for other reason */ -+ DEVCRYPTO_STATUS_NO_CIOCCPHASH = -2, /* hash state copy not supported */ -+ DEVCRYPTO_STATUS_NO_CIOCGSESSION = -1, /* session open failed */ -+ DEVCRYPTO_STATUS_UNKNOWN = 0, /* not tested yet */ -+ DEVCRYPTO_STATUS_USABLE = 1 /* algo can be used */ -+ } status; -+ -+ enum devcrypto_accelerated_t { -+ DEVCRYPTO_NOT_ACCELERATED = -1, /* software implemented */ -+ DEVCRYPTO_ACCELERATION_UNKNOWN = 0, /* acceleration support unkown */ -+ DEVCRYPTO_ACCELERATED = 1 /* hardware accelerated */ -+ } accelerated; -+ -+ char *driver_name; -+}; -+ -+static int clean_devcrypto_session(struct session_op *sess) { -+ if (ioctl(cfd, CIOCFSESSION, &sess->ses) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ memset(sess, 0, sizeof(struct session_op)); -+ return 1; -+} -+ -+/****************************************************************************** -+ * -+ * Ciphers -+ * -+ * Because they all do the same basic operation, we have only one set of -+ * method functions for them all to share, and a mapping table between -+ * NIDs and cryptodev IDs, with all the necessary size data. -+ * -+ *****/ -+ -+struct cipher_ctx { -+ struct session_op sess; -+ int op; /* COP_ENCRYPT or COP_DECRYPT */ -+ unsigned long mode; /* EVP_CIPH_*_MODE */ -+ -+ /* to handle ctr mode being a stream cipher */ -+ unsigned char partial[EVP_MAX_BLOCK_LENGTH]; -+ unsigned int blocksize, num; -+}; -+ -+static const struct cipher_data_st { -+ int nid; -+ int blocksize; -+ int keylen; -+ int ivlen; -+ int flags; -+ int devcryptoid; -+} cipher_data[] = { -+#ifndef OPENSSL_NO_DES -+ { NID_des_cbc, 8, 8, 8, EVP_CIPH_CBC_MODE, CRYPTO_DES_CBC }, -+ { NID_des_ede3_cbc, 8, 24, 8, EVP_CIPH_CBC_MODE, CRYPTO_3DES_CBC }, -+#endif -+#ifndef OPENSSL_NO_BF -+ { NID_bf_cbc, 8, 16, 8, EVP_CIPH_CBC_MODE, CRYPTO_BLF_CBC }, -+#endif -+#ifndef OPENSSL_NO_CAST -+ { NID_cast5_cbc, 8, 16, 8, EVP_CIPH_CBC_MODE, CRYPTO_CAST_CBC }, -+#endif -+ { NID_aes_128_cbc, 16, 128 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, -+ { NID_aes_192_cbc, 16, 192 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, -+ { NID_aes_256_cbc, 16, 256 / 8, 16, EVP_CIPH_CBC_MODE, CRYPTO_AES_CBC }, -+#ifndef OPENSSL_NO_RC4 -+ { NID_rc4, 1, 16, 0, EVP_CIPH_STREAM_CIPHER, CRYPTO_ARC4 }, -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_AES_CTR) -+ { NID_aes_128_ctr, 16, 128 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, -+ { NID_aes_192_ctr, 16, 192 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, -+ { NID_aes_256_ctr, 16, 256 / 8, 16, EVP_CIPH_CTR_MODE, CRYPTO_AES_CTR }, -+#endif -+#if 0 /* Not yet supported */ -+ { NID_aes_128_xts, 16, 128 / 8 * 2, 16, EVP_CIPH_XTS_MODE, CRYPTO_AES_XTS }, -+ { NID_aes_256_xts, 16, 256 / 8 * 2, 16, EVP_CIPH_XTS_MODE, CRYPTO_AES_XTS }, -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_AES_ECB) -+ { NID_aes_128_ecb, 16, 128 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, -+ { NID_aes_192_ecb, 16, 192 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, -+ { NID_aes_256_ecb, 16, 256 / 8, 0, EVP_CIPH_ECB_MODE, CRYPTO_AES_ECB }, -+#endif -+#if 0 /* Not yet supported */ -+ { NID_aes_128_gcm, 16, 128 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, -+ { NID_aes_192_gcm, 16, 192 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, -+ { NID_aes_256_gcm, 16, 256 / 8, 16, EVP_CIPH_GCM_MODE, CRYPTO_AES_GCM }, -+#endif -+#ifndef OPENSSL_NO_CAMELLIA -+ { NID_camellia_128_cbc, 16, 128 / 8, 16, EVP_CIPH_CBC_MODE, -+ CRYPTO_CAMELLIA_CBC }, -+ { NID_camellia_192_cbc, 16, 192 / 8, 16, EVP_CIPH_CBC_MODE, -+ CRYPTO_CAMELLIA_CBC }, -+ { NID_camellia_256_cbc, 16, 256 / 8, 16, EVP_CIPH_CBC_MODE, -+ CRYPTO_CAMELLIA_CBC }, -+#endif -+}; -+ -+static size_t find_cipher_data_index(int nid) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) -+ if (nid == cipher_data[i].nid) -+ return i; -+ return (size_t)-1; -+} -+ -+static size_t get_cipher_data_index(int nid) -+{ -+ size_t i = find_cipher_data_index(nid); -+ -+ if (i != (size_t)-1) -+ return i; -+ -+ /* -+ * Code further down must make sure that only NIDs in the table above -+ * are used. If any other NID reaches this function, there's a grave -+ * coding error further down. -+ */ -+ assert("Code that never should be reached" == NULL); -+ return -1; -+} -+ -+static const struct cipher_data_st *get_cipher_data(int nid) -+{ -+ return &cipher_data[get_cipher_data_index(nid)]; -+} -+ -+/* -+ * Following are the three necessary functions to map OpenSSL functionality -+ * with cryptodev. -+ */ -+ -+static int cipher_init(EVP_CIPHER_CTX *ctx, const unsigned char *key, -+ const unsigned char *iv, int enc) -+{ -+ struct cipher_ctx *cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -+ const struct cipher_data_st *cipher_d = -+ get_cipher_data(EVP_CIPHER_CTX_nid(ctx)); -+ -+ /* cleanup a previous session */ -+ if (cipher_ctx->sess.ses != 0 && -+ clean_devcrypto_session(&cipher_ctx->sess) == 0) -+ return 0; -+ -+ cipher_ctx->sess.cipher = cipher_d->devcryptoid; -+ cipher_ctx->sess.keylen = cipher_d->keylen; -+ cipher_ctx->sess.key = (void *)key; -+ cipher_ctx->op = enc ? COP_ENCRYPT : COP_DECRYPT; -+ cipher_ctx->mode = cipher_d->flags & EVP_CIPH_MODE; -+ cipher_ctx->blocksize = cipher_d->blocksize; -+ if (ioctl(cfd, CIOCGSESSION, &cipher_ctx->sess) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ -+ return 1; -+} -+ -+static int cipher_do_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, -+ const unsigned char *in, size_t inl) -+{ -+ struct cipher_ctx *cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -+ struct crypt_op cryp; -+ unsigned char *iv = EVP_CIPHER_CTX_iv_noconst(ctx); -+#if !defined(COP_FLAG_WRITE_IV) -+ unsigned char saved_iv[EVP_MAX_IV_LENGTH]; -+ const unsigned char *ivptr; -+ size_t nblocks, ivlen; -+#endif -+ -+ memset(&cryp, 0, sizeof(cryp)); -+ cryp.ses = cipher_ctx->sess.ses; -+ cryp.len = inl; -+ cryp.src = (void *)in; -+ cryp.dst = (void *)out; -+ cryp.iv = (void *)iv; -+ cryp.op = cipher_ctx->op; -+#if !defined(COP_FLAG_WRITE_IV) -+ cryp.flags = 0; -+ -+ ivlen = EVP_CIPHER_CTX_iv_length(ctx); -+ if (ivlen > 0) -+ switch (cipher_ctx->mode) { -+ case EVP_CIPH_CBC_MODE: -+ assert(inl >= ivlen); -+ if (!EVP_CIPHER_CTX_encrypting(ctx)) { -+ ivptr = in + inl - ivlen; -+ memcpy(saved_iv, ivptr, ivlen); -+ } -+ break; -+ -+ case EVP_CIPH_CTR_MODE: -+ break; -+ -+ default: /* should not happen */ -+ return 0; -+ } -+#else -+ cryp.flags = COP_FLAG_WRITE_IV; -+#endif -+ -+ if (ioctl(cfd, CIOCCRYPT, &cryp) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ -+#if !defined(COP_FLAG_WRITE_IV) -+ if (ivlen > 0) -+ switch (cipher_ctx->mode) { -+ case EVP_CIPH_CBC_MODE: -+ assert(inl >= ivlen); -+ if (EVP_CIPHER_CTX_encrypting(ctx)) -+ ivptr = out + inl - ivlen; -+ else -+ ivptr = saved_iv; -+ -+ memcpy(iv, ivptr, ivlen); -+ break; -+ -+ case EVP_CIPH_CTR_MODE: -+ nblocks = (inl + cipher_ctx->blocksize - 1) -+ / cipher_ctx->blocksize; -+ do { -+ ivlen--; -+ nblocks += iv[ivlen]; -+ iv[ivlen] = (uint8_t) nblocks; -+ nblocks >>= 8; -+ } while (ivlen); -+ break; -+ -+ default: /* should not happen */ -+ return 0; -+ } -+#endif -+ -+ return 1; -+} -+ -+static int ctr_do_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, -+ const unsigned char *in, size_t inl) -+{ -+ struct cipher_ctx *cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -+ size_t nblocks, len; -+ -+ /* initial partial block */ -+ while (cipher_ctx->num && inl) { -+ (*out++) = *(in++) ^ cipher_ctx->partial[cipher_ctx->num]; -+ --inl; -+ cipher_ctx->num = (cipher_ctx->num + 1) % cipher_ctx->blocksize; -+ } -+ -+ /* full blocks */ -+ if (inl > (unsigned int) cipher_ctx->blocksize) { -+ nblocks = inl/cipher_ctx->blocksize; -+ len = nblocks * cipher_ctx->blocksize; -+ if (cipher_do_cipher(ctx, out, in, len) < 1) -+ return 0; -+ inl -= len; -+ out += len; -+ in += len; -+ } -+ -+ /* final partial block */ -+ if (inl) { -+ memset(cipher_ctx->partial, 0, cipher_ctx->blocksize); -+ if (cipher_do_cipher(ctx, cipher_ctx->partial, cipher_ctx->partial, -+ cipher_ctx->blocksize) < 1) -+ return 0; -+ while (inl--) { -+ out[cipher_ctx->num] = in[cipher_ctx->num] -+ ^ cipher_ctx->partial[cipher_ctx->num]; -+ cipher_ctx->num++; -+ } -+ } -+ -+ return 1; -+} -+ -+static int cipher_ctrl(EVP_CIPHER_CTX *ctx, int type, int p1, void* p2) -+{ -+ struct cipher_ctx *cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -+ EVP_CIPHER_CTX *to_ctx = (EVP_CIPHER_CTX *)p2; -+ struct cipher_ctx *to_cipher_ctx; -+ -+ switch (type) { -+ case EVP_CTRL_COPY: -+ if (cipher_ctx == NULL) -+ return 1; -+ /* when copying the context, a new session needs to be initialized */ -+ to_cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(to_ctx); -+ memset(&to_cipher_ctx->sess, 0, sizeof(to_cipher_ctx->sess)); -+ return cipher_init(to_ctx, cipher_ctx->sess.key, EVP_CIPHER_CTX_iv(ctx), -+ (cipher_ctx->op == COP_ENCRYPT)); -+ -+ case EVP_CTRL_INIT: -+ memset(&cipher_ctx->sess, 0, sizeof(cipher_ctx->sess)); -+ return 1; -+ -+ default: -+ break; -+ } -+ -+ return -1; -+} -+ -+static int cipher_cleanup(EVP_CIPHER_CTX *ctx) -+{ -+ struct cipher_ctx *cipher_ctx = -+ (struct cipher_ctx *)EVP_CIPHER_CTX_get_cipher_data(ctx); -+ -+ return clean_devcrypto_session(&cipher_ctx->sess); -+} -+ -+/* -+ * Keep tables of known nids, associated methods, selected ciphers, and driver -+ * info. -+ * Note that known_cipher_nids[] isn't necessarily indexed the same way as -+ * cipher_data[] above, which the other tables are. -+ */ -+static int known_cipher_nids[OSSL_NELEM(cipher_data)]; -+static int known_cipher_nids_amount = -1; /* -1 indicates not yet initialised */ -+static EVP_CIPHER *known_cipher_methods[OSSL_NELEM(cipher_data)] = { NULL, }; -+static int selected_ciphers[OSSL_NELEM(cipher_data)]; -+static struct driver_info_st cipher_driver_info[OSSL_NELEM(cipher_data)]; -+ -+ -+static int devcrypto_test_cipher(size_t cipher_data_index) -+{ -+ return (cipher_driver_info[cipher_data_index].status == DEVCRYPTO_STATUS_USABLE -+ && selected_ciphers[cipher_data_index] == 1 -+ && (cipher_driver_info[cipher_data_index].accelerated -+ == DEVCRYPTO_ACCELERATED -+ || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -+ || (cipher_driver_info[cipher_data_index].accelerated -+ != DEVCRYPTO_NOT_ACCELERATED -+ && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); -+} -+ -+static void prepare_cipher_methods(void) -+{ -+ size_t i; -+ struct session_op sess; -+ unsigned long cipher_mode; -+#ifdef CIOCGSESSINFO -+ struct session_info_op siop; -+#endif -+ -+ memset(&cipher_driver_info, 0, sizeof(cipher_driver_info)); -+ -+ memset(&sess, 0, sizeof(sess)); -+ sess.key = (void *)"01234567890123456789012345678901234567890123456789"; -+ -+ for (i = 0, known_cipher_nids_amount = 0; -+ i < OSSL_NELEM(cipher_data); i++) { -+ -+ selected_ciphers[i] = 1; -+ /* -+ * Check that the cipher is usable -+ */ -+ sess.cipher = cipher_data[i].devcryptoid; -+ sess.keylen = cipher_data[i].keylen; -+ if (ioctl(cfd, CIOCGSESSION, &sess) < 0) { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; -+ continue; -+ } -+ -+ cipher_mode = cipher_data[i].flags & EVP_CIPH_MODE; -+ -+ if ((known_cipher_methods[i] = -+ EVP_CIPHER_meth_new(cipher_data[i].nid, -+ cipher_mode == EVP_CIPH_CTR_MODE ? 1 : -+ cipher_data[i].blocksize, -+ cipher_data[i].keylen)) == NULL -+ || !EVP_CIPHER_meth_set_iv_length(known_cipher_methods[i], -+ cipher_data[i].ivlen) -+ || !EVP_CIPHER_meth_set_flags(known_cipher_methods[i], -+ cipher_data[i].flags -+ | EVP_CIPH_CUSTOM_COPY -+ | EVP_CIPH_CTRL_INIT -+ | EVP_CIPH_FLAG_DEFAULT_ASN1) -+ || !EVP_CIPHER_meth_set_init(known_cipher_methods[i], cipher_init) -+ || !EVP_CIPHER_meth_set_do_cipher(known_cipher_methods[i], -+ cipher_mode == EVP_CIPH_CTR_MODE ? -+ ctr_do_cipher : -+ cipher_do_cipher) -+ || !EVP_CIPHER_meth_set_ctrl(known_cipher_methods[i], cipher_ctrl) -+ || !EVP_CIPHER_meth_set_cleanup(known_cipher_methods[i], -+ cipher_cleanup) -+ || !EVP_CIPHER_meth_set_impl_ctx_size(known_cipher_methods[i], -+ sizeof(struct cipher_ctx))) { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -+ EVP_CIPHER_meth_free(known_cipher_methods[i]); -+ known_cipher_methods[i] = NULL; -+ } else { -+ cipher_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; -+#ifdef CIOCGSESSINFO -+ siop.ses = sess.ses; -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { -+ cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -+ } else { -+ cipher_driver_info[i].driver_name = -+ OPENSSL_strndup(siop.cipher_info.cra_driver_name, -+ CRYPTODEV_MAX_ALG_NAME); -+ if (!(siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY)) -+ cipher_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ else -+ cipher_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ } -+#endif /* CIOCGSESSINFO */ -+ } -+ ioctl(cfd, CIOCFSESSION, &sess.ses); -+ if (devcrypto_test_cipher(i)) { -+ known_cipher_nids[known_cipher_nids_amount++] = -+ cipher_data[i].nid; -+ } -+ } -+} -+ -+static void rebuild_known_cipher_nids(ENGINE *e) -+{ -+ size_t i; -+ -+ for (i = 0, known_cipher_nids_amount = 0; i < OSSL_NELEM(cipher_data); i++) { -+ if (devcrypto_test_cipher(i)) -+ known_cipher_nids[known_cipher_nids_amount++] = cipher_data[i].nid; -+ } -+ ENGINE_unregister_ciphers(e); -+ ENGINE_register_ciphers(e); -+} -+ -+static const EVP_CIPHER *get_cipher_method(int nid) -+{ -+ size_t i = get_cipher_data_index(nid); -+ -+ if (i == (size_t)-1) -+ return NULL; -+ return known_cipher_methods[i]; -+} -+ -+static int get_cipher_nids(const int **nids) -+{ -+ *nids = known_cipher_nids; -+ return known_cipher_nids_amount; -+} -+ -+static void destroy_cipher_method(int nid) -+{ -+ size_t i = get_cipher_data_index(nid); -+ -+ EVP_CIPHER_meth_free(known_cipher_methods[i]); -+ known_cipher_methods[i] = NULL; -+} -+ -+static void destroy_all_cipher_methods(void) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) { -+ destroy_cipher_method(cipher_data[i].nid); -+ OPENSSL_free(cipher_driver_info[i].driver_name); -+ cipher_driver_info[i].driver_name = NULL; -+ } -+} -+ -+static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher, -+ const int **nids, int nid) -+{ -+ if (cipher == NULL) -+ return get_cipher_nids(nids); -+ -+ *cipher = get_cipher_method(nid); -+ -+ return *cipher != NULL; -+} -+ -+static void devcrypto_select_all_ciphers(int *cipher_list) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) -+ cipher_list[i] = 1; -+} -+ -+static int cryptodev_select_cipher_cb(const char *str, int len, void *usr) -+{ -+ int *cipher_list = (int *)usr; -+ char *name; -+ const EVP_CIPHER *EVP; -+ size_t i; -+ -+ if (len == 0) -+ return 1; -+ if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -+ return 0; -+ EVP = EVP_get_cipherbyname(name); -+ if (EVP == NULL) -+ fprintf(stderr, "devcrypto: unknown cipher %s\n", name); -+ else if ((i = find_cipher_data_index(EVP_CIPHER_nid(EVP))) != (size_t)-1) -+ cipher_list[i] = 1; -+ else -+ fprintf(stderr, "devcrypto: cipher %s not available\n", name); -+ OPENSSL_free(name); -+ return 1; -+} -+ -+static void dump_cipher_info(void) -+{ -+ size_t i; -+ const char *name; -+ -+ fprintf (stderr, "Information about ciphers supported by the /dev/crypto" -+ " engine:\n"); -+#ifndef CIOCGSESSINFO -+ fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); -+#endif -+ for (i = 0; i < OSSL_NELEM(cipher_data); i++) { -+ name = OBJ_nid2sn(cipher_data[i].nid); -+ fprintf (stderr, "Cipher %s, NID=%d, /dev/crypto info: id=%d, ", -+ name ? name : "unknown", cipher_data[i].nid, -+ cipher_data[i].devcryptoid); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION ) { -+ fprintf (stderr, "CIOCGSESSION (session open call) failed\n"); -+ continue; -+ } -+ fprintf (stderr, "driver=%s ", cipher_driver_info[i].driver_name ? -+ cipher_driver_info[i].driver_name : "unknown"); -+ if (cipher_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -+ fprintf(stderr, "(hw accelerated)"); -+ else if (cipher_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -+ fprintf(stderr, "(software)"); -+ else -+ fprintf(stderr, "(acceleration status unknown)"); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -+ fprintf (stderr, ". Cipher setup failed"); -+ fprintf(stderr, "\n"); -+ } -+ fprintf(stderr, "\n"); -+} -+ -+/* -+ * We only support digests if the cryptodev implementation supports multiple -+ * data updates and session copying. Otherwise, we would be forced to maintain -+ * a cache, which is perilous if there's a lot of data coming in (if someone -+ * wants to checksum an OpenSSL tarball, for example). -+ */ -+#if defined(CIOCCPHASH) && defined(COP_FLAG_UPDATE) && defined(COP_FLAG_FINAL) -+#define IMPLEMENT_DIGEST -+ -+/****************************************************************************** -+ * -+ * Digests -+ * -+ * Because they all do the same basic operation, we have only one set of -+ * method functions for them all to share, and a mapping table between -+ * NIDs and cryptodev IDs, with all the necessary size data. -+ * -+ *****/ -+ -+struct digest_ctx { -+ struct session_op sess; -+ /* This signals that the init function was called, not that it succeeded. */ -+ int init_called; -+ unsigned char digest_res[HASH_MAX_LEN]; -+}; -+ -+static const struct digest_data_st { -+ int nid; -+ int blocksize; -+ int digestlen; -+ int devcryptoid; -+} digest_data[] = { -+#ifndef OPENSSL_NO_MD5 -+ { NID_md5, /* MD5_CBLOCK */ 64, 16, CRYPTO_MD5 }, -+#endif -+ { NID_sha1, SHA_CBLOCK, 20, CRYPTO_SHA1 }, -+#ifndef OPENSSL_NO_RMD160 -+# if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_RIPEMD160) -+ { NID_ripemd160, /* RIPEMD160_CBLOCK */ 64, 20, CRYPTO_RIPEMD160 }, -+# endif -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_224) -+ { NID_sha224, SHA256_CBLOCK, 224 / 8, CRYPTO_SHA2_224 }, -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_256) -+ { NID_sha256, SHA256_CBLOCK, 256 / 8, CRYPTO_SHA2_256 }, -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_384) -+ { NID_sha384, SHA512_CBLOCK, 384 / 8, CRYPTO_SHA2_384 }, -+#endif -+#if !defined(CHECK_BSD_STYLE_MACROS) || defined(CRYPTO_SHA2_512) -+ { NID_sha512, SHA512_CBLOCK, 512 / 8, CRYPTO_SHA2_512 }, -+#endif -+}; -+ -+static size_t find_digest_data_index(int nid) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) -+ if (nid == digest_data[i].nid) -+ return i; -+ return (size_t)-1; -+} -+ -+static size_t get_digest_data_index(int nid) -+{ -+ size_t i = find_digest_data_index(nid); -+ -+ if (i != (size_t)-1) -+ return i; -+ -+ /* -+ * Code further down must make sure that only NIDs in the table above -+ * are used. If any other NID reaches this function, there's a grave -+ * coding error further down. -+ */ -+ assert("Code that never should be reached" == NULL); -+ return -1; -+} -+ -+static const struct digest_data_st *get_digest_data(int nid) -+{ -+ return &digest_data[get_digest_data_index(nid)]; -+} -+ -+/* -+ * Following are the five necessary functions to map OpenSSL functionality -+ * with cryptodev: init, update, final, cleanup, and copy. -+ */ -+ -+static int digest_init(EVP_MD_CTX *ctx) -+{ -+ struct digest_ctx *digest_ctx = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -+ const struct digest_data_st *digest_d = -+ get_digest_data(EVP_MD_CTX_type(ctx)); -+ -+ digest_ctx->init_called = 1; -+ -+ memset(&digest_ctx->sess, 0, sizeof(digest_ctx->sess)); -+ digest_ctx->sess.mac = digest_d->devcryptoid; -+ if (ioctl(cfd, CIOCGSESSION, &digest_ctx->sess) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ -+ return 1; -+} -+ -+static int digest_op(struct digest_ctx *ctx, const void *src, size_t srclen, -+ void *res, unsigned int flags) -+{ -+ struct crypt_op cryp; -+ -+ memset(&cryp, 0, sizeof(cryp)); -+ cryp.ses = ctx->sess.ses; -+ cryp.len = srclen; -+ cryp.src = (void *)src; -+ cryp.dst = NULL; -+ cryp.mac = res; -+ cryp.flags = flags; -+ return ioctl(cfd, CIOCCRYPT, &cryp); -+} -+ -+static int digest_update(EVP_MD_CTX *ctx, const void *data, size_t count) -+{ -+ struct digest_ctx *digest_ctx = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -+ -+ if (count == 0) -+ return 1; -+ -+ if (digest_ctx == NULL) -+ return 0; -+ -+ if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -+ if (digest_op(digest_ctx, data, count, digest_ctx->digest_res, 0) >= 0) -+ return 1; -+ } else if (digest_op(digest_ctx, data, count, NULL, COP_FLAG_UPDATE) >= 0) { -+ return 1; -+ } -+ -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+} -+ -+static int digest_final(EVP_MD_CTX *ctx, unsigned char *md) -+{ -+ struct digest_ctx *digest_ctx = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -+ -+ if (md == NULL || digest_ctx == NULL) -+ return 0; -+ -+ if (EVP_MD_CTX_test_flags(ctx, EVP_MD_CTX_FLAG_ONESHOT)) { -+ memcpy(md, digest_ctx->digest_res, EVP_MD_CTX_size(ctx)); -+ } else if (digest_op(digest_ctx, NULL, 0, md, COP_FLAG_FINAL) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ -+ return 1; -+} -+ -+static int digest_copy(EVP_MD_CTX *to, const EVP_MD_CTX *from) -+{ -+ struct digest_ctx *digest_from = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(from); -+ struct digest_ctx *digest_to = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(to); -+ struct cphash_op cphash; -+ -+ if (digest_from == NULL || digest_from->init_called != 1) -+ return 1; -+ -+ if (!digest_init(to)) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ -+ cphash.src_ses = digest_from->sess.ses; -+ cphash.dst_ses = digest_to->sess.ses; -+ if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -+ SYSerr(SYS_F_IOCTL, errno); -+ return 0; -+ } -+ return 1; -+} -+ -+static int digest_cleanup(EVP_MD_CTX *ctx) -+{ -+ struct digest_ctx *digest_ctx = -+ (struct digest_ctx *)EVP_MD_CTX_md_data(ctx); -+ -+ if (digest_ctx == NULL) -+ return 1; -+ -+ return clean_devcrypto_session(&digest_ctx->sess); -+} -+ -+/* -+ * Keep tables of known nids, associated methods, selected digests, and -+ * driver info. -+ * Note that known_digest_nids[] isn't necessarily indexed the same way as -+ * digest_data[] above, which the other tables are. -+ */ -+static int known_digest_nids[OSSL_NELEM(digest_data)]; -+static int known_digest_nids_amount = -1; /* -1 indicates not yet initialised */ -+static EVP_MD *known_digest_methods[OSSL_NELEM(digest_data)] = { NULL, }; -+static int selected_digests[OSSL_NELEM(digest_data)]; -+static struct driver_info_st digest_driver_info[OSSL_NELEM(digest_data)]; -+ -+static int devcrypto_test_digest(size_t digest_data_index) -+{ -+ return (digest_driver_info[digest_data_index].status == DEVCRYPTO_STATUS_USABLE -+ && selected_digests[digest_data_index] == 1 -+ && (digest_driver_info[digest_data_index].accelerated -+ == DEVCRYPTO_ACCELERATED -+ || use_softdrivers == DEVCRYPTO_USE_SOFTWARE -+ || (digest_driver_info[digest_data_index].accelerated -+ != DEVCRYPTO_NOT_ACCELERATED -+ && use_softdrivers == DEVCRYPTO_REJECT_SOFTWARE))); -+} -+ -+static void rebuild_known_digest_nids(ENGINE *e) -+{ -+ size_t i; -+ -+ for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); i++) { -+ if (devcrypto_test_digest(i)) -+ known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -+ } -+ ENGINE_unregister_digests(e); -+ ENGINE_register_digests(e); -+} -+ -+static void prepare_digest_methods(void) -+{ -+ size_t i; -+ struct session_op sess1, sess2; -+#ifdef CIOCGSESSINFO -+ struct session_info_op siop; -+#endif -+ struct cphash_op cphash; -+ -+ memset(&digest_driver_info, 0, sizeof(digest_driver_info)); -+ -+ memset(&sess1, 0, sizeof(sess1)); -+ memset(&sess2, 0, sizeof(sess2)); -+ -+ for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); -+ i++) { -+ -+ selected_digests[i] = 1; -+ -+ /* -+ * Check that the digest is usable -+ */ -+ sess1.mac = digest_data[i].devcryptoid; -+ sess2.ses = 0; -+ if (ioctl(cfd, CIOCGSESSION, &sess1) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCGSESSION; -+ goto finish; -+ } -+ -+#ifdef CIOCGSESSINFO -+ /* gather hardware acceleration info from the driver */ -+ siop.ses = sess1.ses; -+ if (ioctl(cfd, CIOCGSESSINFO, &siop) < 0) { -+ digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATION_UNKNOWN; -+ } else { -+ digest_driver_info[i].driver_name = -+ OPENSSL_strndup(siop.hash_info.cra_driver_name, -+ CRYPTODEV_MAX_ALG_NAME); -+ if (siop.flags & SIOP_FLAG_KERNEL_DRIVER_ONLY) -+ digest_driver_info[i].accelerated = DEVCRYPTO_ACCELERATED; -+ else -+ digest_driver_info[i].accelerated = DEVCRYPTO_NOT_ACCELERATED; -+ } -+#endif -+ -+ /* digest must be capable of hash state copy */ -+ sess2.mac = sess1.mac; -+ if (ioctl(cfd, CIOCGSESSION, &sess2) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -+ goto finish; -+ } -+ cphash.src_ses = sess1.ses; -+ cphash.dst_ses = sess2.ses; -+ if (ioctl(cfd, CIOCCPHASH, &cphash) < 0) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_NO_CIOCCPHASH; -+ goto finish; -+ } -+ if ((known_digest_methods[i] = EVP_MD_meth_new(digest_data[i].nid, -+ NID_undef)) == NULL -+ || !EVP_MD_meth_set_input_blocksize(known_digest_methods[i], -+ digest_data[i].blocksize) -+ || !EVP_MD_meth_set_result_size(known_digest_methods[i], -+ digest_data[i].digestlen) -+ || !EVP_MD_meth_set_init(known_digest_methods[i], digest_init) -+ || !EVP_MD_meth_set_update(known_digest_methods[i], digest_update) -+ || !EVP_MD_meth_set_final(known_digest_methods[i], digest_final) -+ || !EVP_MD_meth_set_copy(known_digest_methods[i], digest_copy) -+ || !EVP_MD_meth_set_cleanup(known_digest_methods[i], digest_cleanup) -+ || !EVP_MD_meth_set_app_datasize(known_digest_methods[i], -+ sizeof(struct digest_ctx))) { -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_FAILURE; -+ EVP_MD_meth_free(known_digest_methods[i]); -+ known_digest_methods[i] = NULL; -+ goto finish; -+ } -+ digest_driver_info[i].status = DEVCRYPTO_STATUS_USABLE; -+finish: -+ ioctl(cfd, CIOCFSESSION, &sess1.ses); -+ if (sess2.ses != 0) -+ ioctl(cfd, CIOCFSESSION, &sess2.ses); -+ if (devcrypto_test_digest(i)) -+ known_digest_nids[known_digest_nids_amount++] = digest_data[i].nid; -+ } -+} -+ -+static const EVP_MD *get_digest_method(int nid) -+{ -+ size_t i = get_digest_data_index(nid); -+ -+ if (i == (size_t)-1) -+ return NULL; -+ return known_digest_methods[i]; -+} -+ -+static int get_digest_nids(const int **nids) -+{ -+ *nids = known_digest_nids; -+ return known_digest_nids_amount; -+} -+ -+static void destroy_digest_method(int nid) -+{ -+ size_t i = get_digest_data_index(nid); -+ -+ EVP_MD_meth_free(known_digest_methods[i]); -+ known_digest_methods[i] = NULL; -+} -+ -+static void destroy_all_digest_methods(void) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) { -+ destroy_digest_method(digest_data[i].nid); -+ OPENSSL_free(digest_driver_info[i].driver_name); -+ digest_driver_info[i].driver_name = NULL; -+ } -+} -+ -+static int devcrypto_digests(ENGINE *e, const EVP_MD **digest, -+ const int **nids, int nid) -+{ -+ if (digest == NULL) -+ return get_digest_nids(nids); -+ -+ *digest = get_digest_method(nid); -+ -+ return *digest != NULL; -+} -+ -+static void devcrypto_select_all_digests(int *digest_list) -+{ -+ size_t i; -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) -+ digest_list[i] = 1; -+} -+ -+static int cryptodev_select_digest_cb(const char *str, int len, void *usr) -+{ -+ int *digest_list = (int *)usr; -+ char *name; -+ const EVP_MD *EVP; -+ size_t i; -+ -+ if (len == 0) -+ return 1; -+ if (usr == NULL || (name = OPENSSL_strndup(str, len)) == NULL) -+ return 0; -+ EVP = EVP_get_digestbyname(name); -+ if (EVP == NULL) -+ fprintf(stderr, "devcrypto: unknown digest %s\n", name); -+ else if ((i = find_digest_data_index(EVP_MD_type(EVP))) != (size_t)-1) -+ digest_list[i] = 1; -+ else -+ fprintf(stderr, "devcrypto: digest %s not available\n", name); -+ OPENSSL_free(name); -+ return 1; -+} -+ -+static void dump_digest_info(void) -+{ -+ size_t i; -+ const char *name; -+ -+ fprintf (stderr, "Information about digests supported by the /dev/crypto" -+ " engine:\n"); -+#ifndef CIOCGSESSINFO -+ fprintf(stderr, "CIOCGSESSINFO (session info call) unavailable\n"); -+#endif -+ -+ for (i = 0; i < OSSL_NELEM(digest_data); i++) { -+ name = OBJ_nid2sn(digest_data[i].nid); -+ fprintf (stderr, "Digest %s, NID=%d, /dev/crypto info: id=%d, driver=%s", -+ name ? name : "unknown", digest_data[i].nid, -+ digest_data[i].devcryptoid, -+ digest_driver_info[i].driver_name ? digest_driver_info[i].driver_name : "unknown"); -+ if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCGSESSION) { -+ fprintf (stderr, ". CIOCGSESSION (session open) failed\n"); -+ continue; -+ } -+ if (digest_driver_info[i].accelerated == DEVCRYPTO_ACCELERATED) -+ fprintf(stderr, " (hw accelerated)"); -+ else if (digest_driver_info[i].accelerated == DEVCRYPTO_NOT_ACCELERATED) -+ fprintf(stderr, " (software)"); -+ else -+ fprintf(stderr, " (acceleration status unknown)"); -+ if (cipher_driver_info[i].status == DEVCRYPTO_STATUS_FAILURE) -+ fprintf (stderr, ". Cipher setup failed\n"); -+ else if (digest_driver_info[i].status == DEVCRYPTO_STATUS_NO_CIOCCPHASH) -+ fprintf(stderr, ", CIOCCPHASH failed\n"); -+ else -+ fprintf(stderr, ", CIOCCPHASH capable\n"); -+ } -+ fprintf(stderr, "\n"); -+} -+ -+#endif -+ -+/****************************************************************************** -+ * -+ * CONTROL COMMANDS -+ * -+ *****/ -+ -+#define DEVCRYPTO_CMD_USE_SOFTDRIVERS ENGINE_CMD_BASE -+#define DEVCRYPTO_CMD_CIPHERS (ENGINE_CMD_BASE + 1) -+#define DEVCRYPTO_CMD_DIGESTS (ENGINE_CMD_BASE + 2) -+#define DEVCRYPTO_CMD_DUMP_INFO (ENGINE_CMD_BASE + 3) -+ -+/* Helper macros for CPP string composition */ -+#ifndef OPENSSL_MSTR -+# define OPENSSL_MSTR_HELPER(x) #x -+# define OPENSSL_MSTR(x) OPENSSL_MSTR_HELPER(x) -+#endif -+ -+static const ENGINE_CMD_DEFN devcrypto_cmds[] = { -+#ifdef CIOCGSESSINFO -+ {DEVCRYPTO_CMD_USE_SOFTDRIVERS, -+ "USE_SOFTDRIVERS", -+ "specifies whether to use software (not accelerated) drivers (" -+ OPENSSL_MSTR(DEVCRYPTO_REQUIRE_ACCELERATED) "=use only accelerated drivers, " -+ OPENSSL_MSTR(DEVCRYPTO_USE_SOFTWARE) "=allow all drivers, " -+ OPENSSL_MSTR(DEVCRYPTO_REJECT_SOFTWARE) -+ "=use if acceleration can't be determined) [default=" -+ OPENSSL_MSTR(DEVCRYPTO_DEFAULT_USE_SOFTDRIVERS) "]", -+ ENGINE_CMD_FLAG_NUMERIC}, -+#endif -+ -+ {DEVCRYPTO_CMD_CIPHERS, -+ "CIPHERS", -+ "either ALL, NONE, or a comma-separated list of ciphers to enable [default=ALL]", -+ ENGINE_CMD_FLAG_STRING}, -+ -+#ifdef IMPLEMENT_DIGEST -+ {DEVCRYPTO_CMD_DIGESTS, -+ "DIGESTS", -+ "either ALL, NONE, or a comma-separated list of digests to enable [default=ALL]", -+ ENGINE_CMD_FLAG_STRING}, -+#endif -+ -+ {DEVCRYPTO_CMD_DUMP_INFO, -+ "DUMP_INFO", -+ "dump info about each algorithm to stderr; use 'openssl engine -pre DUMP_INFO devcrypto'", -+ ENGINE_CMD_FLAG_NO_INPUT}, -+ -+ {0, NULL, NULL, 0} -+}; -+ -+static int devcrypto_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void)) -+{ -+ int *new_list; -+ switch (cmd) { -+#ifdef CIOCGSESSINFO -+ case DEVCRYPTO_CMD_USE_SOFTDRIVERS: -+ switch (i) { -+ case DEVCRYPTO_REQUIRE_ACCELERATED: -+ case DEVCRYPTO_USE_SOFTWARE: -+ case DEVCRYPTO_REJECT_SOFTWARE: -+ break; -+ default: -+ fprintf(stderr, "devcrypto: invalid value (%ld) for USE_SOFTDRIVERS\n", i); -+ return 0; -+ } -+ if (use_softdrivers == i) -+ return 1; -+ use_softdrivers = i; -+#ifdef IMPLEMENT_DIGEST -+ rebuild_known_digest_nids(e); -+#endif -+ rebuild_known_cipher_nids(e); -+ return 1; -+#endif /* CIOCGSESSINFO */ -+ -+ case DEVCRYPTO_CMD_CIPHERS: -+ if (p == NULL) -+ return 1; -+ if (strcasecmp((const char *)p, "ALL") == 0) { -+ devcrypto_select_all_ciphers(selected_ciphers); -+ } else if (strcasecmp((const char*)p, "NONE") == 0) { -+ memset(selected_ciphers, 0, sizeof(selected_ciphers)); -+ } else { -+ new_list=OPENSSL_zalloc(sizeof(selected_ciphers)); -+ if (!CONF_parse_list(p, ',', 1, cryptodev_select_cipher_cb, new_list)) { -+ OPENSSL_free(new_list); -+ return 0; -+ } -+ memcpy(selected_ciphers, new_list, sizeof(selected_ciphers)); -+ OPENSSL_free(new_list); -+ } -+ rebuild_known_cipher_nids(e); -+ return 1; -+ -+#ifdef IMPLEMENT_DIGEST -+ case DEVCRYPTO_CMD_DIGESTS: -+ if (p == NULL) -+ return 1; -+ if (strcasecmp((const char *)p, "ALL") == 0) { -+ devcrypto_select_all_digests(selected_digests); -+ } else if (strcasecmp((const char*)p, "NONE") == 0) { -+ memset(selected_digests, 0, sizeof(selected_digests)); -+ } else { -+ new_list=OPENSSL_zalloc(sizeof(selected_digests)); -+ if (!CONF_parse_list(p, ',', 1, cryptodev_select_digest_cb, new_list)) { -+ OPENSSL_free(new_list); -+ return 0; -+ } -+ memcpy(selected_digests, new_list, sizeof(selected_digests)); -+ OPENSSL_free(new_list); -+ } -+ rebuild_known_digest_nids(e); -+ return 1; -+#endif /* IMPLEMENT_DIGEST */ -+ -+ case DEVCRYPTO_CMD_DUMP_INFO: -+ dump_cipher_info(); -+#ifdef IMPLEMENT_DIGEST -+ dump_digest_info(); -+#endif -+ return 1; -+ -+ default: -+ break; -+ } -+ return 0; -+} -+ -+/****************************************************************************** -+ * -+ * LOAD / UNLOAD -+ * -+ *****/ -+ -+/* -+ * Opens /dev/crypto -+ */ -+static int open_devcrypto(void) -+{ -+ int fd; -+ -+ if (cfd >= 0) -+ return 1; -+ -+ if ((fd = open("/dev/crypto", O_RDWR, 0)) < 0) { -+#ifndef ENGINE_DEVCRYPTO_DEBUG -+ if (errno != ENOENT) -+#endif -+ fprintf(stderr, "Could not open /dev/crypto: %s\n", strerror(errno)); -+ return 0; -+ } -+ -+#ifdef CRIOGET -+ if (ioctl(fd, CRIOGET, &cfd) < 0) { -+ fprintf(stderr, "Could not create crypto fd: %s\n", strerror(errno)); -+ close(fd); -+ cfd = -1; -+ return 0; -+ } -+ close(fd); -+#else -+ cfd = fd; -+#endif -+ -+ return 1; -+} -+ -+static int close_devcrypto(void) -+{ -+ int ret; -+ -+ if (cfd < 0) -+ return 1; -+ ret = close(cfd); -+ cfd = -1; -+ if (ret != 0) { -+ fprintf(stderr, "Error closing /dev/crypto: %s\n", strerror(errno)); -+ return 0; -+ } -+ return 1; -+} -+ -+static int devcrypto_unload(ENGINE *e) -+{ -+ destroy_all_cipher_methods(); -+#ifdef IMPLEMENT_DIGEST -+ destroy_all_digest_methods(); -+#endif -+ -+ close_devcrypto(); -+ -+ return 1; -+} -+ -+static int bind_devcrypto(ENGINE *e) { -+ -+ if (!ENGINE_set_id(e, engine_devcrypto_id) -+ || !ENGINE_set_name(e, "/dev/crypto engine") -+ || !ENGINE_set_destroy_function(e, devcrypto_unload) -+ || !ENGINE_set_cmd_defns(e, devcrypto_cmds) -+ || !ENGINE_set_ctrl_function(e, devcrypto_ctrl)) -+ return 0; -+ -+ prepare_cipher_methods(); -+#ifdef IMPLEMENT_DIGEST -+ prepare_digest_methods(); -+#endif -+ -+ return (ENGINE_set_ciphers(e, devcrypto_ciphers) -+#ifdef IMPLEMENT_DIGEST -+ && ENGINE_set_digests(e, devcrypto_digests) -+#endif -+/* -+ * Asymmetric ciphers aren't well supported with /dev/crypto. Among the BSD -+ * implementations, it seems to only exist in FreeBSD, and regarding the -+ * parameters in its crypt_kop, the manual crypto(4) has this to say: -+ * -+ * The semantics of these arguments are currently undocumented. -+ * -+ * Reading through the FreeBSD source code doesn't give much more than -+ * their CRK_MOD_EXP implementation for ubsec. -+ * -+ * It doesn't look much better with cryptodev-linux. They have the crypt_kop -+ * structure as well as the command (CRK_*) in cryptodev.h, but no support -+ * seems to be implemented at all for the moment. -+ * -+ * At the time of writing, it seems impossible to write proper support for -+ * FreeBSD's asym features without some very deep knowledge and access to -+ * specific kernel modules. -+ * -+ * /Richard Levitte, 2017-05-11 -+ */ -+#if 0 -+# ifndef OPENSSL_NO_RSA -+ && ENGINE_set_RSA(e, devcrypto_rsa) -+# endif -+# ifndef OPENSSL_NO_DSA -+ && ENGINE_set_DSA(e, devcrypto_dsa) -+# endif -+# ifndef OPENSSL_NO_DH -+ && ENGINE_set_DH(e, devcrypto_dh) -+# endif -+# ifndef OPENSSL_NO_EC -+ && ENGINE_set_EC(e, devcrypto_ec) -+# endif -+#endif -+ ); -+} -+ -+#ifdef OPENSSL_NO_DYNAMIC_ENGINE -+/* -+ * In case this engine is built into libcrypto, then it doesn't offer any -+ * ability to be dynamically loadable. -+ */ -+void engine_load_devcrypto_int(void) -+{ -+ ENGINE *e = NULL; -+ -+ if (!open_devcrypto()) -+ return; -+ -+ if ((e = ENGINE_new()) == NULL -+ || !bind_devcrypto(e)) { -+ close_devcrypto(); -+ ENGINE_free(e); -+ return; -+ } -+ -+ ENGINE_add(e); -+ ENGINE_free(e); /* Loose our local reference */ -+ ERR_clear_error(); -+} -+ -+#else -+ -+static int bind_helper(ENGINE *e, const char *id) -+{ -+ if ((id && (strcmp(id, engine_devcrypto_id) != 0)) -+ || !open_devcrypto()) -+ return 0; -+ if (!bind_devcrypto(e)) { -+ close_devcrypto(); -+ return 0; -+ } -+ return 1; -+} -+ -+IMPLEMENT_DYNAMIC_CHECK_FN() -+IMPLEMENT_DYNAMIC_BIND_FN(bind_helper) -+ -+#endif diff --git a/package/libs/openssl/patches/500-e_devcrypto-default-to-not-use-digests-in-engine.patch b/package/libs/openssl/patches/500-e_devcrypto-default-to-not-use-digests-in-engine.patch index df5c16d8d..f18326385 100644 --- a/package/libs/openssl/patches/500-e_devcrypto-default-to-not-use-digests-in-engine.patch +++ b/package/libs/openssl/patches/500-e_devcrypto-default-to-not-use-digests-in-engine.patch @@ -21,7 +21,7 @@ Signed-off-by: Eneas U de Queiroz --- a/engines/e_devcrypto.c +++ b/engines/e_devcrypto.c -@@ -852,7 +852,7 @@ static void prepare_digest_methods(void) +@@ -905,7 +905,7 @@ static void prepare_digest_methods(void) for (i = 0, known_digest_nids_amount = 0; i < OSSL_NELEM(digest_data); i++) { @@ -30,7 +30,7 @@ Signed-off-by: Eneas U de Queiroz /* * Check that the digest is usable -@@ -1072,7 +1072,7 @@ static const ENGINE_CMD_DEFN devcrypto_c +@@ -1119,7 +1119,7 @@ static const ENGINE_CMD_DEFN devcrypto_c #ifdef IMPLEMENT_DIGEST {DEVCRYPTO_CMD_DIGESTS, "DIGESTS", diff --git a/package/libs/openssl/patches/510-e_devcrypto-ignore-error-when-closing-session.patch b/package/libs/openssl/patches/510-e_devcrypto-ignore-error-when-closing-session.patch index 87792cf9d..40b1dc78d 100644 --- a/package/libs/openssl/patches/510-e_devcrypto-ignore-error-when-closing-session.patch +++ b/package/libs/openssl/patches/510-e_devcrypto-ignore-error-when-closing-session.patch @@ -10,8 +10,8 @@ Signed-off-by: Eneas U de Queiroz --- a/engines/e_devcrypto.c +++ b/engines/e_devcrypto.c -@@ -195,9 +195,8 @@ static int cipher_init(EVP_CIPHER_CTX *c - get_cipher_data(EVP_CIPHER_CTX_nid(ctx)); +@@ -211,9 +211,8 @@ static int cipher_init(EVP_CIPHER_CTX *c + int ret; /* cleanup a previous session */ - if (cipher_ctx->sess.ses != 0 && diff --git a/target/linux/generic/backport-6.1/020-v6.3-06-BACKPORT-mm-multi-gen-LRU-per-node-lru_gen_folio-lis.patch b/target/linux/generic/backport-6.1/020-v6.3-06-BACKPORT-mm-multi-gen-LRU-per-node-lru_gen_folio-lis.patch index 87e7c49a7..bfba00ac0 100644 --- a/target/linux/generic/backport-6.1/020-v6.3-06-BACKPORT-mm-multi-gen-LRU-per-node-lru_gen_folio-lis.patch +++ b/target/linux/generic/backport-6.1/020-v6.3-06-BACKPORT-mm-multi-gen-LRU-per-node-lru_gen_folio-lis.patch @@ -76,7 +76,7 @@ Signed-off-by: T.J. Mercier --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h -@@ -790,6 +790,11 @@ static inline void obj_cgroup_put(struct +@@ -795,6 +795,11 @@ static inline void obj_cgroup_put(struct percpu_ref_put(&objcg->refcnt); } @@ -88,7 +88,7 @@ Signed-off-by: T.J. Mercier static inline void mem_cgroup_put(struct mem_cgroup *memcg) { if (memcg) -@@ -1290,6 +1295,11 @@ static inline void obj_cgroup_put(struct +@@ -1295,6 +1300,11 @@ static inline void obj_cgroup_put(struct { } diff --git a/target/linux/generic/backport-6.1/101-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch b/target/linux/generic/backport-6.1/101-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch index cc19cacac..bceeb3df9 100644 --- a/target/linux/generic/backport-6.1/101-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch +++ b/target/linux/generic/backport-6.1/101-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch @@ -785,7 +785,7 @@ Signed-off-by: Jakub Kicinski *data += size; --- a/drivers/net/ethernet/intel/ice/ice_main.c +++ b/drivers/net/ethernet/intel/ice/ice_main.c -@@ -6406,10 +6406,10 @@ ice_fetch_u64_stats_per_ring(struct u64_ +@@ -6407,10 +6407,10 @@ ice_fetch_u64_stats_per_ring(struct u64_ unsigned int start; do { @@ -838,7 +838,7 @@ Signed-off-by: Jakub Kicinski spin_unlock(&adapter->stats64_lock); --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c -@@ -6656,10 +6656,10 @@ void igb_update_stats(struct igb_adapter +@@ -6659,10 +6659,10 @@ void igb_update_stats(struct igb_adapter } do { @@ -851,7 +851,7 @@ Signed-off-by: Jakub Kicinski bytes += _bytes; packets += _packets; } -@@ -6672,10 +6672,10 @@ void igb_update_stats(struct igb_adapter +@@ -6675,10 +6675,10 @@ void igb_update_stats(struct igb_adapter for (i = 0; i < adapter->num_tx_queues; i++) { struct igb_ring *ring = adapter->tx_ring[i]; do { @@ -1709,7 +1709,7 @@ Signed-off-by: Jakub Kicinski } --- a/drivers/net/macsec.c +++ b/drivers/net/macsec.c -@@ -2801,9 +2801,9 @@ static void get_rx_sc_stats(struct net_d +@@ -2800,9 +2800,9 @@ static void get_rx_sc_stats(struct net_d stats = per_cpu_ptr(rx_sc->stats, cpu); do { @@ -1721,7 +1721,7 @@ Signed-off-by: Jakub Kicinski sum->InOctetsValidated += tmp.InOctetsValidated; sum->InOctetsDecrypted += tmp.InOctetsDecrypted; -@@ -2882,9 +2882,9 @@ static void get_tx_sc_stats(struct net_d +@@ -2881,9 +2881,9 @@ static void get_tx_sc_stats(struct net_d stats = per_cpu_ptr(macsec_priv(dev)->secy.tx_sc.stats, cpu); do { @@ -1733,7 +1733,7 @@ Signed-off-by: Jakub Kicinski sum->OutPktsProtected += tmp.OutPktsProtected; sum->OutPktsEncrypted += tmp.OutPktsEncrypted; -@@ -2938,9 +2938,9 @@ static void get_secy_stats(struct net_de +@@ -2937,9 +2937,9 @@ static void get_secy_stats(struct net_de stats = per_cpu_ptr(macsec_priv(dev)->stats, cpu); do { diff --git a/target/linux/generic/backport-6.1/104-r8169-enable-GRO-software-interrupt-coalescing-per-d.patch b/target/linux/generic/backport-6.1/104-r8169-enable-GRO-software-interrupt-coalescing-per-d.patch index b581d7491..8afb06e93 100644 --- a/target/linux/generic/backport-6.1/104-r8169-enable-GRO-software-interrupt-coalescing-per-d.patch +++ b/target/linux/generic/backport-6.1/104-r8169-enable-GRO-software-interrupt-coalescing-per-d.patch @@ -22,7 +22,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/ethernet/realtek/r8169_main.c +++ b/drivers/net/ethernet/realtek/r8169_main.c -@@ -5280,6 +5280,8 @@ static int rtl_init_one(struct pci_dev * +@@ -5276,6 +5276,8 @@ static int rtl_init_one(struct pci_dev * dev->hw_features |= NETIF_F_RXALL; dev->hw_features |= NETIF_F_RXFCS; diff --git a/target/linux/generic/backport-6.1/827-v6.3-0002-of-property-make-.-cells-optional-for-simple-props.patch b/target/linux/generic/backport-6.1/827-v6.3-0002-of-property-make-.-cells-optional-for-simple-props.patch index c4f44b87a..3af514c42 100644 --- a/target/linux/generic/backport-6.1/827-v6.3-0002-of-property-make-.-cells-optional-for-simple-props.patch +++ b/target/linux/generic/backport-6.1/827-v6.3-0002-of-property-make-.-cells-optional-for-simple-props.patch @@ -21,7 +21,7 @@ Signed-off-by: Greg Kroah-Hartman --- a/drivers/of/property.c +++ b/drivers/of/property.c -@@ -1202,8 +1202,8 @@ static struct device_node *parse_prop_ce +@@ -1144,8 +1144,8 @@ static struct device_node *parse_prop_ce if (strcmp(prop_name, list_name)) return NULL; diff --git a/target/linux/generic/backport-6.1/827-v6.3-0003-of-property-add-nvmem-cell-cells-property.patch b/target/linux/generic/backport-6.1/827-v6.3-0003-of-property-add-nvmem-cell-cells-property.patch index c2b86de9b..025f09498 100644 --- a/target/linux/generic/backport-6.1/827-v6.3-0003-of-property-add-nvmem-cell-cells-property.patch +++ b/target/linux/generic/backport-6.1/827-v6.3-0003-of-property-add-nvmem-cell-cells-property.patch @@ -19,7 +19,7 @@ Signed-off-by: Greg Kroah-Hartman --- a/drivers/of/property.c +++ b/drivers/of/property.c -@@ -1307,7 +1307,7 @@ DEFINE_SIMPLE_PROP(dmas, "dmas", "#dma-c +@@ -1249,7 +1249,7 @@ DEFINE_SIMPLE_PROP(dmas, "dmas", "#dma-c DEFINE_SIMPLE_PROP(power_domains, "power-domains", "#power-domain-cells") DEFINE_SIMPLE_PROP(hwlocks, "hwlocks", "#hwlock-cells") DEFINE_SIMPLE_PROP(extcon, "extcon", NULL) diff --git a/target/linux/generic/hack-6.1/204-module_strip.patch b/target/linux/generic/hack-6.1/204-module_strip.patch index 71ee62ece..bd168649f 100644 --- a/target/linux/generic/hack-6.1/204-module_strip.patch +++ b/target/linux/generic/hack-6.1/204-module_strip.patch @@ -118,7 +118,7 @@ Signed-off-by: Felix Fietkau static char *get_modinfo(const struct load_info *info, const char *tag); static char *get_next_modinfo(const struct load_info *info, const char *tag, -@@ -1950,9 +1952,11 @@ static int setup_load_info(struct load_i +@@ -1958,9 +1960,11 @@ static int setup_load_info(struct load_i static int check_modinfo(struct module *mod, struct load_info *info, int flags) { @@ -131,7 +131,7 @@ Signed-off-by: Felix Fietkau if (flags & MODULE_INIT_IGNORE_VERMAGIC) modmagic = NULL; -@@ -1973,6 +1977,7 @@ static int check_modinfo(struct module * +@@ -1981,6 +1985,7 @@ static int check_modinfo(struct module * mod->name); add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK); } diff --git a/target/linux/generic/hack-6.1/253-ksmbd-config.patch b/target/linux/generic/hack-6.1/253-ksmbd-config.patch index b0c379657..4bb5eb9a6 100644 --- a/target/linux/generic/hack-6.1/253-ksmbd-config.patch +++ b/target/linux/generic/hack-6.1/253-ksmbd-config.patch @@ -10,7 +10,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string --- a/init/Kconfig +++ b/init/Kconfig -@@ -2003,7 +2003,7 @@ config PADATA +@@ -2004,7 +2004,7 @@ config PADATA bool config ASN1 diff --git a/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch b/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch index a68562d09..6a53479b0 100644 --- a/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch +++ b/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch @@ -29,7 +29,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support #define QUECTEL_VENDOR_ID 0x2c7c /* These Quectel products use Quectel's vendor ID */ -@@ -1180,6 +1182,11 @@ static const struct usb_device_id option +@@ -1181,6 +1183,11 @@ static const struct usb_device_id option .driver_info = ZLP }, { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), .driver_info = RSVD(4) }, diff --git a/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch b/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch index f55703627..341b57e3b 100644 --- a/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch +++ b/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch @@ -60,7 +60,7 @@ Signed-off-by: Felix Fietkau static void sock_def_write_space_wfree(struct sock *sk); static void sock_def_write_space(struct sock *sk); -@@ -582,6 +584,18 @@ discard_and_relse: +@@ -584,6 +586,18 @@ discard_and_relse: } EXPORT_SYMBOL(__sk_receive_skb); @@ -79,7 +79,7 @@ Signed-off-by: Felix Fietkau INDIRECT_CALLABLE_DECLARE(struct dst_entry *ip6_dst_check(struct dst_entry *, u32)); INDIRECT_CALLABLE_DECLARE(struct dst_entry *ipv4_dst_check(struct dst_entry *, -@@ -2175,9 +2189,11 @@ static void __sk_free(struct sock *sk) +@@ -2179,9 +2193,11 @@ static void __sk_free(struct sock *sk) if (likely(sk->sk_net_refcnt)) sock_inuse_add(sock_net(sk), -1); diff --git a/target/linux/generic/hack-6.1/902-debloat_proc.patch b/target/linux/generic/hack-6.1/902-debloat_proc.patch index abf588f12..755c5c121 100644 --- a/target/linux/generic/hack-6.1/902-debloat_proc.patch +++ b/target/linux/generic/hack-6.1/902-debloat_proc.patch @@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau if (!pe) --- a/mm/vmalloc.c +++ b/mm/vmalloc.c -@@ -4187,6 +4187,8 @@ static const struct seq_operations vmall +@@ -4205,6 +4205,8 @@ static const struct seq_operations vmall static int __init proc_vmalloc_init(void) { @@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -4100,6 +4100,8 @@ static __net_initdata struct pernet_oper +@@ -4104,6 +4104,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/generic/hack-6.1/993-add-fibocom-id-and-zeropacket.patch b/target/linux/generic/hack-6.1/993-add-fibocom-id-and-zeropacket.patch index c0debc538..e616efa66 100644 --- a/target/linux/generic/hack-6.1/993-add-fibocom-id-and-zeropacket.patch +++ b/target/linux/generic/hack-6.1/993-add-fibocom-id-and-zeropacket.patch @@ -1,6 +1,6 @@ --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c -@@ -628,6 +628,58 @@ static void option_instat_callback(struc +@@ -629,6 +629,58 @@ static void option_instat_callback(struc static const struct usb_device_id option_ids[] = { diff --git a/target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch b/target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch index e066ad3cf..1b577ec3b 100644 --- a/target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch +++ b/target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch @@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau --- a/init/Kconfig +++ b/init/Kconfig -@@ -1481,6 +1481,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW +@@ -1482,6 +1482,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW the unaligned access emulation. see arch/parisc/kernel/unaligned.c for reference diff --git a/target/linux/generic/pending-6.1/300-mips_expose_boot_raw.patch b/target/linux/generic/pending-6.1/300-mips_expose_boot_raw.patch index 15d94f4d3..9e571a6d8 100644 --- a/target/linux/generic/pending-6.1/300-mips_expose_boot_raw.patch +++ b/target/linux/generic/pending-6.1/300-mips_expose_boot_raw.patch @@ -9,7 +9,7 @@ Acked-by: Rob Landley --- --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -1035,9 +1035,6 @@ config FW_ARC +@@ -1034,9 +1034,6 @@ config FW_ARC config ARCH_MAY_HAVE_PC_FDC bool @@ -19,7 +19,7 @@ Acked-by: Rob Landley config CEVT_BCM1480 bool -@@ -3092,6 +3089,18 @@ choice +@@ -3091,6 +3088,18 @@ choice bool "Extend builtin kernel arguments with bootloader arguments" endchoice diff --git a/target/linux/generic/pending-6.1/402-mtd-spi-nor-write-support-for-minor-aligned-partitions.patch b/target/linux/generic/pending-6.1/402-mtd-spi-nor-write-support-for-minor-aligned-partitions.patch index f04da4000..c7da2f883 100644 --- a/target/linux/generic/pending-6.1/402-mtd-spi-nor-write-support-for-minor-aligned-partitions.patch +++ b/target/linux/generic/pending-6.1/402-mtd-spi-nor-write-support-for-minor-aligned-partitions.patch @@ -193,7 +193,7 @@ Reported-by: Dan Carpenter default y --- a/drivers/mtd/spi-nor/core.c +++ b/drivers/mtd/spi-nor/core.c -@@ -1049,6 +1049,8 @@ static u8 spi_nor_convert_3to4_erase(u8 +@@ -1050,6 +1050,8 @@ static u8 spi_nor_convert_3to4_erase(u8 static bool spi_nor_has_uniform_erase(const struct spi_nor *nor) { @@ -202,7 +202,7 @@ Reported-by: Dan Carpenter return !!nor->params->erase_map.uniform_erase_type; } -@@ -2157,6 +2159,7 @@ static int spi_nor_select_erase(struct s +@@ -2158,6 +2160,7 @@ static int spi_nor_select_erase(struct s { struct spi_nor_erase_map *map = &nor->params->erase_map; const struct spi_nor_erase_type *erase = NULL; @@ -210,7 +210,7 @@ Reported-by: Dan Carpenter struct mtd_info *mtd = &nor->mtd; u32 wanted_size = nor->info->sector_size; int i; -@@ -2189,8 +2192,9 @@ static int spi_nor_select_erase(struct s +@@ -2190,8 +2193,9 @@ static int spi_nor_select_erase(struct s */ for (i = SNOR_ERASE_TYPE_MAX - 1; i >= 0; i--) { if (map->erase_type[i].size) { @@ -222,7 +222,7 @@ Reported-by: Dan Carpenter } } -@@ -2198,6 +2202,9 @@ static int spi_nor_select_erase(struct s +@@ -2199,6 +2203,9 @@ static int spi_nor_select_erase(struct s return -EINVAL; mtd->erasesize = erase->size; diff --git a/target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch b/target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch index 0ec6aa7fb..d2a9fb343 100644 --- a/target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch +++ b/target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch @@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau +}; --- a/drivers/mtd/spi-nor/core.c +++ b/drivers/mtd/spi-nor/core.c -@@ -1635,6 +1635,7 @@ static const struct spi_nor_manufacturer +@@ -1636,6 +1636,7 @@ static const struct spi_nor_manufacturer &spi_nor_winbond, &spi_nor_xilinx, &spi_nor_xmc, diff --git a/target/linux/generic/pending-6.1/920-mangle_bootargs.patch b/target/linux/generic/pending-6.1/920-mangle_bootargs.patch index 2017f04d0..101526608 100644 --- a/target/linux/generic/pending-6.1/920-mangle_bootargs.patch +++ b/target/linux/generic/pending-6.1/920-mangle_bootargs.patch @@ -13,7 +13,7 @@ Signed-off-by: Imre Kaloz --- a/init/Kconfig +++ b/init/Kconfig -@@ -1826,6 +1826,15 @@ config EMBEDDED +@@ -1827,6 +1827,15 @@ config EMBEDDED an embedded system so certain expert options are available for configuration. diff --git a/target/linux/generic/pending-6.1/994-add-quectel-rm500u-support.patch b/target/linux/generic/pending-6.1/994-add-quectel-rm500u-support.patch index 9d5f4c06d..2aef41b1b 100644 --- a/target/linux/generic/pending-6.1/994-add-quectel-rm500u-support.patch +++ b/target/linux/generic/pending-6.1/994-add-quectel-rm500u-support.patch @@ -1,6 +1,6 @@ --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c -@@ -267,6 +267,7 @@ static void option_instat_callback(struc +@@ -268,6 +268,7 @@ static void option_instat_callback(struc #define QUECTEL_PRODUCT_EM12 0x0512 #define QUECTEL_PRODUCT_RM500Q 0x0800 #define QUECTEL_PRODUCT_RM520N 0x0801 @@ -8,7 +8,7 @@ #define QUECTEL_PRODUCT_EC200U 0x0901 #define QUECTEL_PRODUCT_EC200S_CN 0x6002 #define QUECTEL_PRODUCT_EC200A 0x6005 -@@ -1235,6 +1236,7 @@ static const struct usb_device_id option +@@ -1238,6 +1239,7 @@ static const struct usb_device_id option { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500K, 0xff, 0x00, 0x00) },