From cacd84c0abf498ff1c1c75441ec349b219171491 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Wed, 5 Nov 2025 09:44:22 +0800 Subject: [PATCH 01/26] Revise project structure in README.md Updated project structure in README to reflect new file organization and added missing files. --- README.md | 96 ++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 63 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 409817f..68cd1ab 100644 --- a/README.md +++ b/README.md @@ -27,39 +27,69 @@ Highlights ``` . -├── authenticator/ -│ ├── Cargo.toml -│ └── src/ -│ ├── ctap.rs -│ └── ctap/ -│ └── tests.rs -├── contrib/ -│ ├── systemd/ -│ └── udev/ -├── patches/ -│ ├── ssmarshal/ -│ └── usbip-device/ -├── pc-hid-runner/ -│ ├── Cargo.toml -│ └── src/ -├── pc-usbip-runner/ -│ ├── Cargo.toml -│ └── src/ -├── prebuilt_liboqs/ -│ ├── linux-aarch64/ -│ └── linux-x86_64/ -├── transport-core/ -│ ├── Cargo.toml -│ └── src/ -├── trussed-mldsa/ -│ ├── Cargo.toml -│ └── src/ -├── trussed-mlkem/ -│ ├── Cargo.toml -│ └── src/ -├── Cargo.lock -├── Cargo.toml -└── README.md +|-- authenticator/ +| |-- Cargo.toml +| `-- src/ +| |-- ctap.rs +| |-- ctap/ +| | `-- tests.rs +| `-- lib.rs +|-- contrib/ +| |-- systemd/ +| | `-- feitian-authenticator.service +| `-- udev/ +| `-- 70-feitian-authenticator.rules +|-- download-ripgrepSCJSfZ/ +| `-- tmp-file +|-- patches/ +| |-- ssmarshal/ +| `-- usbip-device/ +|-- pc-hid-runner/ +| |-- Cargo.toml +| `-- src/ +| |-- bin/ +| | `-- authenticator.rs +| |-- cli.rs +| |-- lib.rs +| |-- permissions.rs +| |-- service.rs +| |-- transport/ +| | |-- ctaphid_host.rs +| | `-- mod.rs +| `-- uhid.rs +|-- pc-usbip-runner/ +| |-- Cargo.toml +| |-- Dockerfile +| |-- Makefile +| |-- README.md +| |-- examples/ +| `-- src/ +|-- prebuilt_liboqs/ +| |-- linux-aarch64/ +| | |-- include/oqs/ +| | `-- lib/ +| `-- linux-x86_64/ +| |-- include/oqs/ +| `-- lib/ +|-- target/ +| `-- ... (build artifacts) +|-- transport-core/ +| |-- Cargo.toml +| `-- src/ +| |-- ctap/ +| |-- lib.rs +| |-- logging.rs +| `-- state.rs +|-- trussed-mldsa/ +| |-- Cargo.toml +| |-- build.rs +| `-- src/lib.rs +|-- trussed-mlkem/ +| |-- Cargo.toml +| |-- build.rs +| `-- src/lib.rs +|-- Cargo.toml +`-- README.md ``` ## Dependencies From be1caa4cdaa6ca6dcbc7ef25ab2ad25012a7a0ea Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Wed, 5 Nov 2025 09:58:04 +0800 Subject: [PATCH 02/26] Revise README for tech stack and dependency updates Updated README to reflect changes in tech stack, dependencies, and project structure. --- README.md | 57 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 68cd1ab..36ecdca 100644 --- a/README.md +++ b/README.md @@ -9,19 +9,25 @@ Highlights ## Tech stack -- Languages: Rust across all workspace crates; C for the liboqs ML-DSA/ML-KEM backends; a small amount of shell/systemd glue under `contrib/`. -- Core crates: Trussed application framework, shared `transport-core` services, Rust wrappers `trussed-mldsa` and `trussed-mlkem`, CTAP/HID plumbing via `ctaphid-dispatch` + `usbd-ctaphid`, CCID support via `usbd-ccid`, CBOR tooling with `ciborium`, persistent storage via `littlefs2`, and zero-copy buffers using `heapless`/`heapless-bytes`. -- Runner/runtime: `pc-hid-runner` (UHID daemon with Clap 4 CLI, `daemonize`, permission checks via `nix` + `libudev`), optional `pc-usbip-runner` backend built on `transport-core` and `usb-device`, plus plug-in support for USB/IP and CCID transports. -- PQC + crypto: Prebuilt `liboqs` bundles surfaced through the `trussed-mldsa` and `trussed-mlkem` wrappers, classical ECC via `p256`, attestation scaffolding using `rcgen`, randomness sourced from `rand`/`rand_chacha`. -- Tooling: Companion tooling includes `libfido2`, `python-fido2`, and USB/IP (`usbip`, `vhci-hcd`) for exercising the runners end-to-end. +- Languages and FFI: Rust across the workspace crates, C via liboqs for ML-DSA and ML-KEM bindings consumed by `trussed-mldsa` and `trussed-mlkem`. +- Core crates: + - `authenticator` - Trussed application that implements CTAP2/CTAPHID and CCID flows on top of the PQC wrappers. + - `transport-core` - shared storage/state crate providing littlefs-backed persistence, attestation helpers, and CTAP/CCID glue code. + - `pc-hid-runner` - host runner exposing `/dev/uhid`. + - `pc-usbip-runner` (`trussed-usbip`) - legacy USB/IP transport kept for regression coverage. + - `trussed-mldsa` & `trussed-mlkem` - thin zeroise-aware wrappers around liboqs ML-DSA/ML-KEM exports. +- Key ecosystem crates: Trussed (patched to commit `024e0ec`), `ctaphid-dispatch`, `usbd-ctaphid`, `usbd-ccid`, `apdu-dispatch`, `littlefs2`, `ciborium`, `serde`, `rcgen`, `p256`, `chacha20`, `rand_chacha`, `nix`, `signal-hook`, `daemonize`, and `clap`. +- Tooling for validation: `libfido2`/`python-fido2` for host interoperability tests, and USB/IP utilities for the legacy backend. ## Patches and runner tools -- `pc-hid-runner/`: main host service; provides start/stop/status CLI, daemonizes with log output, verifies `/dev/uhid` permissions, toggles manual user presence, attestation suppression, PQC policy, and can swap to a USB/IP backend when built with the `usbip-backend` feature. -- `pc-usbip-runner/`: legacy and testing runner backed by the `trussed-usbip` crate, instantiating CTAPHID and optional CCID endpoints over USB/IP while reusing `transport-core` state management. -- `patches/usbip-device/`: vendored fork of the upstream crate wired in through `[patch.crates-io]`, retaining support for capped IN transfers, explicit speed reporting, and clean EP0 SETUP handling expected by the runners. -- `patches/ssmarshal/`: local copy of `ssmarshal` that keeps the `no_std` serialization path Trussed relies on while avoiding upstream API drift. -- `contrib/`: deployment assets including `systemd` service units and `udev` rules for hardened HID permissions. +- Crate patches: + - `trussed` is pinned to upstream commit `024e0ec` for the Trussed features used by the authenticator stack. + - `usbip-device` is vendored under `patches/usbip-device` with fixes for packet sizing, speed reporting, and EP0 hygiene to stabilise the legacy USB/IP transport. + - `ssmarshal` lives under `patches/ssmarshal` to guarantee the `no_std` feature set and serde 1.0 compatibility relied on by `transport-core`. +- Runner tooling: + - `pc-hid-runner` offers `/dev/uhid`, foreground/background service modes, permission checks, and helpers aligned with the packaged `contrib/udev` rule and `systemd` service unit. + - `pc-usbip-runner (patch)` continues to expose the authenticator over USB/IP, with examples under `pc-usbip-runner/examples/` for CTAPHID and CCID exercise. ## Project structure @@ -94,17 +100,17 @@ Highlights ## Dependencies -System (Ubuntu/Debian) -- Required: Rust toolchain (rustup recommended), C toolchain (`build-essential` or `clang`), `pkg-config`, `libudev-dev`, `libclang-dev`. -- Optional/testing: `libfido2-tools`, `python3-pip` + `python-fido2`, `usbip` with the `vhci-hcd` kernel module, `systemd` if you plan to install the provided unit. -- Kernel modules: `uhid` for the HID runner, `vhci-hcd` when exercising the USB/IP backend. +**System (Linux host)** +- Rust toolchain via `rustup` (2021 edition-compatible toolchain recommended). +- A C toolchain and binutils (`nm`) for linking against liboqs from `prebuilt_liboqs/`. +- Optional testing utilities: `libfido2-tools`, `python3-fido2`, and the USB/IP userspace (`usbip`, `vhci-hcd`) for exercising the legacy transport. +- Service integration helpers: `systemd` (to deploy `contrib/systemd/feitian-authenticator.service`) and udev (for `contrib/udev/70-feitian-authenticator.rules`). -Rust crates of note: -- `transport-core` (shared CTAP/CCID state, storage, and attestation helpers). -- `trussed-mldsa` / `trussed-mlkem` (liboqs-backed PQC bindings). -- `littlefs2`, `littlefs2-core`, `interchange`, `heapless`, `heapless-bytes` (persistent storage and zero-copy data paths). -- `rcgen`, `p256`, `rand`, `rand_chacha`, `ciborium` (cryptography, attestation, and CBOR support). -- `clap`, `daemonize`, `nix`, `libudev`, `signal-hook` (runner CLI and host integration). +**Rust crates of note** +- Transport and protocol layers: `ctaphid-dispatch`, `usbd-ctaphid`, `usbd-ccid`, `apdu-dispatch`, `transport-core`. +- Storage and serialization: `littlefs2`, `littlefs2-core`, `ciborium`, vendored `ssmarshal`, `serde`. +- Host runner and orchestration: `nix`, `signal-hook`, `daemonize`, `clap`, `heapless-bytes`. +- Cryptography: `trussed` (patched), `trussed-mldsa`, `trussed-mlkem`, `p256`, `rcgen`, `sha2`, `chacha20`, `rand_chacha`, `zeroize`. Install (example on Ubuntu/Debian) ```bash @@ -119,14 +125,9 @@ sudo apt install -y libfido2-1 libfido2-dev libfido2-tools usbip python3-pip ``` ## Build - -At the repository root: -```bash -# Debug build -cargo build - -# Release build -cargo build --release +# At the repository root: +cargo build # Debug build +cargo build --release # Release build ``` ## Select a liboqs bundle From 9188fa3e885eac6c9fcb6bc0aa13052854bcd9e9 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Wed, 5 Nov 2025 09:58:56 +0800 Subject: [PATCH 03/26] Add libfido2 installation commands to README Added installation command for libfido2 packages. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 36ecdca..9d4fbc6 100644 --- a/README.md +++ b/README.md @@ -120,6 +120,7 @@ curl https://sh.rustup.rs -sSf | sh # System packages: sudo apt update sudo apt install -y build-essential pkg-config libclang-dev libudev-dev + # Optional testing and legacy-runner tools: sudo apt install -y libfido2-1 libfido2-dev libfido2-tools usbip python3-pip ``` From 1af9d13851c3273e5e8f45f3e7bf01f384cb4c9a Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 17:15:18 -0700 Subject: [PATCH 04/26] Update for clarity and feature highlights Revise README to clarify project features and setup instructions. --- README.md | 186 +++++++++++++++--------------------------------------- 1 file changed, 50 insertions(+), 136 deletions(-) diff --git a/README.md b/README.md index 9d4fbc6..a83a889 100644 --- a/README.md +++ b/README.md @@ -1,176 +1,90 @@ # FIDO Software Authenticator -Software authenticator implementing post-quantum ML-DSA 44/65/87 with a Trussed-based stack in Rust, using the liboqs library for ML-DSA algorithm implementations. The host runner provisions a virtual HID token through `/dev/uhid`, letting browsers and libfido2 talk to the authenticator without custom kernel modules. A legacy USB/IP transport remains available for environments that still need it. The project exposes a FIDO2/CTAP2 HID interface and CCID that browsers and tooling can use for WebAuthn. +A software-based FIDO2/WebAuthn authenticator written in Rust. It utilizes the Trussed framework and features **Post-Quantum Cryptography** (ML-DSA) via the `liboqs` library. -Highlights -- Algorithms: ML-DSA 44/65/87, ES256. -- Transports: USB HID (CTAPHID) presented through `/dev/uhid`. Optional CCID smartcard interface for smartcard-style applications. -- Runner: Host UHID runner that creates a virtual hidraw node and bridges CTAPHID to Trussed. Optional USB/IP backend for legacy testing. +The application runs on a Linux host and provisions a virtual HID token through `/dev/uhid`. This allows web browsers and tools like `libfido2` to interact with it seamlessly, exactly as if it were a physical hardware security key—no custom kernel modules required. -## Tech stack +### Key Features +* **Algorithms:** Post-quantum ML-DSA (44/65/87) and standard ES256. +* **Virtual Hardware:** Acts as a standard USB HID (CTAPHID) device via `/dev/uhid`. +* **Smartcard Support:** Optional CCID interface. +* **Legacy Support:** Includes a USB/IP backend for legacy testing environments. -- Languages and FFI: Rust across the workspace crates, C via liboqs for ML-DSA and ML-KEM bindings consumed by `trussed-mldsa` and `trussed-mlkem`. -- Core crates: - - `authenticator` - Trussed application that implements CTAP2/CTAPHID and CCID flows on top of the PQC wrappers. - - `transport-core` - shared storage/state crate providing littlefs-backed persistence, attestation helpers, and CTAP/CCID glue code. - - `pc-hid-runner` - host runner exposing `/dev/uhid`. - - `pc-usbip-runner` (`trussed-usbip`) - legacy USB/IP transport kept for regression coverage. - - `trussed-mldsa` & `trussed-mlkem` - thin zeroise-aware wrappers around liboqs ML-DSA/ML-KEM exports. -- Key ecosystem crates: Trussed (patched to commit `024e0ec`), `ctaphid-dispatch`, `usbd-ctaphid`, `usbd-ccid`, `apdu-dispatch`, `littlefs2`, `ciborium`, `serde`, `rcgen`, `p256`, `chacha20`, `rand_chacha`, `nix`, `signal-hook`, `daemonize`, and `clap`. -- Tooling for validation: `libfido2`/`python-fido2` for host interoperability tests, and USB/IP utilities for the legacy backend. +--- -## Patches and runner tools +## Prerequisites -- Crate patches: - - `trussed` is pinned to upstream commit `024e0ec` for the Trussed features used by the authenticator stack. - - `usbip-device` is vendored under `patches/usbip-device` with fixes for packet sizing, speed reporting, and EP0 hygiene to stabilise the legacy USB/IP transport. - - `ssmarshal` lives under `patches/ssmarshal` to guarantee the `no_std` feature set and serde 1.0 compatibility relied on by `transport-core`. -- Runner tooling: - - `pc-hid-runner` offers `/dev/uhid`, foreground/background service modes, permission checks, and helpers aligned with the packaged `contrib/udev` rule and `systemd` service unit. - - `pc-usbip-runner (patch)` continues to expose the authenticator over USB/IP, with examples under `pc-usbip-runner/examples/` for CTAPHID and CCID exercise. +You will need a Linux host with Rust and a standard C toolchain installed. -## Project structure - -``` -. -|-- authenticator/ -| |-- Cargo.toml -| `-- src/ -| |-- ctap.rs -| |-- ctap/ -| | `-- tests.rs -| `-- lib.rs -|-- contrib/ -| |-- systemd/ -| | `-- feitian-authenticator.service -| `-- udev/ -| `-- 70-feitian-authenticator.rules -|-- download-ripgrepSCJSfZ/ -| `-- tmp-file -|-- patches/ -| |-- ssmarshal/ -| `-- usbip-device/ -|-- pc-hid-runner/ -| |-- Cargo.toml -| `-- src/ -| |-- bin/ -| | `-- authenticator.rs -| |-- cli.rs -| |-- lib.rs -| |-- permissions.rs -| |-- service.rs -| |-- transport/ -| | |-- ctaphid_host.rs -| | `-- mod.rs -| `-- uhid.rs -|-- pc-usbip-runner/ -| |-- Cargo.toml -| |-- Dockerfile -| |-- Makefile -| |-- README.md -| |-- examples/ -| `-- src/ -|-- prebuilt_liboqs/ -| |-- linux-aarch64/ -| | |-- include/oqs/ -| | `-- lib/ -| `-- linux-x86_64/ -| |-- include/oqs/ -| `-- lib/ -|-- target/ -| `-- ... (build artifacts) -|-- transport-core/ -| |-- Cargo.toml -| `-- src/ -| |-- ctap/ -| |-- lib.rs -| |-- logging.rs -| `-- state.rs -|-- trussed-mldsa/ -| |-- Cargo.toml -| |-- build.rs -| `-- src/lib.rs -|-- trussed-mlkem/ -| |-- Cargo.toml -| |-- build.rs -| `-- src/lib.rs -|-- Cargo.toml -`-- README.md -``` - -## Dependencies - -**System (Linux host)** -- Rust toolchain via `rustup` (2021 edition-compatible toolchain recommended). -- A C toolchain and binutils (`nm`) for linking against liboqs from `prebuilt_liboqs/`. -- Optional testing utilities: `libfido2-tools`, `python3-fido2`, and the USB/IP userspace (`usbip`, `vhci-hcd`) for exercising the legacy transport. -- Service integration helpers: `systemd` (to deploy `contrib/systemd/feitian-authenticator.service`) and udev (for `contrib/udev/70-feitian-authenticator.rules`). - -**Rust crates of note** -- Transport and protocol layers: `ctaphid-dispatch`, `usbd-ctaphid`, `usbd-ccid`, `apdu-dispatch`, `transport-core`. -- Storage and serialization: `littlefs2`, `littlefs2-core`, `ciborium`, vendored `ssmarshal`, `serde`. -- Host runner and orchestration: `nix`, `signal-hook`, `daemonize`, `clap`, `heapless-bytes`. -- Cryptography: `trussed` (patched), `trussed-mldsa`, `trussed-mlkem`, `p256`, `rcgen`, `sha2`, `chacha20`, `rand_chacha`, `zeroize`. - -Install (example on Ubuntu/Debian) +**Ubuntu/Debian Setup:** ```bash -# Rust (recommended): -curl https://sh.rustup.rs -sSf | sh +# 1. Install Rust (if you haven't already) +curl [https://sh.rustup.rs](https://sh.rustup.rs) -sSf | sh -# System packages: +# 2. Install required system packages sudo apt update sudo apt install -y build-essential pkg-config libclang-dev libudev-dev -# Optional testing and legacy-runner tools: +# (Optional) Install tools for testing sudo apt install -y libfido2-1 libfido2-dev libfido2-tools usbip python3-pip ``` -## Build -# At the repository root: -cargo build # Debug build -cargo build --release # Release build -``` +--- + +## Quick Start -## Select a liboqs bundle +### 1. Build the Project +From the repository root, build the project using Cargo: +```bash +cargo build --release +``` -Prebuilt ML-DSA binaries are supplied under `prebuilt_liboqs/`. Choose the directory that matches your host architecture, then add the `lib` folder to your `LD_LIBRARY_PATH` (or install the contents under `/usr/local`): +### 2. Link the Cryptography Library +The project uses prebuilt ML-DSA binaries located in the `prebuilt_liboqs/` folder. You need to add the correct library path for your architecture to your environment variables so the runner can find it. +**For x86_64 (Standard PC/Server):** ```bash -# For x86_64 Linux export LD_LIBRARY_PATH="$PWD/prebuilt_liboqs/linux-x86_64/lib:${LD_LIBRARY_PATH:-}" - -# For aarch64 Linux +``` +**For aarch64 (ARM/Raspberry Pi):** +```bash export LD_LIBRARY_PATH="$PWD/prebuilt_liboqs/linux-aarch64/lib:${LD_LIBRARY_PATH:-}" ``` -If you build liboqs yourself, ensure the resulting shared library matches the target architecture of the runner binary. +### 3. Setup Virtual HID Permissions +To allow the authenticator to create a virtual USB device, you need to load the `uhid` kernel module and grant your user the correct permissions. -## Run the HID runner - -The HID runner provisions a virtual authenticator through `/dev/uhid`, creating a `hidraw` node that browsers can use transparently. From the root of the repository: ```bash -# Starting with clean state -sudo pkill -f pc-hid-runner || true -sudo rmmod uhid 2>/dev/null || true +# Load the uhid module sudo modprobe uhid -# Configure permission +# Create a udev rule to grant access to the 'plugdev' group echo 'KERNEL=="uhid", MODE="0660", GROUP="plugdev"' | sudo tee /etc/udev/rules.d/70-uhid.rules sudo udevadm control --reload-rules sudo udevadm trigger + +# Apply permissions immediately sudo chown root:plugdev /dev/uhid sudo chmod 660 /dev/uhid newgrp plugdev +``` + +### 4. Run the Authenticator +Launch the virtual authenticator in the foreground. It will automatically handle WebAuthn requests from your browser! -# Launching the runner +```bash RUST_LOG=info cargo run -p pc-hid-runner -- start --foreground ``` -Useful flags: +--- + +## Configuration Options + +When running the `pc-hid-runner`, you can append several useful flags to customize its behavior: -- `--state-dir ` — override the persistent storage directory (defaults to `$XDG_DATA_HOME/feitian-mldsa-authenticator`) -- `--manual-user-presence` — require manual approval of user presence (auto-UP remains the default) -- `--suppress-attestation` — mask attestation certs for privacy testing -- `--pqc-policy ` — choose the PQC PIN/UV transport policy +* `--manual-user-presence` : Require manual approval when a site requests user presence (default is auto-approve). +* `--state-dir ` : Change where the authenticator saves its internal state and credentials (defaults to `$XDG_DATA_HOME/feitian-mldsa-authenticator`). +* `--suppress-attestation` : Hide attestation certificates for privacy testing. +* `--pqc-policy ` : Force a specific Post-Quantum Cryptography policy. -Omit `--foreground` to run the service as a background daemon. The CLI also exposes `status` and `stop` subcommands that inspect or terminate that daemonised instance. +*Note: Omit the `--foreground` flag to run the authenticator quietly as a background daemon. You can manage a daemonized instance using the `status` and `stop` subcommands.* From ccb6027f9af99f2beb34483d461328746b8b7206 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:31:35 -0700 Subject: [PATCH 05/26] Remove tracked scratch artifact and tighten .gitignore --- .gitignore | 10 +++++++++- download-ripgrepSCJSfZ/tmp-file | Bin 308715 -> 0 bytes 2 files changed, 9 insertions(+), 1 deletion(-) delete mode 100644 download-ripgrepSCJSfZ/tmp-file diff --git a/.gitignore b/.gitignore index fbc9a58..f057f78 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,11 @@ .idea target -Cargo.lock + +# Editor / OS noise +.DS_Store +*.swp +*~ + +# Tooling scratch artifacts (e.g. download-ripgrepXXXXXX/) +download-ripgrep*/ +*.tmp diff --git a/download-ripgrepSCJSfZ/tmp-file b/download-ripgrepSCJSfZ/tmp-file deleted file mode 100644 index 3144fa5f487126ea1b262a93758450488efe8103..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 308715 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%0AME7$oje8IcbOu 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 VkKk|jL~9%QZHlU+r0yp~{0}5VHL(By From 2969767a481e65e2936021b6ac4a716710d4299b Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:31:59 -0700 Subject: [PATCH 06/26] Move maintainer scratchpad to docs/development-notes.md --- .../development-notes.md | 32 ++++++++++++------- 1 file changed, 21 insertions(+), 11 deletions(-) rename FidoSoftwareAuthenticator.txt => docs/development-notes.md (64%) diff --git a/FidoSoftwareAuthenticator.txt b/docs/development-notes.md similarity index 64% rename from FidoSoftwareAuthenticator.txt rename to docs/development-notes.md index 1287d9d..56b141b 100644 --- a/FidoSoftwareAuthenticator.txt +++ b/docs/development-notes.md @@ -1,3 +1,12 @@ +# Development notes + +Useful shell commands collected while developing the authenticator. These are +the manual procedures the maintainers used during bring-up; the unified CLI +(`pc-hid-runner`) hides most of them in everyday use. + +## Rebuild and relaunch the daemon + +```bash sudo pkill -f pc-hid-runner || true git pull @@ -7,7 +16,8 @@ cargo build --release sudo rmmod uhid 2>/dev/null || true sudo modprobe uhid -echo 'KERNEL=="uhid", MODE="0660", GROUP="plugdev"' | sudo tee /etc/udev/rules.d/70-uhid.rules +echo 'KERNEL=="uhid", MODE="0660", GROUP="plugdev"' \ + | sudo tee /etc/udev/rules.d/70-uhid.rules sudo udevadm control --reload-rules sudo udevadm trigger sudo chown root:plugdev /dev/uhid @@ -15,26 +25,27 @@ sudo chmod 660 /dev/uhid newgrp plugdev RUST_LOG=pc_hid_runner=debug cargo run -p pc-hid-runner -- start --foreground +``` +## Confirm the virtual HID device is visible to userspace - +```bash ls -l /dev/hidraw* fido2-token -L - FIDO_DEBUG=1 fido2-token -I /dev/hidraw3 +``` +## Kernel-level introspection - - - -Tests: +```bash sudo lsmod | grep uhid cat /sys/class/hidraw/hidraw*/device/uevent sudo cat /sys/kernel/debug/hid/0003:096E:0858.0005/rdesc | hexdump -C +``` +## Full diagnostic walk-through - -Main Tests: +```bash sudo -i lsmod | grep uhid ls -l /dev/uhid @@ -46,5 +57,4 @@ ls -ld /sys/kernel/debug/hid ls -d /sys/kernel/debug/hid/*096E* 2>/dev/null stat -c "rdesc size: %s bytes" $(ls -d /sys/kernel/debug/hid/*096E* | tail -1)/rdesc cat $(ls -d /sys/kernel/debug/hid/*096E* | tail -1)/rdesc | hexdump -C | head -n 20 - - +``` From dae5119a5a4ef8b73d521fea4c4945858ba54e83 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:32:25 -0700 Subject: [PATCH 07/26] Fix README curl line and replace placeholder author fields --- README.md | 2 +- authenticator/Cargo.toml | 4 ++-- trussed-mldsa/Cargo.toml | 2 +- trussed-mlkem/Cargo.toml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a83a889..4a6ea98 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ You will need a Linux host with Rust and a standard C toolchain installed. **Ubuntu/Debian Setup:** ```bash # 1. Install Rust (if you haven't already) -curl [https://sh.rustup.rs](https://sh.rustup.rs) -sSf | sh +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # 2. Install required system packages sudo apt update diff --git a/authenticator/Cargo.toml b/authenticator/Cargo.toml index 7dccf27..34a8b24 100644 --- a/authenticator/Cargo.toml +++ b/authenticator/Cargo.toml @@ -3,8 +3,8 @@ name = "authenticator" version = "0.1.0" edition = "2021" -description = "Skeleton Trussed application demonstrating ML‑DSA integration" -authors = ["Your Name "] +description = "FIDO2/CTAP2 authenticator core with post-quantum ML-DSA support" +authors = ["Feitian Technologies "] license = "Apache-2.0 OR MIT" [dependencies] diff --git a/trussed-mldsa/Cargo.toml b/trussed-mldsa/Cargo.toml index 028775b..7ff06f0 100644 --- a/trussed-mldsa/Cargo.toml +++ b/trussed-mldsa/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" description = "Safe Rust wrapper around liboqs ML-DSA signatures" -authors = ["Your Name "] +authors = ["Feitian Technologies "] license = "Apache-2.0 OR MIT" [dependencies] diff --git a/trussed-mlkem/Cargo.toml b/trussed-mlkem/Cargo.toml index 4a3b254..49d60ff 100644 --- a/trussed-mlkem/Cargo.toml +++ b/trussed-mlkem/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" description = "Safe Rust wrapper around the liboqs ML-KEM key encapsulation mechanisms" -authors = ["Your Name "] +authors = ["Feitian Technologies "] license = "Apache-2.0 OR MIT" [dependencies] From b89b20692b7b09e55961d56874291d3b4c8d94e6 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:32:44 -0700 Subject: [PATCH 08/26] Drop duplicate authenticator bin in pc-hid-runner --- pc-hid-runner/Cargo.toml | 1 - pc-hid-runner/src/bin/authenticator.rs | 3 --- 2 files changed, 4 deletions(-) delete mode 100644 pc-hid-runner/src/bin/authenticator.rs diff --git a/pc-hid-runner/Cargo.toml b/pc-hid-runner/Cargo.toml index adb60a8..54def88 100644 --- a/pc-hid-runner/Cargo.toml +++ b/pc-hid-runner/Cargo.toml @@ -2,7 +2,6 @@ name = "pc-hid-runner" version = "0.1.0" edition = "2021" -default-run = "pc-hid-runner" [dependencies] ctaphid-dispatch = { version = "0.3", features = ["log-all"] } diff --git a/pc-hid-runner/src/bin/authenticator.rs b/pc-hid-runner/src/bin/authenticator.rs deleted file mode 100644 index 31b12b9..0000000 --- a/pc-hid-runner/src/bin/authenticator.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() -> std::io::Result<()> { - pc_hid_runner::cli::run_cli() -} From 48c4c4d9bbbca140c08813c600da2fcfc6202bb9 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:33:29 -0700 Subject: [PATCH 09/26] Pin toolchain to 1.83 and add rustfmt config --- Cargo.toml | 7 +++++++ rust-toolchain.toml | 4 ++++ rustfmt.toml | 3 +++ 3 files changed, 14 insertions(+) create mode 100644 rust-toolchain.toml create mode 100644 rustfmt.toml diff --git a/Cargo.toml b/Cargo.toml index a501bfe..27ed9be 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,6 +10,13 @@ members = [ resolver = "2" +[workspace.package] +edition = "2021" +license = "Apache-2.0 OR MIT" +authors = ["Feitian Technologies "] +repository = "https://github.com/FeitianTech/FidoSoftwareAuthenticator" +rust-version = "1.83" + [patch.crates-io] trussed = { git = "https://github.com/trussed-dev/trussed.git", rev = "024e0eca5fb7dbd2457831f7c7bffe4341e08775" } usbip-device = { path = "patches/usbip-device" } diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 0000000..dcea74b --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,4 @@ +[toolchain] +channel = "1.83.0" +components = ["rustfmt", "clippy"] +profile = "minimal" diff --git a/rustfmt.toml b/rustfmt.toml new file mode 100644 index 0000000..3b286b9 --- /dev/null +++ b/rustfmt.toml @@ -0,0 +1,3 @@ +edition = "2021" +max_width = 100 +newline_style = "Unix" From 691cf07c918965ec8af24ec70c32affa5fe18ff8 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:34:32 -0700 Subject: [PATCH 10/26] Drop pc-usbip-runner and patched usbip-device/ssmarshal crates --- Cargo.toml | 3 - patches/ssmarshal/.gitignore | 12 - patches/ssmarshal/.gitlab-ci.yml | 26 - patches/ssmarshal/CHANGELOG.md | 17 - patches/ssmarshal/CONTRIBUTING.md | 187 ----- patches/ssmarshal/Cargo.toml | 28 - patches/ssmarshal/LICENSE-APACHE | 201 ----- patches/ssmarshal/LICENSE-MIT | 25 - patches/ssmarshal/README.md | 69 -- patches/ssmarshal/src/lib.rs | 788 ------------------ patches/ssmarshal/tests/roundtrip.rs | 239 ------ patches/usbip-device/.cargo-ok | 1 - patches/usbip-device/.cargo_vcs_info.json | 6 - patches/usbip-device/.gitignore | 3 - patches/usbip-device/Cargo.toml | 53 -- patches/usbip-device/Cargo.toml.orig | 20 - patches/usbip-device/LICENSE-APACHE | 201 ----- patches/usbip-device/LICENSE-MIT | 21 - patches/usbip-device/README.md | 69 -- patches/usbip-device/examples/serial_echo.rs | 43 - .../usbip-device/examples/twitching_mouse.rs | 45 - patches/usbip-device/src/cmd.rs | 86 -- patches/usbip-device/src/debug.rs | 39 - patches/usbip-device/src/handler.rs | 537 ------------ patches/usbip-device/src/lib.rs | 509 ----------- patches/usbip-device/src/op.rs | 239 ------ patches/usbip-device/src/request.rs | 158 ---- patches/usbip-device/src/response.rs | 96 --- pc-hid-runner/Cargo.toml | 6 - pc-hid-runner/src/cli.rs | 4 - pc-hid-runner/src/service.rs | 9 - pc-usbip-runner/.dockerignore | 2 - pc-usbip-runner/.gitignore | 5 - pc-usbip-runner/Cargo.toml | 38 - pc-usbip-runner/Dockerfile | 4 - pc-usbip-runner/Makefile | 54 -- pc-usbip-runner/README.md | 86 -- pc-usbip-runner/examples/authenticator.rs | 199 ----- ...e-between-the-sent-data-size-and-rep.patch | 27 - pc-usbip-runner/src/ccid.rs | 36 - pc-usbip-runner/src/ctaphid.rs | 41 - pc-usbip-runner/src/lib.rs | 234 ------ 42 files changed, 4466 deletions(-) delete mode 100644 patches/ssmarshal/.gitignore delete mode 100644 patches/ssmarshal/.gitlab-ci.yml delete mode 100644 patches/ssmarshal/CHANGELOG.md delete mode 100644 patches/ssmarshal/CONTRIBUTING.md delete mode 100644 patches/ssmarshal/Cargo.toml delete mode 100644 patches/ssmarshal/LICENSE-APACHE delete mode 100644 patches/ssmarshal/LICENSE-MIT delete mode 100644 patches/ssmarshal/README.md delete mode 100644 patches/ssmarshal/src/lib.rs delete mode 100644 patches/ssmarshal/tests/roundtrip.rs delete mode 100644 patches/usbip-device/.cargo-ok delete mode 100644 patches/usbip-device/.cargo_vcs_info.json delete mode 100644 patches/usbip-device/.gitignore delete mode 100644 patches/usbip-device/Cargo.toml delete mode 100644 patches/usbip-device/Cargo.toml.orig delete mode 100644 patches/usbip-device/LICENSE-APACHE delete mode 100644 patches/usbip-device/LICENSE-MIT delete mode 100644 patches/usbip-device/README.md delete mode 100644 patches/usbip-device/examples/serial_echo.rs delete mode 100644 patches/usbip-device/examples/twitching_mouse.rs delete mode 100644 patches/usbip-device/src/cmd.rs delete mode 100644 patches/usbip-device/src/debug.rs delete mode 100644 patches/usbip-device/src/handler.rs delete mode 100644 patches/usbip-device/src/lib.rs delete mode 100644 patches/usbip-device/src/op.rs delete mode 100644 patches/usbip-device/src/request.rs delete mode 100644 patches/usbip-device/src/response.rs delete mode 100644 pc-usbip-runner/.dockerignore delete mode 100644 pc-usbip-runner/.gitignore delete mode 100644 pc-usbip-runner/Cargo.toml delete mode 100644 pc-usbip-runner/Dockerfile delete mode 100644 pc-usbip-runner/Makefile delete mode 100644 pc-usbip-runner/README.md delete mode 100644 pc-usbip-runner/examples/authenticator.rs delete mode 100644 pc-usbip-runner/fido2-patch/0001-Ignore-difference-between-the-sent-data-size-and-rep.patch delete mode 100644 pc-usbip-runner/src/ccid.rs delete mode 100644 pc-usbip-runner/src/ctaphid.rs delete mode 100644 pc-usbip-runner/src/lib.rs diff --git a/Cargo.toml b/Cargo.toml index 27ed9be..a006a4d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,6 @@ members = [ "trussed-mldsa", "authenticator", "trussed-mlkem", - "pc-usbip-runner", "pc-hid-runner", "transport-core" ] @@ -19,5 +18,3 @@ rust-version = "1.83" [patch.crates-io] trussed = { git = "https://github.com/trussed-dev/trussed.git", rev = "024e0eca5fb7dbd2457831f7c7bffe4341e08775" } -usbip-device = { path = "patches/usbip-device" } -ssmarshal = { path = "patches/ssmarshal" } diff --git a/patches/ssmarshal/.gitignore b/patches/ssmarshal/.gitignore deleted file mode 100644 index e31f0e5..0000000 --- a/patches/ssmarshal/.gitignore +++ /dev/null @@ -1,12 +0,0 @@ -# Compiled files -*.o -*.so -*.rlib -*.dll -*.pyc -# Executables -*.exe - -# Generated by Cargo -/target/ -Cargo.lock diff --git a/patches/ssmarshal/.gitlab-ci.yml b/patches/ssmarshal/.gitlab-ci.yml deleted file mode 100644 index 50f922e..0000000 --- a/patches/ssmarshal/.gitlab-ci.yml +++ /dev/null @@ -1,26 +0,0 @@ -build: - image: registry.gitlab.com/robigalia/runner:latest - cache: - key: $CACHE_KEY - paths: - - /root/.cargo - script: - - "xargo build --target i686-sel4-robigalia --no-default-features" - - "xargo build --target arm-sel4-robigalia --no-default-features" - - "cargo build --no-default-features" - - "cargo test" - - "cargo test --release" -# - "kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov/ target/debug/roundtrip-*[^\\.d]" -# - "bash <(curl -s https://codecov.io/bash) -t 84321081-ebe2-447a-bdf1-a69eee2bdcf7" -# - echo "Percent coverage: $(jq .percent_covered target/cov/rn-*/coverage.json)%" - -verify_signatures: - image: ubuntu:17.04 - script: - - apt update - - apt install --assume-yes python-pexpect gnupg2 git - - git clone --depth=1 https://gitlab.com/robigalia/meta - - gpg2 --list-keys # to force it to create GNUPGHOME instead of racing in the pipe below - - (gpg2 --export --no-default-keyring --keyring ./meta/.gnupg/pubring.kbx || true) | gpg2 --import - - gpg2 --list-keys --fingerprint --fingerprint --verbose - - ./meta/verify-signatures.py HEAD ./meta/.mailmap diff --git a/patches/ssmarshal/CHANGELOG.md b/patches/ssmarshal/CHANGELOG.md deleted file mode 100644 index 93b97df..0000000 --- a/patches/ssmarshal/CHANGELOG.md +++ /dev/null @@ -1,17 +0,0 @@ -# `ssmarshal` changelog - -This project follows semantic versioning. - -## v1.0.0 (2017-05-13) - -- [added] `cargo-fuzz` based fuzz testing -- [added] random datatype-based testing -- [removed] afl.rs based fuzz testing -- [changed] expanded quickcheck-based testing to more interesting types -- [changed] Ported to serde 1.0 -- [removed] Support for serializing values which can't be deserialized (slices etc) -- [fixed] Documented the high-level details of the format and limitations. - -## v0.0.1 (2017-01-03) - -- First release. diff --git a/patches/ssmarshal/CONTRIBUTING.md b/patches/ssmarshal/CONTRIBUTING.md deleted file mode 100644 index 804fbb2..0000000 --- a/patches/ssmarshal/CONTRIBUTING.md +++ /dev/null @@ -1,187 +0,0 @@ -Thank you for your interest in contributing to the Robigalia project! There -are many ways to contribute, and we appreciate all of them. - -If you have questions, please send an email to -[robigalia-dev@lists.robigalia.org][list] or hop on [#robigalia][irc]. - -As a reminder, all participants in our community are expected to honor our -[code of conduct][conduct]. - -[list]: mailto:robigalia-dev@lists.robigalia.org -[irc]: https://webchat.freenode.net/?channels=%23robigalia -[conduct]: https://robigalia.org/conduct.html - -## Feature Proposal - -To propose a change to the way that Robigo or any other Robigalia codebase -works, please open an issue directly on the relevant repository. Include the -text, `[feature-proposal]` in the title and someone will come by and re-tag -the issue appropriately. Here's a template you can use to file a feature -proposal, though it's not necessary to use it exactly: - -``` -One-paragraph summary - -# Details - -As many details as you think are necessary to communicate how the feature -should work. - -# Benefits - -Benefits of the feature. - -# Drawbacks - -Drawbacks of the feature. -``` - -There is [an example feature proposal][prop] if you want to see what it looks -like. - -[prop]: https://gitlab.com/robigalia/meta/issues/1 - -## Bug Reports - -While bugs are unfortunate, they're a reality in software. We can't fix what we -don't know about, so please report liberally. If you're not sure if something -is a bug or not, feel free to file a bug anyway. - -**If you believe reporting your bug publicly represents a security risk to -users of software developed by the Robigalia project, -please follow our [instructions for reporting security -vulnerabilities](https://robigalia.org/security.html)**. - -If you have the chance, before reporting a bug, please [search existing -issues](https://gitlab.com/groups/robigalia/issues) as it's possible that -someone else has already reported your error. This doesn't always work, and -sometimes it's hard to know what to search for, so consider this extra credit. -We won't mind if you accidentally file a duplicate report, we'll typically -close it and point out which issue is a duplicate of. - -Opening an issue is as easy as following [this -link](https://gitlab.com/groups/robigalia/issues) and filling out the fields -after clicking "New Issue". Here's a template that you can use to file a bug, -though it's not necessary to use it exactly: - - - - I tried this: - - - - I expected to see this happen: - - Instead, this happened: - -All three components are important: what you did, what you expected, what -happened instead. - - -## Submitting code - -To coordinate changes to our software, we use a feature of GitLab called -"merge requests". Alternatively, you can email patches (ideally with git -send-email) to [the development mailing list][list]. - -### Commit messages - -Commit messages should be self-contained and describe the motivation for a -change. The subject line should be short, with any elaborations in the body. -If the commit closes an issue, write "Closes #issuenumber" at the end of the -body. - -For some guidelines, read [this][chrisbeams] for the basics, and [this][pro] -to become a pro. - -[chrisbeams]: http://chris.beams.io/posts/git-commit/ -[pro]: https://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message - -### Commit signing - -For a [variety of reasons][horror], we use commit signing to verify the -authenticity and authorship of changes to our projects. If you don't already -have one, create a PGP key. There are many ways to do this. [This blog -post][keygen] by Alex Cabal has a decent explanation of how to do it and some -of the tradeoffs involved. - -Once you have a keypair and it is uploaded to the keyservers, [learn how to -use gpg with git][horror2]. Please sign all commits you intend to include in a -merge request. - -[horror]: https://mikegerwitz.com/papers/git-horror-story -[horror2]: https://mikegerwitz.com/papers/git-horror-story#trust-ensure -[keygen]: https://alexcabal.com/creating-the-perfect-gpg-keypair/ - -### Forking the repositories. - -We use a custom system for managing our large amount of repositories. We have -one "master" repository, [devbox][devbox], which contains scripts for fetching -the other repositories. It also includes a [Vagrant][vagrant] configuration, -which is the easiest way to get started with Rust and seL4. See the readme in -that repository to see how to use the scripts and, optionally, set up Vagrant. -Part of the setup is running the `add_remotes.sh` script, which will rename -the official repo to `upstream` and add an `origin` remote pointing to a repo -under your own username. - -To fork a repository, navigate to it on GitLab and click the "Fork project" -button", which is to the left of the repository URL: - -![fork project button location image][forkimg] - -Then, you can interact with that repository using the `origin` remote in the -relevant sub-repository of `devbox`. - -[devbox]: https://gitlab.com/robigalia/devbox -[vagrant]: https://www.vagrantup.com/ -[forkimg]: https://gitlab.com/robigalia/meta/raw/master/fork_button.png - -### Signing the Developer Certificate of Origin - -Before we can accept code you have written into our repositories, you must -agree to the Developers Certificate of Origin. You can view it [in this -repository][DCO]. It is quite minimalist, and is also used by the Linux -kernel. To do this, fork the meta repository and run a command like: - - gpg --sign --armor < DCO.txt > agreements/${your_gitlab_username} - -Create a new commit with that file and send a merge request. - -[DCO]: https://gitlab.com/robigalia/meta/blob/master/DCO.txt - -### Submitting a merge request - -To submit a merge request, push the commits you want to include to a branch on -your fork of the relevant repository. Refer to the [official GitLab -documentation][mergereq] to see how to proceed from there. - -Please open merge requests against the `master` branch. If needed, we will -merge into a separate branch manually. - -[mergereq]: http://doc.gitlab.com/ce/gitlab-basics/add-merge-request.html - -All merge requests are reviewed by another person. - -If you want to request that a specific person reviews your pull request, you -can specify the "assignee" when you create the pull request. For example, -Corey usually reviews changes to sel4-sys, so you could specify him as the -assignee if you send a merge request to sel4-sys. - -## Writing Documentation - -Documentation improvements are very welcome. The source of robigalia.org is -in its [own repository][web], and individual crate documentation is hosted on -[doc.robigalia.org](https://doc.robigalia.org). - -Documentation merge requests function in the same way as other merge requests. - -[web]: https://gitlab.com/robigalia/robigalia.org - -## Helpful Links and Information - -- The [seL4 website](https://sel4.systems/) has things like the manual and how - to build seL4. -- The [Rust website](https://rust-lang.org/) for all your Rust-related - questions. - -*This document adapted from * diff --git a/patches/ssmarshal/Cargo.toml b/patches/ssmarshal/Cargo.toml deleted file mode 100644 index dbaf3ca..0000000 --- a/patches/ssmarshal/Cargo.toml +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (c) 2017 The Robigalia Project Developers -# Licensed under the Apache License, Version 2.0 or the MIT license , at your option. All files in the -# project carrying such notice may not be copied, modified, or distributed -# except according to those terms. -[package] -name = "ssmarshal" -version = "1.0.0" -authors = ["Corey Richardson "] -description = "Stupid simple value-only marshaling using serde" -documentation = "https://docs.rs/ssmarshal" -repository = "https://gitlab.com/robigalia/ssmarshal" -readme = "README.md" -license = "MIT OR Apache-2.0" - -[features] -default = ["std"] -std = ["serde/std"] - -[dependencies] -serde = { version = "1.0", default-features = false } -encode_unicode = { version = "0.3", default-features = false } - -[dev-dependencies] -quickcheck = "0.4" -quickcheck_macros = "0.4" -serde_derive = "1.0" diff --git a/patches/ssmarshal/LICENSE-APACHE b/patches/ssmarshal/LICENSE-APACHE deleted file mode 100644 index 8dada3e..0000000 --- a/patches/ssmarshal/LICENSE-APACHE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright {yyyy} {name of copyright owner} - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/patches/ssmarshal/LICENSE-MIT b/patches/ssmarshal/LICENSE-MIT deleted file mode 100644 index 9789053..0000000 --- a/patches/ssmarshal/LICENSE-MIT +++ /dev/null @@ -1,25 +0,0 @@ -Copyright (c) 2015 The Robigalia Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. diff --git a/patches/ssmarshal/README.md b/patches/ssmarshal/README.md deleted file mode 100644 index 0f6e168..0000000 --- a/patches/ssmarshal/README.md +++ /dev/null @@ -1,69 +0,0 @@ -# ssmarshal - -[![Crates.io](https://img.shields.io/crates/v/ssmarshal.svg?style=flat-square)](https://crates.io/crates/ssmarshal) - -[Documentation](https://docs.rs/ssmarshal) - -ssmarshal ("stupid simple marshaling") is a serde-based de/serialization -library. It is somewhat like [bincode](https://github.com/TyOverby/bincode), -but doesn't support String/Vec - this library is entirely zero-allocation, for -use in extremely limited `no_std` contexts. The key invariant is that the -encoding space for any value of a type is `<= size_of::()`. This allows -easy reasoning about limited buffer sizes, and how much is always enough. - -## Limitations - -These sorts of types are not supported: - -- Any non-core type (eg, `Vec`, `HashMap`) -- Slices -- Strings -- Types containing references or pointers -- Enums with more than 256 variants - -All enums MUST be `#[repr(C)]` in order for the size invariant to be upheld. -Note that this excludes using `Option`, especially with `NonZero` types! -You can use this crate with non-`#[repr(C)]` enums, but you should thoroughly -test (I recommend quickcheck, see [the tests](https://gitlab.com/robigalia/ssmarshal/blob/master/tests/roundtrip.rs) -for an example) de/serializing values of that type to be assured the size -invariant holds for the type. - -## Details of the format - -The format is not incredibly compact, but doesn't add extra fluff, and is -quick to en/decode. - -- `bool` is serialized as a byte, 1 if true, 0 is false. -- the integer types are encoded in their little-endian form. -- f32 is bitcast to a u32 then encoded as a u32. likewise, f64 and u64. -- inhabited enums are serialized as 1 byte for the discriminant, and then the fields. -- structs are serialized as just their fields. -- the unit type and uninhabited enums are not serialized at all. -- tuples are serialized as the fields, in order. - -There is no padding. - -As you might see, this format is not self-describing. To successfully -deserialize a value, the exact layout must be known ahead-of-time. - -## Alternatives - -This is designed for doing IPC in a microkernel, with a stable ABI, not saving -to disk or transferring over the network. It may be useful for those cases, -although you'll likely want a format which can handle data evolution, like -Cap'n Proto. - -If you care about truly minimizing encoding space, you might look into ASN.1 -PER. - -If you need more features (for example, slices or references), but still don't -care about data evolution, I recommend using bincode. - -## Testing - -The `roundtrip` test suite exercises almost all of the functionality of -ssmarshal, with coverage over 95% (missing mostly some of the error cases for -invalid/unsupported types). - -This library is extensively fuzz tested with `cargo-fuzz` (libFuzzer) before -every release. See the `fuzz` directory for the scripts used. diff --git a/patches/ssmarshal/src/lib.rs b/patches/ssmarshal/src/lib.rs deleted file mode 100644 index 5e0d38d..0000000 --- a/patches/ssmarshal/src/lib.rs +++ /dev/null @@ -1,788 +0,0 @@ -// Copyright (c) 2017 The Robigalia Project Developers Licensed under the Apache License, Version -// 2.0 or the MIT license -// , at your option. All files in the project -// carrying such notice may not be copied, modified, or distributed except according to those -// terms. - -#![cfg_attr(not(feature = "std"), no_std)] - -#[cfg(feature = "std")] -extern crate core; - -extern crate serde; -extern crate encode_unicode; - -use core::intrinsics::transmute; - -use serde::{Serialize, Deserialize}; -use serde::de::{Visitor, DeserializeSeed, DeserializeOwned, IntoDeserializer}; -#[cfg(not(feature = "std"))] -use serde::de::StdError as SerdeStdError; -//use serde::de::value::ValueDeserializer; -use encode_unicode::CharExt; -use encode_unicode::Utf8Char; - -use core::fmt::Display; - -const NS: &'static str = "not support"; - -#[inline(never)] -#[cold] -fn ns() -> Result { - if cfg!(debug_assertions) { - panic!(NS) - } - Err(Error::NotSupported) -} - -#[derive(Debug)] -pub enum Error { - EndOfStream, - InvalidRepresentation, - MoreElements, - TooManyVariants, - NotSupported, - ApplicationError(&'static str), - #[cfg(not(feature = "std"))] - Custom, - #[cfg(feature = "std")] - Custom(String), -} - -impl core::fmt::Display for Error { - fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result { - #[cfg(feature = "std")] - use std::error::Error; - - match self { - &::Error::ApplicationError(s) => write!(f, "application error: {}", s), - _ => f.write_str(self.description()), - } - } -} - -#[cfg(not(feature = "std"))] -impl serde::de::Error for Error { - fn custom(_msg: T) -> Error { - Error::Custom - } -} - -#[cfg(not(feature = "std"))] -impl serde::ser::Error for Error { - fn custom(_msg: T) -> Error { - Error::Custom - } -} - -#[cfg(feature = "std")] -impl serde::de::Error for Error { - fn custom(msg: T) -> Error { - Error::Custom(format!("{}", msg)) - } -} - -#[cfg(feature = "std")] -impl serde::ser::Error for Error { - fn custom(msg: T) -> Error { - Error::Custom(format!("{}", msg)) - } -} - -#[cfg(not(feature = "std"))] -impl SerdeStdError for Error {} - -#[cfg(not(feature = "std"))] -impl Error { - fn description(&self) -> &str { - match self { - &Error::EndOfStream => "end of stream reached but more data was needed", - &Error::InvalidRepresentation => "invalid representation for a value", - &Error::MoreElements => "there are more elements of the sequence remaining", - &Error::TooManyVariants => "too many variants, only up to 256 are supported", - &Error::NotSupported => "feature not supported", - &Error::ApplicationError(s) => s, - &Error::Custom => "some custom error that couldn't be reported", - } - } -} - -#[cfg(feature = "std")] -impl std::error::Error for Error { - fn description(&self) -> &str { - match self { - &Error::EndOfStream => "end of stream reached but more data was needed", - &Error::InvalidRepresentation => "invalid representation for a value", - &Error::MoreElements => "there are more elements of the sequence remaining", - &Error::TooManyVariants => "too many variants, only up to 256 are supported", - &Error::NotSupported => "feature not supported", - &Error::ApplicationError(s) => s, - &Error::Custom(ref s) => &s - } - } -} - -/// Serialize a value into a buffer. Returns the number of bytes used. -pub fn serialize(buf: &mut [u8], val: &T) -> SerializeResult { - let mut serializer = Serializer { buf: buf, idx: 0 }; - T::serialize(val, &mut serializer)?; - debug_assert!(serializer.idx <= core::mem::size_of::(), "{} <=? {}", serializer.idx, core::mem::size_of::()); - Ok(serializer.idx) -} - -/// Deserialize a value from a buffer. Returns the number of bytes used. -pub fn deserialize(buf: &[u8]) -> SerializeResult<(T, usize)> { - let mut deserializer = Deserializer { buf: buf, idx: 0 }; - let val = T::deserialize(&mut deserializer)?; - debug_assert!(deserializer.idx <= core::mem::size_of::()); - Ok((val, deserializer.idx)) -} - -struct Serializer<'a> { - buf: &'a mut [u8], - idx: usize, -} - -impl<'a> Serializer<'a> { - #[inline] - fn check_bounds(&self, len: usize) -> Result<(), Error> { - if let Some(val) = self.idx.checked_add(len) { - if val <= self.buf.len() { - return Ok(()); - } - } - debug_assert!(false, "ran out of space serializing value; fix your buffer size"); - Err(Error::EndOfStream) - } - - #[inline] - fn write_u8(&mut self, val: u8) -> Result<(), Error> { - self.check_bounds(1)?; - unsafe { - *self.buf.get_unchecked_mut(self.idx) = val; - } - self.idx += 1; - Ok(()) - } - - #[inline] - fn write_u16(&mut self, val: u16) -> Result<(), Error> { - self.check_bounds(2)?; - unsafe { - *self.buf.get_unchecked_mut(self.idx) = (val & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 1) = (val >> 8 & 0xFF) as u8; - } - self.idx += 2; - Ok(()) - } - - #[inline] - fn write_u32(&mut self, val: u32) -> Result<(), Error> { - self.check_bounds(4)?; - unsafe { - *self.buf.get_unchecked_mut(self.idx) = (val & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 1) = (val >> 8 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 2) = (val >> 16 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 3) = (val >> 24 & 0xFF) as u8; - } - self.idx += 4; - Ok(()) - } - - #[inline] - fn write_u64(&mut self, val: u64) -> Result<(), Error> { - self.check_bounds(8)?; - unsafe { - *self.buf.get_unchecked_mut(self.idx) = (val & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 1) = (val >> 8 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 2) = (val >> 16 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 3) = (val >> 24 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 4) = (val >> 32 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 5) = (val >> 40 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 6) = (val >> 48 & 0xFF) as u8; - *self.buf.get_unchecked_mut(self.idx + 7) = (val >> 56 & 0xFF) as u8; - } - self.idx += 8; - Ok(()) - } - - #[inline] - fn write_usize(&mut self, val: usize) -> Result<(), Error> { - self.write_u64(val as u64) - } -} - -type SerializeResult = Result; - -impl<'b, 'a: 'b> serde::Serializer for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - type SerializeSeq = Self; - type SerializeTuple = Self; - type SerializeTupleStruct = Self; - type SerializeTupleVariant = Self; - type SerializeMap = serde::ser::Impossible<(), Error>; - type SerializeStruct = Self; - type SerializeStructVariant = Self; - - - #[inline] - fn serialize_bool(self, v: bool) -> SerializeResult<()> { - self.write_u8(if v { 1 } else { 0 }) - } - - #[inline] - fn serialize_u8(self, v: u8) -> SerializeResult<()> { - self.write_u8(v) - } - - #[inline] - fn serialize_u16(self, v: u16) -> SerializeResult<()> { - self.write_u16(v) - } - - #[inline] - fn serialize_u32(self, v: u32) -> SerializeResult<()> { - self.write_u32(v) - } - - #[inline] - fn serialize_u64(self, v: u64) -> SerializeResult<()> { - self.write_u64(v) - } - - #[inline] - fn serialize_i8(self, v: i8) -> SerializeResult<()> { - self.write_u8(v as u8) - } - - #[inline] - fn serialize_i16(self, v: i16) -> SerializeResult<()> { - self.write_u16(v as u16) - } - - #[inline] - fn serialize_i32(self, v: i32) -> SerializeResult<()> { - self.write_u32(v as u32) - } - - #[inline] - fn serialize_i64(self, v: i64) -> SerializeResult<()> { - self.write_u64(v as u64) - } - - #[inline] - fn serialize_f32(self, v: f32) -> SerializeResult<()> { - self.write_u32(unsafe { transmute(v) }) - } - - #[inline] - fn serialize_f64(self, v: f64) -> SerializeResult<()> { - self.write_u64(unsafe { transmute(v) }) - } - - fn serialize_str(self, _: &str) -> SerializeResult<()> { - ns() - } - - fn serialize_char(self, c: char) -> SerializeResult<()> { - let (arr, sz) = c.to_utf8_array(); - self.check_bounds(sz)?; - for (i, c) in arr[..sz].iter().enumerate() { - unsafe { - *self.buf.get_unchecked_mut(self.idx + i) = *c; - } - } - self.idx += sz; - Ok(()) - } - - fn serialize_bytes(self, _: &[u8]) -> SerializeResult<()> { - ns() - } - - #[inline] - fn serialize_none(self) -> SerializeResult<()> { - self.write_u8(0) - } - - fn serialize_some(self, v: &T) -> SerializeResult<()> { - self.write_u8(1)?; - v.serialize(self) - } - - #[inline] - fn serialize_unit(self) -> SerializeResult<()> { - Ok(()) - } - - #[inline] - fn serialize_unit_struct(self, _: &'static str) -> SerializeResult<()> { - Ok(()) - } - - #[inline] - fn serialize_unit_variant(self, - _name: &'static str, - variant_index: u32, - _variant: &'static str) - -> SerializeResult<()> { - if variant_index > 255 { - debug_assert!(false, "too many enum variants: {}", _name); - return Err(Error::TooManyVariants) - } - self.write_u8(variant_index as u8) - } - - fn serialize_newtype_struct(self, _name: &'static str, value: &T) -> SerializeResult<()> { - value.serialize(self) - } - - fn serialize_newtype_variant(self, - _name: &'static str, - variant_index: u32, - _variant: &'static str, - value: &T) - -> SerializeResult<()> { - if variant_index > 255 { - debug_assert!(false, "too many enum variants: {}", _name); - return Err(Error::TooManyVariants); - } - self.write_u8(variant_index as u8)?; - value.serialize(self) - } - - #[inline] - fn serialize_seq(self, len: Option) -> SerializeResult { - match len { - None => { - ns() - }, - Some(len) => { - self.write_usize(len)?; - Ok(self) - } - } - } - - #[inline] - fn serialize_tuple(self, _len: usize) -> SerializeResult { - Ok(self) - } - - #[inline] - fn serialize_tuple_struct(self, _name: &'static str, _len: usize) -> SerializeResult { - Ok(self) - } - - #[inline] - fn serialize_tuple_variant(self, - _name: &'static str, - variant_index: u32, - _variant: &'static str, - _len: usize) - -> SerializeResult { - if variant_index > 255 { - debug_assert!(false, "too many enum variants: {}", _name); - return Err(Error::TooManyVariants); - } - self.write_u8(variant_index as u8)?; - Ok(self) - } - - fn serialize_map(self, _len: Option) -> SerializeResult { - ns() - } - - #[inline] - fn serialize_struct(self, _name: &'static str, _len: usize) -> SerializeResult { - Ok(self) - } - - #[inline] - fn serialize_struct_variant(self, - _name: &'static str, - variant_index: u32, - _variant: &'static str, - _len: usize) - -> SerializeResult { - if variant_index > 255 { - debug_assert!(false, "too many enum variants: {}", _name); - return Err(Error::TooManyVariants); - } - self.write_u8(variant_index as u8)?; - Ok(self) - } - - #[cfg(not(feature = "std"))] - fn collect_str(self, _value: &T) -> SerializeResult<()> { - ns() - } -} - -impl<'b, 'a: 'b> serde::ser::SerializeSeq for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_element(&mut self, value: &V) -> SerializeResult<()> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> SerializeResult<()> { Ok(()) } -} - -impl<'b, 'a: 'b> serde::ser::SerializeTuple for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_element(&mut self, value: &V) -> SerializeResult<()> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> SerializeResult<()> { Ok(()) } -} - -impl<'b, 'a: 'b> serde::ser::SerializeTupleStruct for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_field(&mut self, value: &V) -> Result<(), Error> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> Result<(), Error> { Ok(()) } -} - -impl<'b, 'a: 'b> serde::ser::SerializeTupleVariant for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_field(&mut self, value: &V) -> Result<(), Error> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> Result<(), Error> { Ok(()) } -} - -impl<'b, 'a: 'b> serde::ser::SerializeStruct for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_field(&mut self, _: &'static str, value: &V) -> Result<(), Error> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> Result<(), Error> { - Ok(()) - } -} - -impl<'b, 'a: 'b> serde::ser::SerializeStructVariant for &'b mut Serializer<'a> { - type Ok = (); - type Error = Error; - - fn serialize_field(&mut self, _: &'static str, value: &V) -> Result<(), Error> { - value.serialize(&mut **self) - } - - #[inline] - fn end(self) -> Result<(), Error> { Ok(()) } -} - -struct Deserializer<'a> { - buf: &'a [u8], - idx: usize, -} - -impl<'a> Deserializer<'a> { - #[inline] - fn check_bounds(&self, len: usize) -> Result<(), Error> { - if let Some(val) = self.idx.checked_add(len) { - if val <= self.buf.len() { - return Ok(()); - } - } - debug_assert!(false, "ran out of space deserializing value; fix your buffer size"); - Err(Error::EndOfStream) - } - - #[inline] - fn read_u8(&mut self) -> Result { - self.check_bounds(1)?; - let val = unsafe { - *self.buf.get_unchecked(self.idx) - }; - self.idx += 1; - Ok(val) - } - - #[inline] - fn read_u16(&mut self) -> Result { - self.check_bounds(2)?; - let mut val; - unsafe { - val = *self.buf.get_unchecked(self.idx) as u16; - val |= (*self.buf.get_unchecked(self.idx + 1) as u16) << 8; - } - self.idx += 2; - Ok(val) - } - - #[inline] - fn read_u32(&mut self) -> Result { - self.check_bounds(4)?; - let mut val; - unsafe { - val = *self.buf.get_unchecked(self.idx) as u32; - val |= (*self.buf.get_unchecked(self.idx + 1) as u32) << 8; - val |= (*self.buf.get_unchecked(self.idx + 2) as u32) << 16; - val |= (*self.buf.get_unchecked(self.idx + 3) as u32) << 24; - } - self.idx += 4; - Ok(val) - } - - #[inline] - fn read_u64(&mut self) -> Result { - self.check_bounds(8)?; - let mut val; - unsafe { - val = *self.buf.get_unchecked(self.idx) as u64; - val |= (*self.buf.get_unchecked(self.idx + 1) as u64) << 8; - val |= (*self.buf.get_unchecked(self.idx + 2) as u64) << 16; - val |= (*self.buf.get_unchecked(self.idx + 3) as u64) << 24; - val |= (*self.buf.get_unchecked(self.idx + 4) as u64) << 32; - val |= (*self.buf.get_unchecked(self.idx + 5) as u64) << 40; - val |= (*self.buf.get_unchecked(self.idx + 6) as u64) << 48; - val |= (*self.buf.get_unchecked(self.idx + 7) as u64) << 56; - } - self.idx += 8; - Ok(val) - } -} - - -struct SeqAccess<'a, 'b: 'a> { - deserializer: &'a mut Deserializer<'b>, - len: usize, -} - -impl<'a, 'b: 'a> serde::de::SeqAccess<'b> for SeqAccess<'a, 'b> { - type Error = Error; - - fn next_element_seed>(&mut self, seed: V) -> Result, Error> { - if self.len > 0 { - self.len -= 1; - Ok(Some(DeserializeSeed::deserialize(seed, &mut *self.deserializer)?)) - } else { - Ok(None) - } - } - - fn size_hint(&self) -> Option { - Some(self.len) - } -} - -type DeserializeResult = Result; - -impl<'b, 'de: 'b> serde::Deserializer<'de> for &'b mut Deserializer<'de> { - type Error = Error; - - fn deserialize_any>(self, _visitor: V) -> DeserializeResult { - ns() - } - - fn deserialize_bool>(self, visitor: V) -> DeserializeResult { - let value: u8 = Deserialize::deserialize(self)?; - match value { - 0 => visitor.visit_bool(false), - 1 => visitor.visit_bool(true), - _ => Err(Error::InvalidRepresentation), - } - } - - fn deserialize_u8>(self, visitor: V) -> DeserializeResult { - visitor.visit_u8(self.read_u8()?) - } - - fn deserialize_u16>(self, visitor: V) -> DeserializeResult { - visitor.visit_u16(self.read_u16()?) - } - - fn deserialize_u32>(self, visitor: V) -> DeserializeResult { - visitor.visit_u32(self.read_u32()?) - } - - fn deserialize_u64>(self, visitor: V) -> DeserializeResult { - visitor.visit_u64(self.read_u64()?) - } - - fn deserialize_i8>(self, visitor: V) -> DeserializeResult { - visitor.visit_i8(self.read_u8()? as i8) - } - - fn deserialize_i16>(self, visitor: V) -> DeserializeResult { - visitor.visit_i16(self.read_u16()? as i16) - } - - fn deserialize_i32>(self, visitor: V) -> DeserializeResult { - visitor.visit_i32(self.read_u32()? as i32) - } - - fn deserialize_i64>(self, visitor: V) -> DeserializeResult { - visitor.visit_i64(self.read_u64()? as i64) - } - - fn deserialize_f32>(self, visitor: V) -> DeserializeResult { - visitor.visit_f32(unsafe { transmute(self.read_u32()?) }) - } - fn deserialize_f64>(self, visitor: V) -> DeserializeResult { - visitor.visit_f64(unsafe { transmute(self.read_u64()?) }) - } - - fn deserialize_char>(self, visitor: V) -> DeserializeResult { - match Utf8Char::from_slice_start(&self.buf[self.idx..]) { - Ok((c, count)) => { - // this ought to be correct, if it weren't how did from_slice_start do its thing? - self.idx = self.idx.wrapping_add(count); - visitor.visit_char(c.to_char()) - }, - Err(_) => Err(Error::InvalidRepresentation), - } - } - - fn deserialize_str>(self, _visitor: V) -> DeserializeResult { - ns() - } - - fn deserialize_string>(self, _visitor: V) -> DeserializeResult { - ns() - } - - fn deserialize_bytes>(self, _visitor: V) -> DeserializeResult { - ns() - } - - fn deserialize_byte_buf>(self, _visitor: V) -> DeserializeResult { - ns() - } - - fn deserialize_option>(self, visitor: V) -> DeserializeResult { - let value: u8 = Deserialize::deserialize(&mut *self)?; - match value { - 0 => visitor.visit_none(), - 1 => visitor.visit_some(self), - _ => Err(Error::InvalidRepresentation), - } - } - - fn deserialize_unit>(self, visitor: V) -> DeserializeResult { - visitor.visit_unit() - } - - fn deserialize_unit_struct>(self, - _name: &'static str, - visitor: V) - -> DeserializeResult { - visitor.visit_unit() - } - - fn deserialize_newtype_struct>(self, - _name: &str, - visitor: V) - -> DeserializeResult { - visitor.visit_newtype_struct(self) - } - - fn deserialize_seq>(self, visitor: V) -> DeserializeResult { - let len = Deserialize::deserialize(&mut *self)?; - - visitor.visit_seq(SeqAccess { - deserializer: self, - len: len, - }) - } - - fn deserialize_tuple>(self, len: usize, visitor: V) -> DeserializeResult { - visitor.visit_seq(SeqAccess { deserializer: self, len: len }) - } - - fn deserialize_tuple_struct>(self, - _name: &'static str, - len: usize, - visitor: V) - -> DeserializeResult { - self.deserialize_tuple(len, visitor) - } - - fn deserialize_map>(self, _visitor: V) -> DeserializeResult { - Err(Error::NotSupported) - } - - fn deserialize_struct>(self, - _name: &str, - fields: &'static [&'static str], - visitor: V) - -> DeserializeResult { - self.deserialize_tuple(fields.len(), visitor) - } - - fn deserialize_enum>(self, - _enum: &'static str, - _variants: &'static [&'static str], - visitor: V) - -> Result { - visitor.visit_enum(self) - } - - - fn deserialize_identifier>(self, _visitor: V) -> DeserializeResult { - // not the panic because it seems noone cares about these? - Err(Error::NotSupported) - } - - fn deserialize_ignored_any>(self, _visitor: V) -> DeserializeResult { - ns() - } -} - -impl<'b, 'de: 'b> serde::de::VariantAccess<'de> for &'b mut Deserializer<'de> { - type Error = Error; - - fn unit_variant(self) -> Result<(), Error> { - Ok(()) - } - - fn newtype_variant_seed>(self, seed: V) -> DeserializeResult { - DeserializeSeed::deserialize(seed, self) - } - - fn tuple_variant>(self, len: usize, visitor: V) -> DeserializeResult { - serde::de::Deserializer::deserialize_tuple(self, len, visitor) - } - - fn struct_variant>(self, - fields: &'static [&'static str], - visitor: V) - -> Result { - serde::de::Deserializer::deserialize_tuple(self, fields.len(), visitor) - } -} - -impl<'b, 'de: 'b> serde::de::EnumAccess<'de> for &'b mut Deserializer<'de> { - type Error = Error; - type Variant = Self; - - fn variant_seed>(self, seed: V) -> DeserializeResult<(V::Value, Self)> { - let x: u8 = Deserialize::deserialize(&mut *self)?; - let v = DeserializeSeed::deserialize(seed, (x as u32).into_deserializer())?; - Ok((v, self)) - } -} - diff --git a/patches/ssmarshal/tests/roundtrip.rs b/patches/ssmarshal/tests/roundtrip.rs deleted file mode 100644 index d4ea420..0000000 --- a/patches/ssmarshal/tests/roundtrip.rs +++ /dev/null @@ -1,239 +0,0 @@ -// Copyright (c) 2017 The Robigalia Project Developers Licensed under the Apache License, Version -// 2.0 or the MIT license -// , at your option. All files in the project -// carrying such notice may not be copied, modified, or distributed except according to those -// terms. - -#![feature(proc_macro, plugin)] -#![plugin(quickcheck_macros)] -#![allow(non_snake_case)] - -extern crate serde; -#[macro_use] -extern crate serde_derive; -extern crate quickcheck; - -extern crate ssmarshal; - -use serde::{Serialize}; -use serde::de::DeserializeOwned; - -use ssmarshal::{serialize, deserialize}; - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct U8(u8); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct U16(u16); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct U32(u32); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct U64(u64); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct USize(usize); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct I8(i8); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct I16(i16); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct I32(i32); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct I64(i64); - -#[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize)] -struct ISize(isize); - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct F32(f32); - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct F64(f64); - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct Simple { - a: u8, - b: u16, - c: u32, - d: u64, - e: i8, - f: f32, - g: u8, - h: f64, -} - -impl quickcheck::Arbitrary for Simple { - fn arbitrary(g: &mut G) -> Simple { - Simple { - a: g.gen(), - b: g.gen(), - c: g.gen(), - d: g.gen(), - e: g.gen(), - f: g.gen(), - g: g.gen(), - h: g.gen(), - } - } -} - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct Unit; - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct Complex { - a: Simple, - e: Unit, - b: Simple, - c: [u8; 7], - d: (), - f: [Unit; 3], -} - -impl quickcheck::Arbitrary for Complex { - fn arbitrary(g: &mut G) -> Complex { - Complex { - a: Simple::arbitrary(g), - b: Simple::arbitrary(g), - c: g.gen(), - d: (), - e: Unit, - f: [Unit; 3], - } - } -} - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -#[repr(C)] -enum ComplexEnum { - A, - B(Simple), - C(u8, u16), - D(isize), - E { - foo: Simple - }, - F { - bar: Complex, - baz: Simple, - qux: char - } -} - -impl quickcheck::Arbitrary for ComplexEnum { - fn arbitrary(g: &mut G) -> ComplexEnum { - match g.gen_range(0, 6) { - 0 => { - ComplexEnum::A - }, - 1 => { - ComplexEnum::B(Simple::arbitrary(g)) - }, - 2 => { - ComplexEnum::C(g.gen(), g.gen()) - }, - 3 => { - ComplexEnum::D(g.gen()) - }, - 4 => { - ComplexEnum::E { foo: Simple::arbitrary(g) } - }, - 5 => { - ComplexEnum::F { bar: Complex::arbitrary(g), baz: Simple::arbitrary(g), qux: g.gen() } - }, - _ => unreachable!() - } - } -} - -#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] -struct TupleStruct(u8, u64, Simple, Option); - -impl quickcheck::Arbitrary for TupleStruct { - fn arbitrary(g: &mut G) -> TupleStruct { - TupleStruct(g.gen(), g.gen(), quickcheck::Arbitrary::arbitrary(g), quickcheck::Arbitrary::arbitrary(g)) - } -} - -fn rt_val(val: &T) -> bool { - let mut buf = vec![0; std::mem::size_of::()]; - serialize(&mut buf, val).unwrap(); - let new_val: T = deserialize(&buf).unwrap().0; - println!("\n\nOld: {:?}\nNew: {:?}", val, new_val); - val == &new_val -} - -#[quickcheck] -fn rt_simple(val: Simple) -> bool { - rt_val(&val) -} - -#[quickcheck] -fn rt_complex(val: Complex) -> bool { - rt_val(&val) -} - -#[quickcheck] -fn rt_complexenum(val: ComplexEnum) -> bool { - rt_val(&val) -} - -#[quickcheck] -fn rt_tuplestruct(val: TupleStruct) -> bool { - rt_val(&val) -} - -macro_rules! rt { - ($(($name:ident, $t:ty)),*) => { - $(#[quickcheck] fn $name(val: $t) -> bool { - rt_val::<$t>(&val) - })* - } -} - -macro_rules! rt_wrap { - ($(($name:ident, $t:ty, $n:ident)),*) => { - $(#[quickcheck] fn $name(val: $t) -> bool { - rt_val::<$n>(&$n(val)) - })* - } -} - -rt! { - (rt_i8, i8), - (rt_i16, i16), - (rt_i32, i32), - (rt_i64, i64), - (rt_u8, u8), - (rt_u16, u16), - (rt_u32, u32), - (rt_u64, u64), - (rt_usize, usize), - (rt_isize, isize), - (rt_f32, f32), - (rt_f64, f64), - (rt_tp1, (u8, u8, u8)), - (rt_tp2, (u8, i16, u8)), - (rt_tp3, (u8, i16, u8)), - (rt_tp4, (usize, i16, isize)), - (rt_char, char) -} - -rt_wrap! { - (rt_I8, i8 , I8), - (rt_I16, i16, I16), - (rt_I32, i32, I32), - (rt_I64, i64, I64), - (rt_U8, u8 , U8), - (rt_U16, u16, U16), - (rt_U32, u32, U32), - (rt_U64, u64, U64), - (rt_F32, f32, F32), - (rt_F64, f64, F64) -} diff --git a/patches/usbip-device/.cargo-ok b/patches/usbip-device/.cargo-ok deleted file mode 100644 index 5f8b795..0000000 --- a/patches/usbip-device/.cargo-ok +++ /dev/null @@ -1 +0,0 @@ -{"v":1} \ No newline at end of file diff --git a/patches/usbip-device/.cargo_vcs_info.json b/patches/usbip-device/.cargo_vcs_info.json deleted file mode 100644 index feb09e1..0000000 --- a/patches/usbip-device/.cargo_vcs_info.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "git": { - "sha1": "cc91cbd9c3f93425b998d2d57cfb5b6a8c98c1ea" - }, - "path_in_vcs": "" -} \ No newline at end of file diff --git a/patches/usbip-device/.gitignore b/patches/usbip-device/.gitignore deleted file mode 100644 index 62ea6b1..0000000 --- a/patches/usbip-device/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -.vscode/ -/target -Cargo.lock diff --git a/patches/usbip-device/Cargo.toml b/patches/usbip-device/Cargo.toml deleted file mode 100644 index b53d216..0000000 --- a/patches/usbip-device/Cargo.toml +++ /dev/null @@ -1,53 +0,0 @@ -# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO -# -# When uploading crates to the registry Cargo will automatically -# "normalize" Cargo.toml files for maximal compatibility -# with all versions of Cargo and also rewrite `path` dependencies -# to registry (e.g., crates.io) dependencies. -# -# If you are reading this file be aware that the original Cargo.toml -# will likely look very different (and much more reasonable). -# See Cargo.toml.orig for the original contents. - -[package] -edition = "2018" -name = "usbip-device" -version = "0.1.5" -authors = ["Leon Tan "] -description = "An implementation of usb-device on top of USBIP device." -readme = "README.md" -keywords = [ - "no-std", - "embedded", - "usb", - "usbip", -] -license = "Apache-2.0 OR MIT" -repository = "https://github.com/Sawchord/usbip-device" - -[dependencies.bitflags] -version = "1.3.2" -default-features = false - -[dependencies.log] -version = "0.4.17" -default-features = false - -[dependencies.usb-device] -version = "0.2.9" -default-features = false - -[dev-dependencies.pretty_env_logger] -version = "0.4.0" -default-features = false - -[dev-dependencies.usbd-hid] -version = "0.6.0" -default-features = false - -[dev-dependencies.usbd-serial] -version = "0.1.1" -default-features = false -[dependencies] -usbd-serial = "0.2.2" -usbd-hid = "0.8.2" diff --git a/patches/usbip-device/Cargo.toml.orig b/patches/usbip-device/Cargo.toml.orig deleted file mode 100644 index 1b09583..0000000 --- a/patches/usbip-device/Cargo.toml.orig +++ /dev/null @@ -1,20 +0,0 @@ -[package] -name = "usbip-device" -version = "0.1.5" -authors = ["Leon Tan "] -edition = "2018" -readme = "README.md" -keywords = ["no-std", "embedded", "usb", "usbip"] -license = "Apache-2.0 OR MIT" -description = "An implementation of usb-device on top of USBIP device." -repository = "https://github.com/Sawchord/usbip-device" - -[dependencies] -usb-device = { version = "0.2.9", default-features = false } -log = { version = "0.4.17", default-features = false } -bitflags = { version = "1.3.2", default-features = false } - -[dev-dependencies] -pretty_env_logger = { version = "0.4.0", default-features = false } -usbd-serial = { version = "0.1.1", default-features = false } -usbd-hid = { version = "0.6.0", default-features = false } \ No newline at end of file diff --git a/patches/usbip-device/LICENSE-APACHE b/patches/usbip-device/LICENSE-APACHE deleted file mode 100644 index 4e38cd3..0000000 --- a/patches/usbip-device/LICENSE-APACHE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright 2021 Leon Tan - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/patches/usbip-device/LICENSE-MIT b/patches/usbip-device/LICENSE-MIT deleted file mode 100644 index 604e2a3..0000000 --- a/patches/usbip-device/LICENSE-MIT +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 Leon Tan - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/patches/usbip-device/README.md b/patches/usbip-device/README.md deleted file mode 100644 index 2348686..0000000 --- a/patches/usbip-device/README.md +++ /dev/null @@ -1,69 +0,0 @@ -[1]: https://docs.rs/usb-device/0.2.7/usb_device/ -[3]: https://docs.rs/usb-device/0.2.7/usb_device/class/trait.UsbClass.html -[4]: https://docs.rs/usb-device/0.2.7/usb_device/bus/trait.UsbBus.html - -[doc-badge]: https://docs.rs/usbip-device/badge.svg -[doc-link]: https://docs.rs/usbip-device - -[crates-badge]: https://img.shields.io/crates/v/usbip-device -[crates-link]: https://crates.io/crates/usbip-device - -[apache2-license]: https://spdx.org/licenses/Apache-2.0.html -[mit-license]: https://spdx.org/licenses/MIT.htm - -# Usb-Hid Driver - -[![crates.io][crates-badge]][crates-link] -[![Documentation][doc-badge]][doc-link] - -This is an implementation of the [`UsbBus`][4] trait of [`usb-device`][1], simulating a USB device as a USBIP server. - -## Note - -This crate is **not** intended to be used in production ever. -It's purpose is to ease development of new [`UsbClass`][3] implementation or to emulate USB devices for easier embedded application development. - -## Usage - -The usbip client can be stared in the following way: - -```bash -sudo apt-get install linux-tools-generic -``` - -Then, start the application. - -```bash -cargo run --example serial_echo -``` - -and then start the USBIP client. - -```bash -// Start the vhci driver -sudo modprobe vhci-hcd - -// List available devices -usbip list -r "localhost" - -// Attach USB device -usbip attach -r "localhost" -b "1-1" - -// List connected devices -usbip port - -// Detach device -usbip detach -p "port" -``` - -Depending on you machine setup, you might need do `sudo`. - -## Known Bugs - -This is a very alpha software, which still has a lot of quirks to be worked out. - -- When using HID, the connection always fails the first time and usually works the second time. It is not entirely clear, why. - -## License - -[Apache-2.0][apache2-license] or [MIT][mit-license]. diff --git a/patches/usbip-device/examples/serial_echo.rs b/patches/usbip-device/examples/serial_echo.rs deleted file mode 100644 index d8fd0c4..0000000 --- a/patches/usbip-device/examples/serial_echo.rs +++ /dev/null @@ -1,43 +0,0 @@ -//! This example registers an ACM device, which can be connected -//! too using a serial terminal program, e.g. `screen`. -//! All printable characters are sent back, therefore, this program acts -//! as a serial echo. - -use usb_device::{bus::UsbBusAllocator, prelude::*}; -use usbd_serial::{SerialPort, USB_CLASS_CDC}; -use usbip_device::UsbIpBus; - -fn main() -> Result<(), Box> { - pretty_env_logger::init(); - - log::info!("initializing allocator"); - - let bus_allocator = UsbBusAllocator::new(UsbIpBus::new()); - let mut usb_serial = SerialPort::new(&bus_allocator); - let mut usb_bus = UsbDeviceBuilder::new(&bus_allocator, UsbVidPid(0x16c0, 0x27dd)) - .manufacturer("Fake company") - .product("Serial port") - .serial_number("TEST") - .device_class(USB_CLASS_CDC) - .build(); - - loop { - usb_bus.poll(&mut [&mut usb_serial]); - std::thread::sleep(std::time::Duration::from_millis(5)); - - let mut buf = [0; 64]; - if let Ok(count) = usb_serial.read(&mut buf) { - let text = String::from_utf8_lossy(&buf); - log::info!("read {} bytes: {}", count, text); - - // Send back, poll usb until we are ready - loop { - if let Ok(count) = usb_serial.write(&buf[0..count]) { - log::debug!("sent back {} bytes", count); - break; - } - usb_bus.poll(&mut [&mut usb_serial]); - } - } - } -} diff --git a/patches/usbip-device/examples/twitching_mouse.rs b/patches/usbip-device/examples/twitching_mouse.rs deleted file mode 100644 index 4e3027f..0000000 --- a/patches/usbip-device/examples/twitching_mouse.rs +++ /dev/null @@ -1,45 +0,0 @@ -//! This example registers a mouse as a HID device and then moves the -//! cursor down every couple of seconds. - -use usb_device::{bus::UsbBusAllocator, prelude::*}; -use usbd_hid::{ - descriptor::{generator_prelude::*, MouseReport}, - hid_class::HIDClass, -}; -use usbip_device::UsbIpBus; - -fn main() -> Result<(), Box> { - pretty_env_logger::init(); - - log::info!("initializing allocator"); - - let bus_allocator = UsbBusAllocator::new(UsbIpBus::new()); - let mut usb_hid = HIDClass::new(&bus_allocator, MouseReport::desc(), 5); - let mut usb_bus = UsbDeviceBuilder::new(&bus_allocator, UsbVidPid(0x16c0, 0x27dd)) - .manufacturer("Fake company") - .product("Twitchy Mousey") - .serial_number("TEST") - .device_class(0xEF) - .build(); - - let mut cnt = 0; - - loop { - std::thread::sleep(std::time::Duration::from_millis(5)); - cnt += 5; - - if cnt == 1000 { - let _ = usb_hid.push_input(&MouseReport { - x: 0, - y: 4, - buttons: 0, - wheel: 0, - pan: 0, - }); - - cnt = 0; - } - - usb_bus.poll(&mut [&mut usb_hid]); - } -} diff --git a/patches/usbip-device/src/cmd.rs b/patches/usbip-device/src/cmd.rs deleted file mode 100644 index 1f014c9..0000000 --- a/patches/usbip-device/src/cmd.rs +++ /dev/null @@ -1,86 +0,0 @@ -use std::{convert::TryInto, fmt::Debug}; - -/// The command type of the Urb -#[derive(Debug, Clone, Copy)] -pub enum UsbCmd { - Request, - UnlinkRequest, - Response, - UnlinkResponse, -} - -impl UsbCmd { - pub fn to_u32(self) -> u32 { - match self { - UsbCmd::Request => 1, - UsbCmd::UnlinkRequest => 2, - UsbCmd::Response => 3, - UsbCmd::UnlinkResponse => 4, - } - } - - pub fn try_from_u32(num: u32) -> Option { - match num { - 1 => Some(UsbCmd::Request), - 2 => Some(UsbCmd::UnlinkRequest), - 3 => Some(UsbCmd::Response), - 4 => Some(UsbCmd::UnlinkResponse), - _ => None, - } - } -} - -#[derive(Debug, Clone)] -pub struct UsbIpHeader { - pub command: UsbCmd, - pub seqnum: u32, - pub devid: u32, - pub direction: Direction, - pub ep: u32, -} - -impl UsbIpHeader { - pub fn to_array(&self) -> [u8; 20] { - let mut result = [0; 20]; - - result[0..4].copy_from_slice(&self.command.to_u32().to_be_bytes()); - result[4..8].copy_from_slice(&self.seqnum.to_be_bytes()); - result[8..12].copy_from_slice(&self.devid.to_be_bytes()); - result[12..16].copy_from_slice(&self.direction.bits().to_be_bytes()); - result[16..20].copy_from_slice(&self.ep.to_be_bytes()); - - result - } - - pub fn from_slice(data: &[u8]) -> Self { - Self { - command: UsbCmd::try_from_u32(u32::from_be_bytes(data[0..4].try_into().unwrap())) - .unwrap(), - seqnum: u32::from_be_bytes(data[4..8].try_into().unwrap()), - devid: u32::from_be_bytes(data[8..12].try_into().unwrap()), - direction: Direction::from_bits_truncate(u32::from_be_bytes( - data[12..16].try_into().unwrap(), - )), - ep: u32::from_be_bytes(data[16..20].try_into().unwrap()), - } - } -} - -bitflags::bitflags! { - pub struct TransferFlags: u32 { - const SHORT_NOT_OK = 0x00000001; - const ISO_ASAP = 0x00000002; - const NO_TRANSFER_DMA_MAP = 0x00000004; - const ZERO_PACKET = 0x00000040; - const NO_INTERRUPT = 0x00000080; - const FREE_BUFFER = 0x00000100; - const DIR_MASK = 0x00000200; - } -} - -bitflags::bitflags! { - pub struct Direction: u32 { - const OUT = 0x00000000; - const IN = 0x00000001; - } -} diff --git a/patches/usbip-device/src/debug.rs b/patches/usbip-device/src/debug.rs deleted file mode 100644 index 861c7e3..0000000 --- a/patches/usbip-device/src/debug.rs +++ /dev/null @@ -1,39 +0,0 @@ -//! A collection of functions which allow for better debug output. - -use std::fmt::{Debug, Formatter, LowerHex, Result as FmtResult}; - -/// Just a thin wrapper to allow for printing in hexadecimal -#[derive(Clone)] -pub struct DbgBuf<'a>(pub &'a [u8]); - -impl Debug for DbgBuf<'_> { - fn fmt(&self, f: &mut Formatter) -> FmtResult { - if self.0.len() == 0 { - return f.write_str("[]"); - } - - f.write_str("[ ")?; - f.write_fmt(format_args!("{:02x}", self))?; - f.write_str("]") - } -} - -impl LowerHex for DbgBuf<'_> { - fn fmt(&self, fmt: &mut Formatter) -> FmtResult { - for byte in self.0 { - (fmt.write_fmt(format_args!("{:02x} ", byte)))?; - } - Ok(()) - } -} - -#[derive(Clone)] -pub struct DbgEmpty; - -impl Debug for DbgEmpty { - fn fmt(&self, f: &mut Formatter) -> FmtResult { - f.write_str("(empty)") - } -} - -// TODO: Better output of Setup packets diff --git a/patches/usbip-device/src/handler.rs b/patches/usbip-device/src/handler.rs deleted file mode 100644 index d4d5b88..0000000 --- a/patches/usbip-device/src/handler.rs +++ /dev/null @@ -1,537 +0,0 @@ -use crate::{ - cmd::{Direction, TransferFlags, UsbCmd, UsbIpHeader}, - op::{OpDeviceDescriptor, OpInterfaceDescriptor, OpRequest, OpResponse, OpResponseCommand}, - request::{UsbIpCmdSubmit, UsbIpCmdUnlink, UsbIpRequest, UsbIpRequestCmd}, - response::{UsbIpResponse, UsbIpResponseCmd, UsbIpRetSubmit, UsbIpRetUnlink}, - UsbIpBusInner, -}; -use std::{ - io::{ErrorKind, Write}, - net::{TcpListener, TcpStream}, -}; -use usb_device::{endpoint::EndpointType, UsbError}; - -const ECONNRESET: i32 = 104; - -#[derive(Debug)] -pub struct SocketHandler { - listener: TcpListener, - connection: Option, -} - -impl SocketHandler { - /// Create a new handler - pub fn new() -> Self { - let listener = TcpListener::bind(("127.0.0.1", 3240)).unwrap(); - listener.set_nonblocking(true).unwrap(); - Self { - listener, - connection: None, - } - } - - pub fn is_connected(&self) -> bool { - self.connection.is_some() - } -} - -impl UsbIpBusInner { - pub fn handle_socket(&mut self) { - match self.handler.connection { - // If not connected, listen for new connections - None => match self.handler.listener.accept() { - Ok((connection, addr)) => { - log::info!("new connection from: {}", addr); - self.handler.connection = Some(connection) - } - Err(err) if err.kind() == ErrorKind::WouldBlock => (), - Err(err) => panic!("unexpected error: {}", err), - }, - - // If connected, receive the data - Some(ref mut stream) => { - match self.reset { - // If in reset state, answer op msgs - true => { - // in case of Op, we directly send a response here - let op = match OpRequest::read(stream) { - Ok(op) => op, - Err(err) if err.kind() == ErrorKind::WouldBlock => return, - Err(err) if err.kind() == ErrorKind::NotConnected => { - self.handler.connection = None; - return; - } - Err(err) => panic!("unexpected error {}", err), - }; - self.handle_op(op); - } - // If not in reset state, expect commands - false => { - let cmd = match UsbIpRequest::read(stream) { - Ok(cmd) => cmd, - Err(err) if err.kind() == ErrorKind::WouldBlock => return, - Err(err) if err.kind() == ErrorKind::NotConnected => { - // If the connection is no longer connected, return to initial state - self.reset = true; - self.handler.connection = None; - return; - } - Err(err) => panic!("unexpected error {}", err), - }; - self.handle_usbip_pkg(cmd); - } - } - } - } - } - - pub fn try_send_pending(&mut self, ep_addr: usize) { - let ep = match self.get_endpoint(ep_addr) { - Ok(ep) => ep, - Err(_) => return, - }; - - if !ep.is_rts() { - return; - } - - let (header, cmd, _) = match ep.pending_ins.pop_front() { - Some(urb) => urb, - None => return, - }; - let bytes_requested = cmd.transfer_buffer_length as usize; - - let ep_in = match ep.get_in() { - Ok(ep_in) => ep_in, - Err(UsbError::InvalidEndpoint) => return, - Err(e) => panic!("unexpected error {:?} while processing in packet", e), - }; - - // Read data from the packet buffer into the output buffer - // We must be careful to not send more bytes than requested - let mut out_buf = Vec::new(); - while let Some(mut data) = ep_in.data.pop_front() { - let remaining = bytes_requested.saturating_sub(out_buf.len()); - let chunk_len = data.len(); - - if remaining == 0 { - // We've already satisfied the host request; push the current - // data back so it can be used to service the next transfer. - ep_in.data.push_front(data); - break; - } - - if chunk_len <= remaining { - out_buf.extend_from_slice(&data); - } else { - out_buf.extend_from_slice(&data[..remaining]); - let leftover = data.split_off(remaining); - ep_in.data.push_front(leftover); - } - - // Control transactions are terminated by a short packet. When we - // see one, the transfer is complete even if the host requested - // more bytes than were queued by the device. - if chunk_len < ep_in.max_packet_size as usize { - break; - } - } - - // After sending, the in_complete can be set - ep.in_complete_flag = true; - - // TODO: Error if exact read was requested and out_buf.len() smaller than bytes_requested - - let response = UsbIpResponse { - header: UsbIpHeader { - command: UsbCmd::Response, - seqnum: header.seqnum, - devid: 2, - direction: Direction::IN, - ep: ep_addr as u32, - }, - cmd: UsbIpResponseCmd::Cmd(UsbIpRetSubmit { - status: 0, - actual_length: out_buf.len() as i32, - start_frame: 0, - number_of_packets: 0, - error_count: 0, - }), - data: out_buf, - }; - log::debug!("{:?}", response); - - self.handler - .connection - .as_mut() - .unwrap() - .write_all(&response.to_vec().unwrap()) - .unwrap(); - } - - /// Handles an incomming op packet, sends out the corresponding response - fn handle_op(&mut self, op: OpRequest) { - match op { - OpRequest::ListDevices(header) => { - let list_response = OpResponse { - version: header.version, - path: "/sys/devices/pci0000:00/0000:00:01.2/usb1/1-1".to_string(), - bus_id: "1-1".to_string(), - descriptor: OpDeviceDescriptor { - busnum: 1, - devnum: 2, - speed: self.device_speed, - - // These values should be settable via configuration - vendor: 0x1111, - product: 0x1010, - bcd_device: 0, - device_class: 0, - device_subclass: 0, - device_protocol: 0, - configuration_value: 0, - - // These are fixed for this implementation - num_configurations: 1, - num_interfaces: 1, - }, - cmd: OpResponseCommand::ListDevices(OpInterfaceDescriptor { - // TODO: Make these setable - interface_class: 0, - interface_subclass: 0, - interface_protocol: 0, - padding: 0, - }), - }; - - self.handler - .connection - .as_mut() - .unwrap() - .write_all(&list_response.to_vec().unwrap()) - .unwrap(); - } - OpRequest::ConnectDevice(header) => { - let list_response = OpResponse { - version: header.version, - path: "/sys/devices/pci0000:00/0000:00:01.2/usb1/1-1".to_string(), - bus_id: "1-1".to_string(), - descriptor: OpDeviceDescriptor { - busnum: 1, - devnum: 2, - speed: self.device_speed, - - // These values should be settable via configuration - vendor: 0x1111, - product: 0x1010, - bcd_device: 0, - device_class: 0, - device_subclass: 0, - device_protocol: 0, - configuration_value: 0, - - // These are fixed for this implementation - num_configurations: 1, - num_interfaces: 1, - }, - cmd: OpResponseCommand::ConnectDevice, - }; - - // Set the inner value to not reset, because we have connected the device - log::info!("device is leaving reset state"); - self.reset = false; - - self.handler - .connection - .as_mut() - .unwrap() - .write_all(&list_response.to_vec().unwrap()) - .unwrap(); - } - } - } - - fn handle_usbip_pkg(&mut self, request: UsbIpRequest) { - log::debug!("{:?}", request); - - match request.cmd { - UsbIpRequestCmd::Unlink(unlink) => self.handle_unlink(request.header, unlink), - UsbIpRequestCmd::Cmd(cmd) => self.handle_cmd(request.header, cmd, request.data), - } - } - - /// Handle a [`UsbIpCmdSubmit`] package - fn handle_cmd(&mut self, header: UsbIpHeader, cmd: UsbIpCmdSubmit, data: Vec) { - let mut control_abort_headers = Vec::new(); - - { - // Get the endpoint - let ep = match self.get_endpoint(header.ep as usize) { - Ok(ep) => ep, - Err(err) => { - log::warn!("reveiced message for unimplemented endpoint {:?}", err); - return; - } - }; - - let has_setup = cmd.setup != [0, 0, 0, 0, 0, 0, 0, 0]; - let is_control_setup = header.ep == 0 && has_setup; - - if is_control_setup { - match ep.get_in() { - Ok(ep_in) => { - if !ep_in.data.is_empty() { - log::debug!( - "clearing pending IN data for endpoint 0 after new SETUP" - ); - ep_in.data.clear(); - } - } - Err(err) => { - log::debug!("failed to access IN pipe for endpoint 0: {:?}", err); - } - } - - if !ep.pending_ins.is_empty() { - log::debug!( - "failing {} pending IN URBs for endpoint 0 after new SETUP", - ep.pending_ins.len() - ); - - while let Some((pending_header, _, _)) = ep.pending_ins.pop_front() { - control_abort_headers.push(pending_header); - } - } - } - - // check wether we have a setup packet - // NOTE: This assumes the control endpoints have no URBs pending - if has_setup { - ep.get_out().unwrap().data.push_back(cmd.setup.to_vec()); - ep.setup_flag = true; - } - - match header.direction { - Direction::OUT => { - let ep_out = ep.get_out().unwrap(); - - // pass the data into the correct buffers - for chunk in data.chunks(ep_out.max_packet_size as usize) { - ep_out.data.push_back(chunk.to_vec()); - } - - if cmd.transfer_flags.contains(TransferFlags::ZERO_PACKET) - && ep_out.ty == EndpointType::Bulk - { - ep_out.data.push_back(vec![]); - } - - self.ack_cmd_out(header.ep, header.seqnum, data.len()); - } - Direction::IN => { - let ep_addr = header.ep; - ep.pending_ins.push_back((header, cmd, data)); - self.try_send_pending(ep_addr as usize); - } - _ => panic!(), - } - } - - for pending_header in control_abort_headers { - let response = UsbIpResponse { - header: UsbIpHeader { - command: UsbCmd::Response, - seqnum: pending_header.seqnum, - devid: 2, - direction: Direction::IN, - ep: pending_header.ep, - }, - cmd: UsbIpResponseCmd::Cmd(UsbIpRetSubmit { - status: -ECONNRESET, - actual_length: 0, - start_frame: 0, - number_of_packets: 0, - error_count: 0, - }), - data: vec![], - }; - - match self.handler.connection.as_mut() { - Some(connection) => { - let response_bytes = response - .to_vec() - .expect("failed to serialize abort response"); - - if let Err(err) = connection.write_all(&response_bytes) { - log::warn!( - "failed to send abort response for seqnum {}: {:?}", - pending_header.seqnum, - err - ); - } - } - None => { - log::warn!( - "dropping pending IN URB {} without an active connection", - pending_header.seqnum - ); - } - } - } - } - - /// Send an acknowledgement after recieving a cmd out package. - fn ack_cmd_out(&mut self, ep: u32, seqnum: u32, len: usize) { - let response = UsbIpResponse { - header: UsbIpHeader { - command: UsbCmd::Response, - seqnum, - devid: 2, - direction: Direction::OUT, - ep, - }, - cmd: UsbIpResponseCmd::Cmd(UsbIpRetSubmit { - status: 0, - actual_length: len as i32, - start_frame: 0, - number_of_packets: 0, - error_count: 0, - }), - data: vec![], - }; - log::debug!("{:?}", response); - - self.handler - .connection - .as_mut() - .unwrap() - .write_all(&response.to_vec().unwrap()) - .unwrap(); - } - - /// Handle a received unlink package - fn handle_unlink(&mut self, header: UsbIpHeader, unlink: UsbIpCmdUnlink) { - match self.unlink(unlink.seqnum) { - true => (), - false => { - log::warn!( - "received request to remove urb {} that does not exists", - unlink.seqnum - ); - } - } - - self.ack_unlink(header.ep, header.seqnum); - } - - /// Send an acknowledgement after recieving an unlink package. - fn ack_unlink(&mut self, ep: u32, seqnum: u32) { - let response = UsbIpResponse { - header: UsbIpHeader { - command: UsbCmd::UnlinkResponse, - seqnum, - devid: 2, - direction: Direction::OUT, - ep, - }, - cmd: UsbIpResponseCmd::Unlink(UsbIpRetUnlink { status: 0 }), - data: vec![], - }; - log::debug!("{:?}", response); - - self.handler - .connection - .as_mut() - .unwrap() - .write_all(&response.to_vec().unwrap()) - .unwrap(); - } -} - -#[cfg(test)] -mod tests { - use super::*; - use crate::Pipe; - use std::collections::VecDeque; - - fn make_control_pipe() -> Pipe { - Pipe { - data: VecDeque::new(), - ty: EndpointType::Control, - max_packet_size: 64, - interval: 0, - } - } - - #[test] - fn new_control_setup_clears_in_data() { - let mut bus = UsbIpBusInner::new(); - - bus.endpoint[0].pipe_in = Some(make_control_pipe()); - bus.endpoint[0].pipe_out = Some(make_control_pipe()); - - let stale_header = UsbIpHeader { - command: UsbCmd::Request, - seqnum: 42, - devid: 2, - direction: Direction::IN, - ep: 0, - }; - - let stale_cmd = UsbIpCmdSubmit { - transfer_flags: TransferFlags::empty(), - transfer_buffer_length: 0, - start_frame: 0, - number_of_packets: 0, - interval: 0, - setup: [0; 8], - }; - - bus.endpoint[0] - .pending_ins - .push_back((stale_header, stale_cmd, Vec::new())); - - if let Some(ref mut pipe_in) = bus.endpoint[0].pipe_in { - pipe_in.data.push_back(vec![0xAA; pipe_in.max_packet_size as usize]); - } - - let header = UsbIpHeader { - command: UsbCmd::Request, - seqnum: 1, - devid: 2, - direction: Direction::IN, - ep: 0, - }; - - let new_seqnum = header.seqnum; - - let cmd = UsbIpCmdSubmit { - transfer_flags: TransferFlags::empty(), - transfer_buffer_length: 0, - start_frame: 0, - number_of_packets: 0, - interval: 0, - setup: [1, 0, 0, 0, 0, 0, 0, 0], - }; - - bus.handle_cmd(header, cmd, Vec::new()); - - assert!( - bus.endpoint[0] - .pipe_in - .as_ref() - .expect("control IN pipe missing") - .data - .is_empty(), - "control endpoint IN data should be cleared before queuing IN request" - ); - - let pending_seqnums: Vec<_> = bus.endpoint[0] - .pending_ins - .iter() - .map(|(pending_header, _, _)| pending_header.seqnum) - .collect(); - - assert_eq!(pending_seqnums, vec![new_seqnum]); - } -} diff --git a/patches/usbip-device/src/lib.rs b/patches/usbip-device/src/lib.rs deleted file mode 100644 index c27a903..0000000 --- a/patches/usbip-device/src/lib.rs +++ /dev/null @@ -1,509 +0,0 @@ -pub(crate) mod cmd; -pub(crate) mod debug; -pub(crate) mod handler; -pub(crate) mod op; -pub(crate) mod request; -pub(crate) mod response; - -use crate::{cmd::UsbIpHeader, handler::SocketHandler, request::UsbIpCmdSubmit}; -use std::{ - collections::VecDeque, - sync::{Arc, Mutex, MutexGuard}, -}; -use usb_device::{ - Result as UsbResult, UsbDirection, UsbError, - { - bus::{PollResult, UsbBus}, - endpoint::{EndpointAddress, EndpointType}, - }, -}; - -#[derive(Debug, Clone)] -/// The error type, used by this crate. -pub enum UsbIpError { - /// The connection closed unexpectedly. - ConnectionClosed, - - /// A packet was received but it was shorter than the 48 bytes required to parse the header. - PkgTooShort(usize), - - /// A received packet contained a command, that is unknown to the USBIP specification. - InvalidCommand(u16), - - /// A received packet had a status field set to an unknown status value. - StatusNotOk(u32), -} - -impl std::fmt::Display for UsbIpError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - match self { - Self::ConnectionClosed => write!(f, "connection no longer exsists"), - Self::PkgTooShort(len) => write!(f, "packet of length {} is to short to parse", len), - Self::InvalidCommand(cmd) => write!(f, "unknown command: {}", cmd), - Self::StatusNotOk(status) => write!(f, "received invalid status: {}", status), - } - } -} - -impl std::error::Error for UsbIpError {} - -const NUM_ENDPOINTS: usize = 8; - -#[derive(Debug, Clone)] -pub(crate) struct Pipe { - pub data: VecDeque>, - pub ty: EndpointType, - pub max_packet_size: u16, - #[allow(dead_code)] - pub interval: u8, -} - -impl Pipe { - /// Checks, whether the endpoint contains a full transaction - /// (terminated by a short packet) and is ready to send it. - pub fn is_rts(&self) -> bool { - match self.data.back() { - // If there is no data pending, we are not ready to send - None => false, - Some(val) => { - if self.ty != EndpointType::Control { - true - } else { - // Control Endpoint use packet transactions. - // Therefore, we must wait until a transaction is complete before we return the packets - val.len() < self.max_packet_size as usize - } - } - } - } -} - -#[derive(Debug, Clone)] -struct Endpoint { - pub(crate) pipe_in: Option, - pub(crate) pipe_out: Option, - pub(crate) pending_ins: VecDeque<(UsbIpHeader, UsbIpCmdSubmit, Vec)>, - pub(crate) stalled: bool, - pub(crate) setup_flag: bool, - pub(crate) in_complete_flag: bool, -} - -impl Default for Endpoint { - fn default() -> Self { - Self { - pipe_in: None, - pipe_out: None, - pending_ins: VecDeque::new(), - stalled: true, - setup_flag: false, - in_complete_flag: false, - } - } -} - -impl Endpoint { - /// Returns the input pipe of this endpoint - fn get_in(&mut self) -> UsbResult<&mut Pipe> { - self.pipe_in.as_mut().ok_or(UsbError::InvalidEndpoint) - } - - /// Returns the output pipe of this endpoint - fn get_out(&mut self) -> UsbResult<&mut Pipe> { - self.pipe_out.as_mut().ok_or(UsbError::InvalidEndpoint) - } - - /// Checks, whether the input pipe is ready to send data back to the host. - fn is_rts(&self) -> bool { - match self.pipe_in { - None => false, - Some(ref pipe) => pipe.is_rts(), - } - } - - /// Processes an unlink and removes the pending packet on this endpoint. - /// - /// # Returns - /// - `true` if pending urb was removed - /// - `false` if it was not found - // NOTE: This is super inefficient, use linked lists, as soon as linked_list_remove stabilizes - fn unlink(&mut self, seqnum: u32) -> bool { - let old_len = self.pending_ins.len(); - - self.pending_ins = self - .pending_ins - .drain(..) - .filter(|(header, _, _)| header.seqnum != seqnum) - .collect(); - - // If the length is the same as before, we have not changed anything - // and return false - old_len != self.pending_ins.len() - } -} - -#[derive(Debug)] -pub(crate) struct UsbIpBusInner { - pub handler: SocketHandler, - pub endpoint: [Endpoint; NUM_ENDPOINTS], - pub device_address: u8, - pub device_speed: u32, - pub reset: bool, - pub suspended: bool, -} - -impl UsbIpBusInner { - /// Creates a new UsbIpBusInner - fn new() -> Self { - Self { - handler: SocketHandler::new(), - endpoint: <[Endpoint; NUM_ENDPOINTS]>::default(), - device_address: 0, - device_speed: 3, - reset: true, - suspended: false, - } - } - - /// Resets the handler to the state, in which it acts like it is new - fn reset(&mut self) { - self.endpoint = <[Endpoint; NUM_ENDPOINTS]>::default(); - self.reset = true; - self.suspended = false; - } - - /// Returns the first enpoint, that is not already initialized or `None`, - /// if all are already in use. - fn next_available_endpoint(&self, direction: UsbDirection) -> Option { - match direction { - UsbDirection::In => { - for i in 1..NUM_ENDPOINTS { - if self.endpoint[i].pipe_in.is_none() { - return Some(i); - } - } - } - UsbDirection::Out => { - for i in 1..NUM_ENDPOINTS { - if self.endpoint[i].pipe_out.is_none() { - return Some(i); - } - } - } - } - - None - } - - /// Returns the requested endpoint if it exists and - /// [`UsbError::InvalidEndpoint`] otherwise. - fn get_endpoint(&mut self, ep: usize) -> UsbResult<&mut Endpoint> { - //let ep_addr = ep.index(); - - if ep >= NUM_ENDPOINTS { - log::error!("attempt to access out-of-bounds endpoint {:?}", ep); - return Err(UsbError::InvalidEndpoint); - } - - Ok(&mut self.endpoint[ep]) - } - - /// Processes an unlink and removes the pending packet. - /// - /// # Returns - /// - `true` if pending urb was removed - /// - `false` if it was not found - fn unlink(&mut self, seqnum: u32) -> bool { - for i in 0..NUM_ENDPOINTS { - if self.endpoint[i].unlink(seqnum) { - return true; - } - } - - false - } -} - -#[derive(Debug, Clone)] -/// An implementation of [`UsbBus`](https://docs.rs/usb-device/0.2.7/usb_device/bus/trait.UsbBus.html), -/// based on the Linux USBIP protocol. -pub struct UsbIpBus(Arc>); - -impl UsbIpBus { - /// Create a new [`UsbIpBus`]. - /// - /// # Note - /// There can only ever be one bus [`UsbIpBus`] device on the system, since - /// it is blocking port 3240. - /// - /// # Panics - /// If port 3240 is already in use. - pub fn new() -> Self { - Self(Arc::new(Mutex::new(UsbIpBusInner::new()))) - } - - fn lock(&self) -> MutexGuard<'_, UsbIpBusInner> { - self.0.lock().unwrap() - } - - /// Sets the USB device speed reported to the host. - pub fn set_device_speed(&self, speed: u32) { - let mut inner = self.lock(); - inner.device_speed = speed; - } -} - -impl Default for UsbIpBus { - fn default() -> Self { - Self::new() - } -} - -impl UsbBus for UsbIpBus { - fn alloc_ep( - &mut self, - ep_dir: UsbDirection, - ep_addr: Option, - ep_type: EndpointType, - max_packet_size: u16, - interval: u8, - ) -> UsbResult { - let mut inner = self.lock(); - - // Get the endpoint to initialize - let endpoint_index = match ep_addr { - Some(addr) => { - if addr.index() < NUM_ENDPOINTS { - addr.index() - } else { - return Err(UsbError::InvalidEndpoint); - } - } - None => inner - .next_available_endpoint(ep_dir) - .ok_or(UsbError::EndpointMemoryOverflow)?, - }; - - let endpoint = &mut inner.endpoint[endpoint_index as usize]; - - // check endpoint allocation here - let maybe_pipe = match ep_dir { - UsbDirection::In => endpoint.get_in(), - UsbDirection::Out => endpoint.get_out(), - }; - - // we want to get an invalid enpoint, otherwise the requested endpoint - // was already allocated - match maybe_pipe { - Err(UsbError::InvalidEndpoint) => (), - Ok(_) => return Err(UsbError::InvalidEndpoint), - Err(_) => return Err(UsbError::InvalidEndpoint), - } - - // initialize the endpoint - let pipe = Pipe { - data: VecDeque::new(), - ty: ep_type, - max_packet_size, - interval, - }; - match ep_dir { - UsbDirection::In => endpoint.pipe_in = Some(pipe), - UsbDirection::Out => endpoint.pipe_out = Some(pipe), - } - - log::debug!( - "initialized new endpoint {:?} as address {:?}", - endpoint, - endpoint_index - ); - - Ok(EndpointAddress::from_parts(endpoint_index as usize, ep_dir)) - } - - fn enable(&mut self) { - log::info!("usb device is being enabled"); - } - - fn reset(&self) { - let mut inner = self.lock(); - - // Skip if we are already in reset state - if inner.reset { - return; - } - - inner.reset(); - log::debug!("usb device is being reset"); - } - - fn set_device_address(&self, addr: u8) { - let mut inner = self.lock(); - - log::info!("setting device address to {}", addr); - inner.device_address = addr; - } - - fn write(&self, ep_addr: EndpointAddress, buf: &[u8]) -> UsbResult { - log::trace!("write request at endpoint {}", ep_addr.index()); - let mut inner = self.lock(); - - // We can not write anything, as long as there is no connection - if !inner.handler.is_connected() { - return Err(UsbError::WouldBlock); - } - - // Get the endpoint - let ep = inner.get_endpoint(ep_addr.index())?; - - // NOTE: This is a hack to allow driving the setup packets in a transactional way - // while the rest of the packets use packet logic - if ep_addr.index() == 0 { - ep.in_complete_flag = true; - } - - let pipe = ep.get_in()?; - - // If there is data waiting in the output buffer, we need to wait - if pipe.is_rts() { - if ep_addr.index() == 0 { - ep.in_complete_flag = false; - } - return Err(UsbError::WouldBlock); - } - - pipe.data.push_back(buf.to_vec()); - - // we attempt to service in packets, if we have them available - if pipe.is_rts() { - inner.try_send_pending(ep_addr.index()); - } - - Ok(buf.len()) - } - - fn read(&self, ep_addr: EndpointAddress, buf: &mut [u8]) -> UsbResult { - log::trace!("read request at endpoint {}", ep_addr.index()); - let mut inner = self.lock(); - let ep = inner.get_endpoint(ep_addr.index())?; - let pipe = ep.get_out()?; - - // Try to get data - let data = match pipe.data.pop_front() { - None => { - log::trace!("no data available at endpoint"); - return Err(UsbError::WouldBlock); - } - Some(data) => data, - }; - - if buf.len() < data.len() { - buf.copy_from_slice(&data[..buf.len()]); - } else { - buf[..data.len()].copy_from_slice(&data); - } - Ok(data.len()) - } - - fn set_stalled(&self, ep_addr: EndpointAddress, stalled: bool) { - let mut inner = self.lock(); - - let endpoint = match inner.get_endpoint(ep_addr.index()) { - Ok(endpoint) => endpoint, - _ => return, - }; - - if endpoint.stalled != stalled { - log::debug!( - "setting endpoint {:?} to stalled state {}", - ep_addr, - stalled - ); - } - endpoint.stalled = stalled; - } - - fn is_stalled(&self, ep_addr: EndpointAddress) -> bool { - let mut inner = self.lock(); - - let endpoint = match inner.get_endpoint(ep_addr.index()) { - Ok(endpoint) => endpoint, - _ => return false, - }; - - endpoint.stalled - } - - fn suspend(&self) { - let mut inner = self.lock(); - - log::info!("suspending device"); - if inner.suspended { - log::warn!("supending already suspended device"); - } - - inner.suspended = true; - } - - fn resume(&self) { - let mut inner = self.lock(); - - log::info!("resuming device"); - if !inner.suspended { - log::warn!("resuming already active device"); - } - - inner.suspended = false; - } - - fn poll(&self) -> PollResult { - let mut inner = self.lock(); - log::trace!("usb device is being polled"); - - inner.handle_socket(); - - if inner.reset { - log::trace!("device is in reset state"); - return PollResult::Reset; - } - - if inner.suspended { - log::trace!("device is suspended"); - return PollResult::Suspend; - } - - let mut ep_in: u16 = 0; - let mut ep_out: u16 = 0; - let mut ep_setup: u16 = 0; - - for i in (0..NUM_ENDPOINTS).into_iter().rev() { - ep_in <<= 1; - ep_out <<= 1; - ep_setup <<= 1; - - let ep = &mut inner.endpoint[i]; - - // Check for pending output - if let Some(ref pipe) = ep.pipe_out { - if !pipe.data.is_empty() { - ep_out |= 1; - } - } - - if ep.in_complete_flag { - ep.in_complete_flag = false; - ep_in |= 1; - } - - if ep.setup_flag { - ep.setup_flag = false; - ep_setup |= 1; - } - } - - PollResult::Data { - ep_out, - ep_in_complete: ep_in, - ep_setup, - } - } -} diff --git a/patches/usbip-device/src/op.rs b/patches/usbip-device/src/op.rs deleted file mode 100644 index 6388196..0000000 --- a/patches/usbip-device/src/op.rs +++ /dev/null @@ -1,239 +0,0 @@ -use crate::UsbIpError; -use std::{ - convert::TryInto, - io::{Error, ErrorKind, Read}, - net::TcpStream, -}; - -#[repr(C)] -#[derive(Debug, Clone)] -pub struct OpHeader { - pub version: u16, - pub command: u16, - pub status: u32, -} - -impl OpHeader { - fn to_array(&self) -> [u8; 8] { - let mut result = [0; 8]; - - result[0..2].copy_from_slice(&self.version.to_be_bytes()); - result[2..4].copy_from_slice(&self.command.to_be_bytes()); - result[4..8].copy_from_slice(&self.status.to_be_bytes()); - - result - } - - fn from_slice(data: &[u8]) -> Self { - Self { - version: u16::from_be_bytes(data[0..2].try_into().unwrap()), - command: u16::from_be_bytes(data[2..4].try_into().unwrap()), - status: u32::from_be_bytes(data[4..8].try_into().unwrap()), - } - } -} - -pub enum OpRequest { - ListDevices(OpHeader), - ConnectDevice(OpHeader), -} - -impl OpRequest { - pub fn read(reader: &mut TcpStream) -> Result { - // Receive the header - reader.set_nonblocking(true)?; - let mut header_buf = [0; 8]; - match reader.read(&mut header_buf) { - Ok(bytes_read) if bytes_read == 8 => (), - Ok(0) => { - return Err(Error::new( - ErrorKind::NotConnected, - Box::new(UsbIpError::ConnectionClosed), - )) - } - Ok(bytes_read) => { - return Err(Error::new( - ErrorKind::InvalidInput, - Box::new(UsbIpError::PkgTooShort(bytes_read)), - )) - } - Err(err) => return Err(err), - } - reader.set_nonblocking(false)?; - - // Parse the header - let header = OpHeader::from_slice(&header_buf); - - // Check status - if header.status != 0 { - return Err(Error::new( - ErrorKind::InvalidInput, - Box::new(UsbIpError::StatusNotOk(header.status)), - )); - } - - log::debug!("request version is {}", header.version); - - // Dispatch on command - match header.command { - 0x8005 => { - log::info!("received request to list devices"); - Ok(Self::ListDevices(header)) - } - 0x8003 => { - let mut bus_id_buf = [0; 32]; - reader.read_exact(&mut bus_id_buf)?; - - let bus_id = match std::str::from_utf8(&bus_id_buf) { - Ok(data) => data.trim_matches(char::from(0)).to_string(), - Err(err) => { - return Err(Error::new(ErrorKind::InvalidInput, err)); - } - }; - - log::info!("received request to connect device {}", bus_id); - Ok(Self::ConnectDevice(header)) - } - _ => Err(Error::new( - ErrorKind::InvalidInput, - Box::new(UsbIpError::InvalidCommand(header.command)), - )), - } - } -} - -#[derive(Debug, Clone)] -pub struct OpResponse { - pub version: u16, - pub path: String, - pub bus_id: String, - pub descriptor: OpDeviceDescriptor, - pub cmd: OpResponseCommand, -} - -#[derive(Debug, Clone)] -pub enum OpResponseCommand { - ListDevices(OpInterfaceDescriptor), - ConnectDevice, -} - -impl OpResponse { - pub fn to_vec(&self) -> Option> { - let mut result = vec![]; - - // Build and serialize the header - let reply: u16 = match self.cmd { - OpResponseCommand::ListDevices(_) => 0x0005, - OpResponseCommand::ConnectDevice => 0x0003, - }; - - let header = OpHeader { - version: self.version, - command: reply, - status: 0, - }; - - result.extend_from_slice(&header.to_array()); - - match self.cmd { - // This implementation can only ever export one device, - // therefore number of exported devices is fixed - OpResponseCommand::ListDevices(_) => result.extend_from_slice(&[0, 0, 0, 1]), - OpResponseCommand::ConnectDevice => (), - }; - - // Serialize path - let str_len = self.path.as_bytes().len(); - if str_len > 256 { - log::warn!("path is longer than 256 bytes"); - return None; - } - - let mut path_buf = [0; 256]; - path_buf[..str_len].copy_from_slice(self.path.as_bytes()); - result.extend_from_slice(&path_buf); - - // Serialize bus_id - let str_len = self.bus_id.as_bytes().len(); - if str_len > 32 { - log::warn!("bus_id is longr than 32 bytes"); - return None; - } - - let mut bus_id_buf = [0; 32]; - bus_id_buf[..str_len].copy_from_slice(self.bus_id.as_bytes()); - result.extend_from_slice(&bus_id_buf); - - // Serialize the Op Desciptor - result.extend_from_slice(&self.descriptor.to_array()); - - // If exists, serialize the interface descriptor - if let OpResponseCommand::ListDevices(ref interface) = self.cmd { - result.extend_from_slice(&interface.to_array()); - } - - Some(result) - } -} - -#[repr(C)] -#[derive(Debug, Clone)] -pub struct OpDeviceDescriptor { - pub busnum: u32, - pub devnum: u32, - pub speed: u32, - pub vendor: u16, - pub product: u16, - pub bcd_device: u16, - pub device_class: u8, - pub device_subclass: u8, - pub device_protocol: u8, - pub configuration_value: u8, - pub num_configurations: u8, - pub num_interfaces: u8, -} - -impl OpDeviceDescriptor { - fn to_array(&self) -> [u8; 24] { - let mut result = [0; 24]; - - result[0..4].copy_from_slice(&self.busnum.to_be_bytes()); - result[4..8].copy_from_slice(&self.devnum.to_be_bytes()); - result[8..12].copy_from_slice(&self.speed.to_be_bytes()); - - result[12..14].copy_from_slice(&self.vendor.to_be_bytes()); - result[14..16].copy_from_slice(&self.product.to_be_bytes()); - result[16..18].copy_from_slice(&self.bcd_device.to_be_bytes()); - - result[18..24].copy_from_slice(&[ - self.device_class, - self.device_subclass, - self.device_protocol, - self.configuration_value, - self.num_configurations, - self.num_interfaces, - ]); - - result - } -} - -#[repr(C)] -#[derive(Debug, Clone)] -pub struct OpInterfaceDescriptor { - pub interface_class: u8, - pub interface_subclass: u8, - pub interface_protocol: u8, - pub padding: u8, -} - -impl OpInterfaceDescriptor { - fn to_array(&self) -> [u8; 4] { - [ - self.interface_class, - self.interface_subclass, - self.interface_protocol, - self.padding, - ] - } -} diff --git a/patches/usbip-device/src/request.rs b/patches/usbip-device/src/request.rs deleted file mode 100644 index a9a309c..0000000 --- a/patches/usbip-device/src/request.rs +++ /dev/null @@ -1,158 +0,0 @@ -use crate::{ - cmd::{Direction, TransferFlags, UsbCmd, UsbIpHeader}, - debug::{DbgBuf, DbgEmpty}, - UsbIpError, -}; -use std::{ - convert::TryInto, - fmt::{Debug, Formatter, Result as FmtResult}, - io::{Error, ErrorKind, Read}, - net::TcpStream, -}; - -#[derive(Clone)] -pub struct UsbIpRequest { - pub header: UsbIpHeader, - pub cmd: UsbIpRequestCmd, - pub data: Vec, -} - -impl Debug for UsbIpRequest { - fn fmt(&self, f: &mut Formatter) -> FmtResult { - f.debug_struct("UsbIpRequest") - .field("header", &self.header) - .field("cmd", &self.cmd) - .field("data", &DbgBuf(&self.data)) - .finish() - } -} - -#[derive(Debug, Clone)] -pub enum UsbIpRequestCmd { - Cmd(UsbIpCmdSubmit), - Unlink(UsbIpCmdUnlink), -} - -impl UsbIpRequest { - pub fn read(reader: &mut TcpStream) -> Result { - // Read an parse header - reader.set_nonblocking(true)?; - let mut buf = [0; 48]; - match reader.read(&mut buf) { - Ok(bytes_read) if bytes_read == 48 => (), - Ok(0) => { - return Err(Error::new( - ErrorKind::NotConnected, - Box::new(UsbIpError::ConnectionClosed), - )) - } - Ok(bytes_read) => { - return Err(Error::new( - ErrorKind::InvalidInput, - Box::new(UsbIpError::PkgTooShort(bytes_read)), - )) - } - Err(err) => return Err(err), - } - reader.set_nonblocking(false)?; - - let header = UsbIpHeader::from_slice(&buf[0..20]); - match header.command { - UsbCmd::Request => { - let cmd = UsbIpCmdSubmit::from_slice(&buf[20..48]); - - // Receive the URB if this is a OUT packet - let data = if header.direction == Direction::OUT && cmd.transfer_buffer_length != 0 - { - // NOTE: Reading 0 bytes would still block the reader - let mut data = vec![0; cmd.transfer_buffer_length as usize]; - reader.read_exact(&mut data)?; - - data - } else { - vec![] - }; - - //Ok(Self::Cmd(header, cmd, data)) - Ok(Self { - header, - cmd: UsbIpRequestCmd::Cmd(cmd), - data, - }) - } - UsbCmd::UnlinkRequest => { - let unlink = UsbIpCmdUnlink::from_slice(&buf[20..24]); - - // NOTE: We do not expect to see urb data behind an unlink - - Ok(Self { - header, - cmd: UsbIpRequestCmd::Unlink(unlink), - data: vec![], - }) - } - _ => Err(Error::new( - ErrorKind::InvalidInput, - Box::new(UsbIpError::InvalidCommand(header.command as u16)), - )), - } - } -} - -#[derive(Clone)] -pub struct UsbIpCmdSubmit { - pub transfer_flags: TransferFlags, - pub transfer_buffer_length: i32, - pub start_frame: i32, - pub number_of_packets: i32, - pub interval: i32, - pub setup: [u8; 8], -} - -impl Debug for UsbIpCmdSubmit { - /// As `start_frame`, `number_of_packets` and `interval` are unused as of now, - /// they are not being printed - fn fmt(&self, f: &mut Formatter) -> FmtResult { - // Only output setup bytes, if they are relevant - let setup_dbg = DbgBuf(&self.setup); - let setup: &dyn Debug = if self.setup != [0, 0, 0, 0, 0, 0, 0, 0] { - &setup_dbg - } else { - &DbgEmpty - }; - - f.debug_struct("UsbIpCmdSubmit") - .field("transfer_flags", &self.transfer_flags) - .field("transfer_buffer_length", &self.transfer_buffer_length) - .field("setup", &setup) - .finish() - } -} - -impl UsbIpCmdSubmit { - fn from_slice(data: &[u8]) -> Self { - Self { - transfer_flags: TransferFlags::from_bits_truncate(u32::from_be_bytes( - data[0..4].try_into().unwrap(), - )), - transfer_buffer_length: i32::from_be_bytes(data[4..8].try_into().unwrap()), - start_frame: i32::from_be_bytes(data[8..12].try_into().unwrap()), - number_of_packets: i32::from_be_bytes(data[12..16].try_into().unwrap()), - interval: i32::from_be_bytes(data[16..20].try_into().unwrap()), - setup: data[20..28].try_into().unwrap(), - } - } -} - -#[derive(Debug, Clone)] -pub struct UsbIpCmdUnlink { - pub seqnum: u32, -} - -impl UsbIpCmdUnlink { - fn from_slice(data: &[u8]) -> Self { - Self { - seqnum: u32::from_be_bytes(data[0..4].try_into().unwrap()), - } - } -} diff --git a/patches/usbip-device/src/response.rs b/patches/usbip-device/src/response.rs deleted file mode 100644 index 533aa06..0000000 --- a/patches/usbip-device/src/response.rs +++ /dev/null @@ -1,96 +0,0 @@ -use crate::{cmd::UsbIpHeader, debug::DbgBuf}; -use std::fmt::{Debug, Formatter, Result as FmtResult}; - -#[derive(Clone)] -pub struct UsbIpResponse { - pub header: UsbIpHeader, - pub cmd: UsbIpResponseCmd, - pub data: Vec, -} - -impl Debug for UsbIpResponse { - fn fmt(&self, f: &mut Formatter) -> FmtResult { - f.debug_struct("UsbIpResponse") - .field("header", &self.header) - .field("cmd", &self.cmd) - .field("data", &DbgBuf(&self.data)) - .finish() - } -} - -#[derive(Debug, Clone)] -pub enum UsbIpResponseCmd { - Cmd(UsbIpRetSubmit), - Unlink(UsbIpRetUnlink), -} - -impl UsbIpResponse { - pub fn to_vec(&self) -> Option> { - let mut result = vec![]; - - // Parse the header - result.extend_from_slice(&self.header.to_array()); - - // parse the command - match self.cmd { - UsbIpResponseCmd::Cmd(ref cmd) => { - result.extend_from_slice(&cmd.to_array()); - } - UsbIpResponseCmd::Unlink(ref unlink) => { - result.extend_from_slice(&unlink.to_array()); - } - } - - // parse the data - result.extend_from_slice(&self.data[..]); - - Some(result) - } -} - -#[derive(Clone)] -pub struct UsbIpRetSubmit { - pub status: i32, - pub actual_length: i32, - pub start_frame: i32, - pub number_of_packets: i32, - pub error_count: i32, -} - -impl Debug for UsbIpRetSubmit { - /// As `start_frame`, `number_of_packets` and `error_count` are unused as of now, - /// they are not being printed - fn fmt(&self, f: &mut Formatter) -> FmtResult { - f.debug_struct("UsbIpRetSubmit") - .field("status", &self.status) - .field("actual_length", &self.actual_length) - .finish() - } -} - -impl UsbIpRetSubmit { - fn to_array(&self) -> [u8; 28] { - let mut result = [0; 28]; - - result[0..4].copy_from_slice(&self.status.to_be_bytes()); - result[4..8].copy_from_slice(&self.actual_length.to_be_bytes()); - result[8..12].copy_from_slice(&self.start_frame.to_be_bytes()); - result[12..16].copy_from_slice(&self.number_of_packets.to_be_bytes()); - result[16..20].copy_from_slice(&self.error_count.to_be_bytes()); - - result - } -} - -#[derive(Debug, Clone)] -pub struct UsbIpRetUnlink { - pub status: u32, -} - -impl UsbIpRetUnlink { - fn to_array(&self) -> [u8; 28] { - let mut result = [0; 28]; - result[0..4].copy_from_slice(&self.status.to_be_bytes()); - result - } -} diff --git a/pc-hid-runner/Cargo.toml b/pc-hid-runner/Cargo.toml index 54def88..c80426d 100644 --- a/pc-hid-runner/Cargo.toml +++ b/pc-hid-runner/Cargo.toml @@ -22,14 +22,8 @@ authenticator = { path = "../authenticator" } daemonize = "0.4" rand = { version = "0.8", features = ["std"] } -[dependencies.pc-usbip-runner] -optional = true -package = "trussed-usbip" -path = "../pc-usbip-runner" - [features] default = ["uhid-backend"] uhid-backend = [] -usbip-backend = ["pc-usbip-runner", "pc-usbip-runner/ctaphid"] ctaphid = [] ccid = [] diff --git a/pc-hid-runner/src/cli.rs b/pc-hid-runner/src/cli.rs index fb95fe2..5b844f5 100644 --- a/pc-hid-runner/src/cli.rs +++ b/pc-hid-runner/src/cli.rs @@ -109,8 +109,6 @@ pub struct DeviceArgs { #[derive(Copy, Clone, Debug, ValueEnum, PartialEq, Eq)] pub enum BackendArg { Uhid, - #[cfg(feature = "usbip-backend")] - Usbip, } #[derive(Copy, Clone, Debug, ValueEnum, PartialEq, Eq)] @@ -134,8 +132,6 @@ impl BackendArg { fn into_backend(self) -> service::Backend { match self { BackendArg::Uhid => service::Backend::Uhid, - #[cfg(feature = "usbip-backend")] - BackendArg::Usbip => service::Backend::Usbip, } } } diff --git a/pc-hid-runner/src/service.rs b/pc-hid-runner/src/service.rs index 131070a..a25e991 100644 --- a/pc-hid-runner/src/service.rs +++ b/pc-hid-runner/src/service.rs @@ -4,8 +4,6 @@ use std::{ }; use authenticator::ctap::{CtapApp, PqcPolicy}; -#[cfg(feature = "usbip-backend")] -use pc_usbip_runner::{exec as usbip_exec, Builder as UsbipBuilder}; use transport_core::state::{IdentityConfig, PersistentStore}; use transport_core::{set_waiting, Apps as TrussedApps, Builder, Options, Platform, Syscall}; use trussed::{ @@ -20,8 +18,6 @@ use crate::{exec, HidDeviceDescriptor, CTAPHID_FRAME_LEN}; #[derive(Clone, Copy, Debug, PartialEq, Eq)] pub enum Backend { Uhid, - #[cfg(feature = "usbip-backend")] - Usbip, } #[derive(Clone)] @@ -127,11 +123,6 @@ pub fn run(config: RunnerConfig) -> io::Result<()> { let runner = Builder::new(options).build::(); exec(runner, descriptor, platform, data) } - #[cfg(feature = "usbip-backend")] - Backend::Usbip => { - let runner = UsbipBuilder::new(options).build::(); - usbip_exec(runner, platform, data) - } } } diff --git a/pc-usbip-runner/.dockerignore b/pc-usbip-runner/.dockerignore deleted file mode 100644 index 80678f9..0000000 --- a/pc-usbip-runner/.dockerignore +++ /dev/null @@ -1,2 +0,0 @@ -./target/ -./cargo-cache diff --git a/pc-usbip-runner/.gitignore b/pc-usbip-runner/.gitignore deleted file mode 100644 index 2d15be8..0000000 --- a/pc-usbip-runner/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -cargo-cache -tmp -trussed-state.bin -usbip-simulation -target diff --git a/pc-usbip-runner/Cargo.toml b/pc-usbip-runner/Cargo.toml deleted file mode 100644 index ea7b520..0000000 --- a/pc-usbip-runner/Cargo.toml +++ /dev/null @@ -1,38 +0,0 @@ -[package] -name = "trussed-usbip" -version = "0.0.1" -authors = ["Nicolas Stalder ", "Conor Patrick ", "Szczepan Zalega "] -edition = "2021" - -[dependencies] -interchange = "0.3.0" -log = { version = "0.4.14", default-features = false } -transport-core = { path = "../transport-core", default-features = false } -usb-device = { version = "0.2.7", default-features = false } -usbip-device = "0.1.5" -trussed = { version = "0.1", default-features = false, features = ["log-all", "virt"] } - -# ctaphid -ctaphid-dispatch = { version = "0.3", features = ["log-all"], optional = true } -usbd-ctaphid = { version = "0.3", features = ["log-all"], optional = true } - -# ccid -apdu-dispatch = { version = "0.3", optional = true } -usbd-ccid = { version = "0.3", features = ["log-all"], optional = true } - -[dev-dependencies] -clap = { version = "3.0.0", features = ["derive"] } -clap-num = "1.0.0" -delog = { version = "0.1.6", features = ["std-log"] } -heapless-bytes = "0.3" -littlefs2 = "0.6" -pretty_env_logger = "0.4.0" -trussed = "0.1" -authenticator = { path = "../authenticator" } - -[features] -default = ["ctaphid"] -ctaphid = ["ctaphid-dispatch", "usbd-ctaphid", "transport-core/ctaphid"] -ccid = ["apdu-dispatch", "usbd-ccid", "transport-core/ccid"] -legacy = [] - diff --git a/pc-usbip-runner/Dockerfile b/pc-usbip-runner/Dockerfile deleted file mode 100644 index 2cb8b7b..0000000 --- a/pc-usbip-runner/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -FROM rust:latest -RUN apt update -qy && apt install -qy libclang-dev -RUN rustc --version -ENV CARGO_HOME /root/.cargo/ diff --git a/pc-usbip-runner/Makefile b/pc-usbip-runner/Makefile deleted file mode 100644 index c48a27c..0000000 --- a/pc-usbip-runner/Makefile +++ /dev/null @@ -1,54 +0,0 @@ -EXAMPLE_NAME := authenticator - -all: | start-sim attach finish-message - -.PHONY: finish-message -finish-message: - @echo "###################################################" - @echo "Done. Device should be visible in your system now. Run 'make stop' to disconnect it." - -.PHONY: start-sim -start-sim: build - -$(MAKE) stop - env RUST_LOG=debug cargo run --example $(EXAMPLE_NAME) & - sleep 1 - -.PHONY: attach -attach: - lsmod | grep vhci-hcd || sudo modprobe vhci-hcd - sudo usbip list -r "localhost" - sudo usbip attach -r "localhost" -b "1-1" - sleep 5 - -.PHONY: ci -ci: - timeout 10 -k 5 $(MAKE) - -.PHONY: build -build: - cargo build --example $(EXAMPLE_NAME) - -.PHONY: build-clean -build-clean: | clean build - -.PHONY: stop -stop: - -sudo usbip detach -p "00" - killall $(EXAMPLE_NAME) - -.PHONY: setup-fedora -setup-fedora: - sudo dnf install usbip clang-libs-13.0.0 - sudo ln -s /usr/lib64/libclang.so.13 /usr/lib64/libclang.so - -.PHONY: clean -clean: - cargo clean - rm -r cargo-cache - -.PHONY: build-docker -CMD=make -C /app/ build -build-docker: - docker build -t usbip . - mkdir -p cargo-cache - docker run -it --rm -v $(PWD)/cargo-cache:/root/.cargo -v $(PWD):/app usbip $(CMD) diff --git a/pc-usbip-runner/README.md b/pc-usbip-runner/README.md deleted file mode 100644 index 942ee4f..0000000 --- a/pc-usbip-runner/README.md +++ /dev/null @@ -1,86 +0,0 @@ -# PC USB/IP Runner - -The `trussed-usbip` crate provides a USB/IP runner for Trussed-based -applications. The `authenticator` example wires the ML-DSA authenticator's -CTAP implementation into the runner so it can be exercised from a desktop -machine. - -## Authenticator example - -Build and run the example with `cargo run --example authenticator` or use the -Makefile target, which automatically starts the USB/IP device and attaches it -via `usbip`: - -```sh -make -C pc-usbip-runner -``` - -The CLI accepts standard USB identity parameters and the authenticator AAGUID: - -```text -Usage: authenticator [OPTIONS] - -Options: - -n, --product USB product string [default: Feitian FIDO2 Software Authenticator (ML-DSA)] - -m, --manufacturer - USB manufacturer string [default: Feitian Technologies Co., Ltd.] - --serial USB serial number [default: FEITIAN-PQC-001] - --state-file Trussed state file (currently unused, reserved for future persistence) [default: trussed-state.bin] - -v, --vid USB VID [default: 0x1998] - -p, --pid USB PID [default: 0x0616] - --aaguid Authenticator AAGUID as 32 hex characters (hyphens optional) - --manual-user-presence Require physical confirmation instead of automatically acknowledging presence - -h, --help Print help information - -V, --version Print version information -``` - -The provided options are forwarded to the USB/IP runner so the CTAPHID stack -identifies itself using the supplied VID/PID and product strings. The crate -enables the CTAPHID transport by default; enable the `ccid` feature when you -also want to expose the smart-card interface. - -By default the example automatically fulfils user-presence checks so that the -VM workflow can progress without manual intervention. Pass -`--manual-user-presence` to disable the auto-confirmation and exercise the -normal polling path instead. - -### Choosing the correct `liboqs` binaries - -The ML-DSA and ML-KEM wrappers link against prebuilt `liboqs` artifacts. Pick -the directory that matches the target triple you're building for: - -```sh -uname -m -``` - -* `aarch64` → use `prebuilt_liboqs/linux-aarch64` -* `x86_64` → populate `prebuilt_liboqs/linux-x86_64` with the headers and - libraries from the [liboqs release artifacts][liboqs-release] - -Because the chat environment cannot upload binary artifacts, the x86_64 -directory is intentionally left empty in commits. When developing on an x86_64 -system, download the official `liboqs` release tarball, extract the `lib` and -`include` directories and copy them into `prebuilt_liboqs/linux-x86_64/` before -building. - -When running the compiled binary outside of `cargo run`, export -`LD_LIBRARY_PATH=/path/to/prebuilt_liboqs//lib` so the dynamic linker can -locate `liboqs.so`. - -[liboqs-release]: https://github.com/open-quantum-safe/liboqs/releases - -## USB/IP usage - -Once the runner is active you can attach it using the standard usbip flow: - -```sh -sudo modprobe vhci-hcd -sudo usbip list -r localhost -sudo usbip attach -r localhost -b 1-1 -sudo usbip port -lsusb -``` - -The authenticator will then appear as a FIDO CTAPHID device and can be used -for registration and authentication ceremonies with WebAuthn-compatible -relying parties. diff --git a/pc-usbip-runner/examples/authenticator.rs b/pc-usbip-runner/examples/authenticator.rs deleted file mode 100644 index 185ae80..0000000 --- a/pc-usbip-runner/examples/authenticator.rs +++ /dev/null @@ -1,199 +0,0 @@ -#![cfg(feature = "legacy")] - -//! USB/IP runner that exposes the ML-DSA authenticator over CTAPHID. -//! -//! The example wires the authenticator's CTAP application into the -//! `trussed-usbip` runner so it can be tested with `usbip` and existing -//! FIDO tooling. - -use std::path::PathBuf; - -use authenticator::ctap::CtapApp; -use clap::Parser; -use clap_num::maybe_hex; -use littlefs2_core::path; -use transport_core::state::{default_state_dir, IdentityConfig, PersistentStore}; -use trussed::{ - backend::{CoreOnly, NoId}, - client::Client, - pipe::{ServiceEndpoint, TrussedChannel}, - service::Service, - types::{CoreContext, NoData}, -}; -use trussed_usbip::{exec, set_waiting, Builder, Client, Platform, Syscall}; - -#[derive(Parser, Debug)] -#[clap(about, version, author)] -struct Args { - /// USB product - #[clap( - short = 'n', - long, - default_value = "Feitian FIDO2 Software Authenticator (ML-DSA)" - )] - product: String, - - /// USB manufacturer - #[clap(short, long, default_value = "Feitian Technologies Co., Ltd.")] - manufacturer: String, - - /// USB serial number - #[clap(long, default_value = "FEITIAN-PQC-001")] - serial: String, - - /// Directory where persistent Trussed state will be stored - #[clap(long, value_parser, default_value_os_t = default_state_dir())] - state_dir: PathBuf, - - /// USB VID - #[clap(short, long, parse(try_from_str = maybe_hex), default_value_t = 0x1998)] - vid: u16, - - /// USB PID - #[clap(short, long, parse(try_from_str = maybe_hex), default_value_t = 0x0616)] - pid: u16, - - /// Authenticator AAGUID - #[clap(long, default_value = "4645495449414E980616525A30310000")] - aaguid: String, - - /// Require user gestures instead of automatically satisfying presence checks - #[clap(long)] - manual_user_presence: bool, -} - -#[derive(Clone, Copy)] -struct AppData { - aaguid: [u8; 16], - auto_user_presence: bool, -} - -struct Apps { - ctap: CtapApp, -} - -impl<'a> trussed_usbip::Apps<'a, CoreOnly> for Apps> { - type Data = AppData; - - fn new( - _service: &mut Service, - endpoints: &mut Vec>, - syscall: Syscall, - data: Self::Data, - ) -> Self { - static CHANNEL: TrussedChannel = TrussedChannel::new(); - let (requester, responder) = CHANNEL.split().expect("Trussed channel split"); - let context = CoreContext::new(path!("authenticator").into()); - endpoints.push(ServiceEndpoint::new(responder, context, &[])); - let client = Client::new(requester, syscall, None); - let mut ctap = CtapApp::new(client, data.aaguid); - ctap.set_auto_user_presence(data.auto_user_presence); - ctap.set_keepalive_callback(set_waiting); - Self { ctap } - } - - #[cfg(feature = "ctaphid")] - fn with_ctaphid_apps( - &mut self, - f: impl FnOnce(&mut [&mut dyn ctaphid_dispatch::app::App<'a, N>]) -> T, - ) -> T { - f(&mut [&mut self.ctap]) - } - - #[cfg(feature = "ccid")] - fn with_ccid_apps( - &mut self, - f: impl FnOnce(&mut [&mut dyn apdu_dispatch::app::App]) -> T, - ) -> T { - f(&mut []) - } -} - -fn parse_aaguid(input: &str) -> Result<[u8; 16], String> { - let mut cleaned = input.to_owned(); - cleaned.retain(|c| c != '-'); - if cleaned.len() != 32 { - return Err(format!("expected 32 hex characters, got {}", cleaned.len())); - } - let mut out = [0u8; 16]; - for (idx, chunk) in cleaned.as_bytes().chunks(2).enumerate() { - let hex = std::str::from_utf8(chunk).map_err(|_| "invalid UTF-8 in AAGUID".to_string())?; - out[idx] = - u8::from_str_radix(hex, 16).map_err(|_| format!("invalid hex at byte {}", idx))?; - } - Ok(out) -} - -fn main() { - pretty_env_logger::init(); - - let args = Args::parse(); - let aaguid = parse_aaguid(&args.aaguid).expect("invalid AAGUID"); - - let mut persistent = - PersistentStore::new(&args.state_dir).expect("failed to open persistent store"); - persistent - .initialize_identity(IdentityConfig { - aaguid, - manufacturer: &args.manufacturer, - product: &args.product, - serial: &args.serial, - }) - .expect("failed to initialize persistent state"); - let store = persistent.store(); - let options = trussed_usbip::Options { - manufacturer: Some(args.manufacturer), - product: Some(args.product), - serial_number: Some(args.serial), - vid: args.vid, - pid: args.pid, - device_class: None, - }; - - log::info!("Initializing Trussed"); - let platform = Platform::new(store); - let runner = Builder::new(options).build::>(); - exec( - runner, - platform, - AppData { - aaguid, - auto_user_presence: !args.manual_user_presence, - }, - ) - .expect("usbip transport exited"); -} - -#[cfg(test)] -mod tests { - use super::parse_aaguid; - - #[test] - fn parses_plain_hex() { - let input = "00112233445566778899aabbccddeeff"; - assert_eq!( - parse_aaguid(input).unwrap(), - [ - 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, - 0xEE, 0xFF - ] - ); - } - - #[test] - fn parses_hyphenated_hex() { - let input = "00112233-4455-6677-8899-aabbccddeeff"; - assert_eq!( - parse_aaguid(input).unwrap(), - [ - 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, - 0xEE, 0xFF - ] - ); - } - - #[test] - fn rejects_invalid_length() { - assert!(parse_aaguid("0011").is_err()); - } -} diff --git a/pc-usbip-runner/fido2-patch/0001-Ignore-difference-between-the-sent-data-size-and-rep.patch b/pc-usbip-runner/fido2-patch/0001-Ignore-difference-between-the-sent-data-size-and-rep.patch deleted file mode 100644 index d213de8..0000000 --- a/pc-usbip-runner/fido2-patch/0001-Ignore-difference-between-the-sent-data-size-and-rep.patch +++ /dev/null @@ -1,27 +0,0 @@ -From aa6019ee64df3b85db92ffa3a4894f614b062437 Mon Sep 17 00:00:00 2001 -From: Szczepan Zalega -Date: Mon, 27 Jun 2022 14:07:58 +0200 -Subject: [PATCH] Ignore difference between the sent data size and reported - -Required for the USB/IP simulation, as apparently calls on it always return 1. ---- - fido2/hid/base.py | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/fido2/hid/base.py b/fido2/hid/base.py -index a184265..5cc2187 100644 ---- a/fido2/hid/base.py -+++ b/fido2/hid/base.py -@@ -74,7 +74,8 @@ def close(self): - - def write_packet(self, packet): - if os.write(self.handle, packet) != len(packet): -- raise OSError("failed to write entire packet") -+ # raise OSError("failed to write entire packet") -+ pass - - def read_packet(self): - return os.read(self.handle, self.descriptor.report_size_in) --- -2.35.3 - diff --git a/pc-usbip-runner/src/ccid.rs b/pc-usbip-runner/src/ccid.rs deleted file mode 100644 index 76e56d3..0000000 --- a/pc-usbip-runner/src/ccid.rs +++ /dev/null @@ -1,36 +0,0 @@ -use std::time::{Duration, Instant}; - -use apdu_dispatch::dispatch::ApduDispatch; -use apdu_dispatch::interchanges::Data; -use usb_device::bus::{UsbBus, UsbBusAllocator}; -use usbd_ccid::{Ccid, Status}; - -use transport_core::Timeout; - -pub fn setup<'bus, 'pipe, B: UsbBus>( - bus_allocator: &'bus UsbBusAllocator, - contact: &'pipe interchange::Channel, - contactless: &'pipe interchange::Channel, -) -> (Ccid<'bus, 'pipe, B, 3072>, ApduDispatch<'pipe>) { - let (ccid_rq, ccid_rp) = contact.split().unwrap(); - let ccid = Ccid::new(bus_allocator, ccid_rq, None); - let apdu_dispatch = ApduDispatch::new(ccid_rp, contactless.split().unwrap().1); - (ccid, apdu_dispatch) -} - -pub fn keepalive( - ccid: &mut Ccid<'_, '_, B, N>, - timeout: &mut Timeout, - epoch: Instant, -) -> bool { - timeout.update(epoch, map_status(ccid.did_start_processing()), || { - map_status(ccid.send_wait_extension()) - }) -} - -fn map_status(status: Status) -> Option { - match status { - Status::ReceivedData(ms) => Some(Duration::from_millis(ms.0.into())), - Status::Idle => None, - } -} diff --git a/pc-usbip-runner/src/ctaphid.rs b/pc-usbip-runner/src/ctaphid.rs deleted file mode 100644 index 9a20512..0000000 --- a/pc-usbip-runner/src/ctaphid.rs +++ /dev/null @@ -1,41 +0,0 @@ -use std::time::{Duration, Instant}; - -use ctaphid_dispatch::Dispatch; -use usb_device::bus::{UsbBus, UsbBusAllocator}; -use usbd_ctaphid::{types::Status, CtapHid}; - -use transport_core::Timeout; - -pub fn setup<'bus, 'pipe, 'interrupt, B: UsbBus, const N: usize>( - bus_allocator: &'bus UsbBusAllocator, - interchange: &'pipe ctaphid_dispatch::Channel, -) -> ( - CtapHid<'bus, 'pipe, 'interrupt, B, N>, - Dispatch<'pipe, 'interrupt, N>, -) { - let (ctaphid_rq, ctaphid_rp) = interchange.split().unwrap(); - let ctaphid = CtapHid::new(bus_allocator, ctaphid_rq, 0u32) - .implements_ctap1() - .implements_ctap2() - .implements_wink(); - let ctaphid_dispatch = Dispatch::new(ctaphid_rp); - (ctaphid, ctaphid_dispatch) -} - -pub fn keepalive( - ctaphid: &mut CtapHid<'_, '_, '_, B, N>, - timeout: &mut Timeout, - epoch: Instant, - waiting_for_user: bool, -) -> bool { - timeout.update(epoch, map_status(ctaphid.did_start_processing()), || { - map_status(ctaphid.send_keepalive(waiting_for_user)) - }) -} - -fn map_status(status: Status) -> Option { - match status { - Status::ReceivedData(ms) => Some(Duration::from_millis(ms.0.into())), - Status::Idle => None, - } -} diff --git a/pc-usbip-runner/src/lib.rs b/pc-usbip-runner/src/lib.rs deleted file mode 100644 index 30dbc16..0000000 --- a/pc-usbip-runner/src/lib.rs +++ /dev/null @@ -1,234 +0,0 @@ -#![cfg_attr(not(any(feature = "ctaphid", feature = "ccid")), allow(dead_code))] - -#[cfg(feature = "ccid")] -mod ccid; -#[cfg(feature = "ctaphid")] -mod ctaphid; - -use std::{io, thread, time::Instant}; - -#[cfg(feature = "ccid")] -use apdu_dispatch::interchanges::Data; -#[cfg(feature = "ctaphid")] -use ctaphid_dispatch::{self, Channel, DEFAULT_MESSAGE_SIZE}; -use trussed::backend::Dispatch; -use usb_device::{ - bus::UsbBusAllocator, - device::{UsbDevice, UsbDeviceBuilder, UsbVidPid}, -}; -use usbip_device::UsbIpBus; - -#[cfg(feature = "ccid")] -use usbd_ccid::Ccid; -#[cfg(feature = "ctaphid")] -use usbd_ctaphid::CtapHid; - -pub use transport_core::{ - set_waiting, waiting_for_user_presence, Apps, Builder, Client, DeviceClass, Options, Platform, - Runner, Store, Syscall, Timeout, Transport, -}; - -pub struct UsbIpTransport<'bus, 'pipe, 'interrupt> { - usb_device: &'bus mut UsbDevice<'bus, UsbIpBus>, - #[cfg(feature = "ctaphid")] - ctaphid: &'bus mut CtapHid<'bus, 'pipe, 'interrupt, UsbIpBus, { DEFAULT_MESSAGE_SIZE }>, - #[cfg(feature = "ctaphid")] - ctaphid_dispatch: ctaphid_dispatch::Dispatch<'pipe, 'interrupt, { DEFAULT_MESSAGE_SIZE }>, - #[cfg(feature = "ccid")] - ccid: &'bus mut Ccid<'bus, 'pipe, UsbIpBus, 3072>, - #[cfg(feature = "ccid")] - apdu_dispatch: apdu_dispatch::dispatch::ApduDispatch<'pipe>, - epoch: Instant, - #[cfg(feature = "ctaphid")] - timeout_ctaphid: Timeout, - #[cfg(feature = "ccid")] - timeout_ccid: Timeout, -} - -impl<'bus, 'pipe, 'interrupt> UsbIpTransport<'bus, 'pipe, 'interrupt> { - #[allow(clippy::too_many_arguments)] - pub fn new( - usb_device: &'bus mut UsbDevice<'bus, UsbIpBus>, - #[cfg(feature = "ctaphid")] ctaphid: &'bus mut CtapHid< - 'bus, - 'pipe, - 'interrupt, - UsbIpBus, - { DEFAULT_MESSAGE_SIZE }, - >, - #[cfg(feature = "ctaphid")] ctaphid_dispatch: ctaphid_dispatch::Dispatch< - 'pipe, - 'interrupt, - { DEFAULT_MESSAGE_SIZE }, - >, - #[cfg(feature = "ccid")] ccid: &'bus mut Ccid<'bus, 'pipe, UsbIpBus, 3072>, - #[cfg(feature = "ccid")] apdu_dispatch: apdu_dispatch::dispatch::ApduDispatch<'pipe>, - ) -> Self { - Self { - usb_device, - #[cfg(feature = "ctaphid")] - ctaphid, - #[cfg(feature = "ctaphid")] - ctaphid_dispatch, - #[cfg(feature = "ccid")] - ccid, - #[cfg(feature = "ccid")] - apdu_dispatch, - epoch: Instant::now(), - #[cfg(feature = "ctaphid")] - timeout_ctaphid: Timeout::new(), - #[cfg(feature = "ccid")] - timeout_ccid: Timeout::new(), - } - } -} - -impl<'interrupt, D> Transport<'interrupt, D> for UsbIpTransport<'_, '_, 'interrupt> -where - D: Dispatch, -{ - fn poll>(&mut self, apps: &mut A) -> io::Result { - let mut handled_usb_event = false; - while self.usb_device.poll(&mut [ - #[cfg(feature = "ctaphid")] - &mut *self.ctaphid, - #[cfg(feature = "ccid")] - &mut *self.ccid, - ]) { - handled_usb_event = true; - } - - let mut dispatched = false; - - #[cfg(feature = "ctaphid")] - { - let ctaphid_did_work = apps.with_ctaphid_apps(|apps| { - let mut did_work = false; - while self.ctaphid_dispatch.poll(apps) { - did_work = true; - } - did_work - }); - dispatched |= ctaphid_did_work; - } - - #[cfg(feature = "ccid")] - { - let ccid_did_work = apps.with_ccid_apps(|apps| { - let mut did_work = false; - while self.apdu_dispatch.poll(apps).is_some() { - did_work = true; - } - did_work - }); - dispatched |= ccid_did_work; - } - - Ok(handled_usb_event || dispatched) - } - - fn send(&mut self, waiting_for_user: bool) -> io::Result { - let mut keepalive_sent = false; - - #[cfg(feature = "ctaphid")] - { - keepalive_sent |= ctaphid::keepalive( - self.ctaphid, - &mut self.timeout_ctaphid, - self.epoch, - waiting_for_user, - ); - } - - #[cfg(feature = "ccid")] - { - keepalive_sent |= ccid::keepalive(self.ccid, &mut self.timeout_ccid, self.epoch); - } - - Ok(keepalive_sent) - } - - fn wait(&mut self) -> io::Result<()> { - thread::yield_now(); - Ok(()) - } -} - -pub fn exec<'interrupt, D, A>( - runner: Runner, - platform: Platform, - data: A::Data, -) -> io::Result<()> -where - D: Dispatch, - D::BackendId: Send + Sync, - D::Context: Send + Sync, - A: Apps<'interrupt, D>, -{ - let usbip_bus = UsbIpBus::new(); - usbip_bus.set_device_speed(2); - let bus_allocator = UsbBusAllocator::new(usbip_bus); - - #[cfg(feature = "ctaphid")] - let ctap_channel: Channel<{ DEFAULT_MESSAGE_SIZE }> = Channel::new(); - #[cfg(feature = "ctaphid")] - let (mut ctaphid, ctaphid_dispatch) = - ctaphid::setup::<_, { DEFAULT_MESSAGE_SIZE }>(&bus_allocator, &ctap_channel); - - #[cfg(feature = "ccid")] - let (contact, contactless) = Default::default(); - #[cfg(feature = "ccid")] - let (mut ccid, apdu_dispatch) = ccid::setup(&bus_allocator, &contact, &contactless); - - let device_options = runner.options().clone(); - let mut usb_device = build_device(&bus_allocator, &device_options); - - let transport = UsbIpTransport::new( - &mut usb_device, - #[cfg(feature = "ctaphid")] - &mut ctaphid, - #[cfg(feature = "ctaphid")] - ctaphid_dispatch, - #[cfg(feature = "ccid")] - &mut ccid, - #[cfg(feature = "ccid")] - apdu_dispatch, - ); - - runner.exec(platform, data, transport) -} - -fn build_device<'a>( - bus_allocator: &'a UsbBusAllocator, - options: &'a Options, -) -> UsbDevice<'a, UsbIpBus> { - let mut usb_builder = UsbDeviceBuilder::new(bus_allocator, UsbVidPid(options.vid, options.pid)); - if let Some(manufacturer) = &options.manufacturer { - usb_builder = usb_builder.manufacturer(manufacturer); - } - if let Some(product) = &options.product { - usb_builder = usb_builder.product(product); - } - if let Some(serial_number) = &options.serial_number { - usb_builder = usb_builder.serial_number(serial_number); - } - let ctaphid_enabled = cfg!(feature = "ctaphid"); - let ccid_enabled = cfg!(feature = "ccid"); - let device_class = options.resolved_device_class(ctaphid_enabled, ccid_enabled); - - log::debug!( - "USB device descriptor class {:02x}/{:02x}/{:02x} (ctaphid: {}, ccid: {}, override: {})", - device_class.class, - device_class.sub_class, - device_class.protocol, - ctaphid_enabled, - ccid_enabled, - options.device_class.is_some() - ); - - usb_builder - .device_class(device_class.class) - .device_sub_class(device_class.sub_class) - .device_protocol(device_class.protocol) - .build() -} From e6a6ad29b9bc615d405e44b9414648241c734dd4 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:42:09 -0700 Subject: [PATCH 11/26] Remove experimental PQC PIN/UV protocol 101 and ML-KEM dependency --- authenticator/Cargo.toml | 6 +- authenticator/src/ctap.rs | 413 ++++++++++---------------------- authenticator/src/ctap/tests.rs | 26 +- authenticator/src/lib.rs | 135 +---------- pc-hid-runner/src/cli.rs | 22 -- pc-hid-runner/src/service.rs | 7 +- 6 files changed, 130 insertions(+), 479 deletions(-) diff --git a/authenticator/Cargo.toml b/authenticator/Cargo.toml index 34a8b24..8ccc388 100644 --- a/authenticator/Cargo.toml +++ b/authenticator/Cargo.toml @@ -12,7 +12,6 @@ trussed = "0.1.0" ciborium = { version = "0.2", default-features = false } heapless = "0.7" littlefs2 = "0.4" -aes-gcm = "0.10" aes = "0.8" cbc = { version = "0.1", features = ["alloc"] } hkdf = "0.12" @@ -27,10 +26,9 @@ rand_core = "0.6" log = { version = "0.4", default-features = false } transport-core = { path = "../transport-core", default-features = false } -# Use our local wrapper for ML‑DSA. By enabling all parameter set features the -# wrapper links to the stub C implementation for 44/65/87. +# Use our local wrapper for ML-DSA. By enabling all parameter set features the +# wrapper links to the underlying ML-DSA implementation for 44/65/87. trussed-mldsa = { path = "../trussed-mldsa", features = ["mldsa44", "mldsa65", "mldsa87"] } -trussed-mlkem = { path = "../trussed-mlkem", features = ["mlkem512", "mlkem768", "mlkem1024"] } [dev-dependencies] serial_test = "2" \ No newline at end of file diff --git a/authenticator/src/ctap.rs b/authenticator/src/ctap.rs index 5b406fa..a30952a 100644 --- a/authenticator/src/ctap.rs +++ b/authenticator/src/ctap.rs @@ -1,8 +1,7 @@ use crate::{ - cose_akp_key_map, cose_alg_for_kem_param_set, create_credential, credential_secret_from_bytes, - decrypt_classic_pin_block, decrypt_pqc_pin_block, derive_classic_pin_uv_session_keys, - derive_pqc_pin_uv_session_keys, encrypt_classic_pin_block, encrypt_pqc_pin_block, - sign_challenge, ClassicPinProtocol, CoseAlg, PinUvSessionKeys, PIN_UV_AUTH_PROTOCOL_PQC, + create_credential, credential_secret_from_bytes, decrypt_classic_pin_block, + derive_classic_pin_uv_session_keys, encrypt_classic_pin_block, sign_challenge, + ClassicPinProtocol, CoseAlg, PinUvSessionKeys, }; use aes::Aes256; @@ -33,7 +32,6 @@ use trussed::try_syscall; use trussed::types::consent; #[cfg(not(test))] use trussed::types::{Location, Message, PathBuf}; -use trussed_mlkem::{self, Ciphertext, ParamSet as KemParamSet, SecretKey as KemSecretKey}; use zeroize::Zeroize; use transport_core::{ctap::constants::*, logging::HexOption}; @@ -194,20 +192,14 @@ const COSE_ALG_ES256: i32 = -7; const CREDENTIAL_STORE_PATH: &str = "credentials.cbor"; #[cfg(not(test))] const ATTESTATION_STORE_PATH: &str = "attestation.cbor"; -const PIN_UV_AUTH_PROTOCOL_CLASSIC_V1: i32 = 1; -const PIN_UV_AUTH_PROTOCOL_CLASSIC_V2: i32 = 2; +pub(crate) const PIN_UV_AUTH_PROTOCOL_CLASSIC_V1: i32 = 1; +pub(crate) const PIN_UV_AUTH_PROTOCOL_CLASSIC_V2: i32 = 2; #[cfg_attr(not(test), allow(dead_code))] -const PIN_UV_AUTH_PROTOCOL_CLASSIC: i32 = PIN_UV_AUTH_PROTOCOL_CLASSIC_V2; -const PIN_UV_PROTOCOLS_PREFER: [i32; 3] = [ - PIN_UV_AUTH_PROTOCOL_PQC as i32, +pub(crate) const PIN_UV_AUTH_PROTOCOL_CLASSIC: i32 = PIN_UV_AUTH_PROTOCOL_CLASSIC_V2; +const PIN_UV_PROTOCOLS_SUPPORTED: [i32; 2] = [ PIN_UV_AUTH_PROTOCOL_CLASSIC_V2, PIN_UV_AUTH_PROTOCOL_CLASSIC_V1, ]; -const PIN_UV_PROTOCOLS_CLASSIC: [i32; 2] = [ - PIN_UV_AUTH_PROTOCOL_CLASSIC_V2, - PIN_UV_AUTH_PROTOCOL_CLASSIC_V1, -]; -const PIN_UV_PROTOCOLS_PQC_ONLY: [i32; 1] = [PIN_UV_AUTH_PROTOCOL_PQC as i32]; const PIN_PERMISSION_MC: u8 = 0x01; const PIN_PERMISSION_GA: u8 = 0x02; @@ -459,188 +451,109 @@ struct HmacSecretRequest { protocol: PinProtocol, } -#[derive(Copy, Clone, PartialEq, Eq)] -enum PinProtocol { - Pqc, - Classic(ClassicPinProtocol), -} +pub(crate) type PinProtocol = ClassicPinProtocol; -impl PinProtocol { - fn from_identifier(value: i128) -> Result { - if value == i128::from(PIN_UV_AUTH_PROTOCOL_PQC) { - Ok(PinProtocol::Pqc) - } else if value == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V1) { - Ok(PinProtocol::Classic(ClassicPinProtocol::V1)) - } else if value == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V2) { - Ok(PinProtocol::Classic(ClassicPinProtocol::V2)) - } else { - Err(CTAP2_ERR_PIN_AUTH_INVALID) - } +fn pin_protocol_from_identifier(value: i128) -> Result { + if value == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V1) { + Ok(ClassicPinProtocol::V1) + } else if value == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V2) { + Ok(ClassicPinProtocol::V2) + } else { + Err(CTAP2_ERR_PIN_AUTH_INVALID) } } -enum PinProtocolSession { - Pqc { - param_set: KemParamSet, - secret_key: KemSecretKey, - public_key: Vec, - }, - Classic { - protocol: ClassicPinProtocol, - public_key: EncodedPoint, - secret_key: P256SecretKey, - }, +struct PinProtocolSession { + protocol: ClassicPinProtocol, + public_key: EncodedPoint, + secret_key: P256SecretKey, } impl PinProtocolSession { fn protocol(&self) -> PinProtocol { - match self { - PinProtocolSession::Pqc { .. } => PinProtocol::Pqc, - PinProtocolSession::Classic { protocol, .. } => PinProtocol::Classic(*protocol), - } + self.protocol } fn key_agreement_value(&self) -> Value { - match self { - PinProtocolSession::Pqc { - param_set, - public_key, - .. - } => { - let alg = cose_alg_for_kem_param_set(*param_set); - cose_akp_key_map(alg, public_key) - } - PinProtocolSession::Classic { public_key, .. } => { - let (x, y) = match (public_key.x(), public_key.y()) { - (Some(x_bytes), Some(y_bytes)) => (x_bytes.to_vec(), y_bytes.to_vec()), - _ => (Vec::new(), Vec::new()), - }; - canonical_map(vec![ - ( - Value::Integer(Integer::from(1)), - Value::Integer(Integer::from(2)), - ), - ( - Value::Integer(Integer::from(3)), - Value::Integer(Integer::from(-25)), - ), - ( - Value::Integer(Integer::from(-1)), - Value::Integer(Integer::from(1)), - ), - (Value::Integer(Integer::from(-2)), Value::Bytes(x)), - (Value::Integer(Integer::from(-3)), Value::Bytes(y)), - ]) - } - } + let (x, y) = match (self.public_key.x(), self.public_key.y()) { + (Some(x_bytes), Some(y_bytes)) => (x_bytes.to_vec(), y_bytes.to_vec()), + _ => (Vec::new(), Vec::new()), + }; + canonical_map(vec![ + ( + Value::Integer(Integer::from(1)), + Value::Integer(Integer::from(2)), + ), + ( + Value::Integer(Integer::from(3)), + Value::Integer(Integer::from(-25)), + ), + ( + Value::Integer(Integer::from(-1)), + Value::Integer(Integer::from(1)), + ), + (Value::Integer(Integer::from(-2)), Value::Bytes(x)), + (Value::Integer(Integer::from(-3)), Value::Bytes(y)), + ]) } fn derive_session_keys( self, platform_key: &[(Value, Value)], ) -> Result<(PinUvSessionKeys, Vec), u8> { - match self { - PinProtocolSession::Pqc { - param_set, - secret_key, - public_key, - } => { - let Some(ciphertext_bytes) = platform_key - .iter() - .find(|(k, _)| *k == Value::Integer(Integer::from(-2))) - .and_then(|(_, v)| match v { - Value::Bytes(bytes) => Some(bytes.clone()), - _ => None, - }) - else { - return Err(CTAP1_ERR_INVALID_PARAMETER); - }; - let ciphertext = Ciphertext(ciphertext_bytes.clone()); - let shared = trussed_mlkem::decapsulate(param_set, &secret_key, &ciphertext) - .map_err(|_| CTAP1_ERR_INVALID_PARAMETER)?; - let mut hasher = Sha256::new(); - hasher.update(&public_key); - hasher.update(&ciphertext_bytes); - let transcript_hash = hasher.finalize().to_vec(); - let keys = derive_pqc_pin_uv_session_keys(&shared.0, &transcript_hash); - Ok((keys, transcript_hash)) - } - PinProtocolSession::Classic { - protocol, - public_key, - secret_key, - } => { - let Some(peer_x) = platform_key - .iter() - .find(|(k, _)| *k == Value::Integer(Integer::from(-2))) - .and_then(|(_, v)| match v { - Value::Bytes(bytes) => Some(bytes.clone()), - _ => None, - }) - else { - return Err(CTAP1_ERR_INVALID_PARAMETER); - }; - let Some(peer_y) = platform_key - .iter() - .find(|(k, _)| *k == Value::Integer(Integer::from(-3))) - .and_then(|(_, v)| match v { - Value::Bytes(bytes) => Some(bytes.clone()), - _ => None, - }) - else { - return Err(CTAP1_ERR_INVALID_PARAMETER); - }; - if peer_x.len() != 32 || peer_y.len() != 32 { - return Err(CTAP1_ERR_INVALID_PARAMETER); - } - - let mut peer_encoded = [0u8; 65]; - peer_encoded[0] = 0x04; - peer_encoded[1..33].copy_from_slice(&peer_x); - peer_encoded[33..65].copy_from_slice(&peer_y); - - let peer_public = P256PublicKey::from_sec1_bytes(&peer_encoded) - .map_err(|_| CTAP1_ERR_INVALID_PARAMETER)?; - let shared = - diffie_hellman(secret_key.to_nonzero_scalar(), peer_public.as_affine()); - - let auth_public_bytes = public_key.as_bytes(); - let mut hasher = Sha256::new(); - hasher.update(auth_public_bytes); - hasher.update(&peer_encoded); - let transcript_hash = hasher.finalize().to_vec(); - - let shared_bytes = shared.raw_secret_bytes(); - let keys = derive_classic_pin_uv_session_keys(protocol, shared_bytes.as_ref()); - Ok((keys, transcript_hash)) - } + let Some(peer_x) = platform_key + .iter() + .find(|(k, _)| *k == Value::Integer(Integer::from(-2))) + .and_then(|(_, v)| match v { + Value::Bytes(bytes) => Some(bytes.clone()), + _ => None, + }) + else { + return Err(CTAP1_ERR_INVALID_PARAMETER); + }; + let Some(peer_y) = platform_key + .iter() + .find(|(k, _)| *k == Value::Integer(Integer::from(-3))) + .and_then(|(_, v)| match v { + Value::Bytes(bytes) => Some(bytes.clone()), + _ => None, + }) + else { + return Err(CTAP1_ERR_INVALID_PARAMETER); + }; + if peer_x.len() != 32 || peer_y.len() != 32 { + return Err(CTAP1_ERR_INVALID_PARAMETER); } - } -} -#[cfg(test)] -mod tests; + let mut peer_encoded = [0u8; 65]; + peer_encoded[0] = 0x04; + peer_encoded[1..33].copy_from_slice(&peer_x); + peer_encoded[33..65].copy_from_slice(&peer_y); -#[derive(Clone, Copy, Debug, PartialEq, Eq)] -pub enum PqcPolicy { - PreferPqc, - ClassicOnly, - RequirePqc, -} + let peer_public = P256PublicKey::from_sec1_bytes(&peer_encoded) + .map_err(|_| CTAP1_ERR_INVALID_PARAMETER)?; + let shared = diffie_hellman(self.secret_key.to_nonzero_scalar(), peer_public.as_affine()); + + let auth_public_bytes = self.public_key.as_bytes(); + let mut hasher = Sha256::new(); + hasher.update(auth_public_bytes); + hasher.update(&peer_encoded); + let transcript_hash = hasher.finalize().to_vec(); -impl Default for PqcPolicy { - fn default() -> Self { - Self::PreferPqc + let shared_bytes = shared.raw_secret_bytes(); + let keys = derive_classic_pin_uv_session_keys(self.protocol, shared_bytes.as_ref()); + Ok((keys, transcript_hash)) } } +#[cfg(test)] +mod tests; + pub struct CtapApp { client: C, aaguid: [u8; 16], pin_state: PinState, pin_protocol_session: Option, - platform_declined_pqc: bool, - pqc_policy: PqcPolicy, suppress_attestation: bool, cred_mgmt_state: CredentialManagementState, pending_assertion: Option, @@ -664,8 +577,6 @@ where aaguid, pin_state: PinState::new(), pin_protocol_session: None, - platform_declined_pqc: false, - pqc_policy: PqcPolicy::default(), suppress_attestation: false, cred_mgmt_state: CredentialManagementState::new(), pending_assertion: None, @@ -689,24 +600,15 @@ where self.auto_user_presence = enabled; } - pub fn set_pqc_policy(&mut self, policy: PqcPolicy) { - self.pqc_policy = policy; - self.platform_declined_pqc = matches!(policy, PqcPolicy::ClassicOnly); - } - pub fn suppress_attestation(&mut self, suppress: bool) { self.suppress_attestation = suppress; } fn supported_pin_uv_protocols(&self) -> &'static [i32] { - match self.pqc_policy { - PqcPolicy::PreferPqc => &PIN_UV_PROTOCOLS_PREFER, - PqcPolicy::ClassicOnly => &PIN_UV_PROTOCOLS_CLASSIC, - PqcPolicy::RequirePqc => &PIN_UV_PROTOCOLS_PQC_ONLY, - } + &PIN_UV_PROTOCOLS_SUPPORTED } fn verify_pin_auth( - protocol: PinProtocol, + _protocol: PinProtocol, keys: &PinUvSessionKeys, data: &[u8], provided: &[u8], @@ -715,49 +617,24 @@ where HmacSha256::new_from_slice(&keys.auth_key).map_err(|_| CTAP2_ERR_PROCESSING)?; mac.update(data); let result = mac.finalize().into_bytes(); - match protocol { - PinProtocol::Classic(ClassicPinProtocol::V1) - | PinProtocol::Classic(ClassicPinProtocol::V2) => { - if provided.len() != 16 { - return Err(CTAP2_ERR_PIN_AUTH_INVALID); - } - if result[..16] == provided[..16] { - Ok(()) - } else { - Err(CTAP2_ERR_PIN_AUTH_INVALID) - } - } - PinProtocol::Pqc => { - if provided.len() != 32 { - return Err(CTAP2_ERR_PIN_AUTH_INVALID); - } - if result[..] == provided[..] { - Ok(()) - } else { - Err(CTAP2_ERR_PIN_AUTH_INVALID) - } - } + if provided.len() != 16 { + return Err(CTAP2_ERR_PIN_AUTH_INVALID); + } + if result[..16] == provided[..16] { + Ok(()) + } else { + Err(CTAP2_ERR_PIN_AUTH_INVALID) } } fn decrypt_pin_block_checked( protocol: PinProtocol, keys: &PinUvSessionKeys, - transcript_hash: &[u8], + _transcript_hash: &[u8], ciphertext: &[u8], ) -> Result, u8> { - match protocol { - PinProtocol::Pqc => { - if ciphertext.len() < 16 { - return Err(CTAP1_ERR_INVALID_PARAMETER); - } - let nonce = [0u8; 12]; - decrypt_pqc_pin_block(keys, &nonce, ciphertext, transcript_hash) - .map_err(|_| CTAP2_ERR_PIN_AUTH_INVALID) - } - PinProtocol::Classic(classic) => decrypt_classic_pin_block(classic, keys, ciphertext) - .map_err(|_| CTAP2_ERR_PIN_AUTH_INVALID), - } + decrypt_classic_pin_block(protocol, keys, ciphertext) + .map_err(|_| CTAP2_ERR_PIN_AUTH_INVALID) } fn extract_new_pin(plaintext: &mut [u8]) -> Result, u8> { @@ -882,41 +759,16 @@ where if let Some(Value::Integer(int)) = Self::map_get(map, Value::Integer(Integer::from(1))) { let value: i128 = int.clone().into(); match value { - v if v == i128::from(PIN_UV_AUTH_PROTOCOL_PQC) => { - if matches!(self.pqc_policy, PqcPolicy::ClassicOnly) { - return Err(CTAP1_ERR_INVALID_PARAMETER); - } - self.platform_declined_pqc = false; - Ok(PinProtocol::Pqc) - } v if v == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V2) => { - if matches!(self.pqc_policy, PqcPolicy::RequirePqc) { - return Err(CTAP1_ERR_INVALID_PARAMETER); - } - self.platform_declined_pqc = true; - Ok(PinProtocol::Classic(ClassicPinProtocol::V2)) + Ok(ClassicPinProtocol::V2) } v if v == i128::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V1) => { - if matches!(self.pqc_policy, PqcPolicy::RequirePqc) { - return Err(CTAP1_ERR_INVALID_PARAMETER); - } - self.platform_declined_pqc = true; - Ok(PinProtocol::Classic(ClassicPinProtocol::V1)) + Ok(ClassicPinProtocol::V1) } _ => Err(CTAP1_ERR_INVALID_PARAMETER), } } else { - match self.pqc_policy { - PqcPolicy::PreferPqc => { - if self.platform_declined_pqc { - Ok(PinProtocol::Classic(ClassicPinProtocol::V2)) - } else { - Ok(PinProtocol::Pqc) - } - } - PqcPolicy::ClassicOnly => Ok(PinProtocol::Classic(ClassicPinProtocol::V2)), - PqcPolicy::RequirePqc => Ok(PinProtocol::Pqc), - } + Ok(ClassicPinProtocol::V2) } } @@ -932,35 +784,22 @@ where } fn client_pin_get_key_agreement(&mut self, protocol: PinProtocol) -> Result, u8> { - let session = match protocol { - PinProtocol::Pqc => { - let param_set = KemParamSet::MLKEM512; - let (public_key, secret_key) = trussed_mlkem::keypair(param_set); - PinProtocolSession::Pqc { - param_set, - secret_key, - public_key: public_key.0.clone(), - } + let secret_key = loop { + let bytes = syscall!(self.client.random_bytes(32)).bytes; + if bytes.len() != 32 { + continue; } - PinProtocol::Classic(classic_protocol) => { - let secret_key = loop { - let bytes = syscall!(self.client.random_bytes(32)).bytes; - if bytes.len() != 32 { - continue; - } - match P256SecretKey::from_slice(bytes.as_slice()) { - Ok(secret) => break secret, - Err(_) => continue, - } - }; - let public_key = secret_key.public_key().to_encoded_point(false); - PinProtocolSession::Classic { - protocol: classic_protocol, - public_key, - secret_key, - } + match P256SecretKey::from_slice(bytes.as_slice()) { + Ok(secret) => break secret, + Err(_) => continue, } }; + let public_key = secret_key.public_key().to_encoded_point(false); + let session = PinProtocolSession { + protocol, + public_key, + secret_key, + }; let mut key_map = session.key_agreement_value(); if let Value::Map(mut entries) = key_map { canonical_sort(&mut entries); @@ -1103,26 +942,20 @@ where let mut token = [0u8; 32]; token.copy_from_slice(random.as_slice()); let encrypted = match protocol { - PinProtocol::Pqc => { - let nonce = [0u8; 12]; - encrypt_pqc_pin_block(&keys, &nonce, &token, &transcript_hash) + ClassicPinProtocol::V1 => { + encrypt_classic_pin_block(ClassicPinProtocol::V1, &keys, None, &token) + .map_err(|_| CTAP2_ERR_PROCESSING)? } - PinProtocol::Classic(classic_protocol) => match classic_protocol { - ClassicPinProtocol::V1 => { - encrypt_classic_pin_block(ClassicPinProtocol::V1, &keys, None, &token) - .map_err(|_| CTAP2_ERR_PROCESSING)? - } - ClassicPinProtocol::V2 => { - let iv_bytes = syscall!(self.client.random_bytes(16)).bytes; - if iv_bytes.len() != 16 { - return Err(CTAP2_ERR_PROCESSING); - } - let mut iv = [0u8; 16]; - iv.copy_from_slice(iv_bytes.as_slice()); - encrypt_classic_pin_block(ClassicPinProtocol::V2, &keys, Some(&iv), &token) - .map_err(|_| CTAP2_ERR_PROCESSING)? + ClassicPinProtocol::V2 => { + let iv_bytes = syscall!(self.client.random_bytes(16)).bytes; + if iv_bytes.len() != 16 { + return Err(CTAP2_ERR_PROCESSING); } - }, + let mut iv = [0u8; 16]; + iv.copy_from_slice(iv_bytes.as_slice()); + encrypt_classic_pin_block(ClassicPinProtocol::V2, &keys, Some(&iv), &token) + .map_err(|_| CTAP2_ERR_PROCESSING)? + } }; self.pin_state .set_pin_uv_auth_token(token, permissions, rp_id); @@ -2409,10 +2242,10 @@ where { Some(Value::Integer(int)) => { let value: i128 = int.clone().into(); - PinProtocol::from_identifier(value)? + pin_protocol_from_identifier(value)? } Some(_) => return Err(CTAP2_ERR_PIN_AUTH_INVALID), - None => PinProtocol::Classic(ClassicPinProtocol::V2), + None => ClassicPinProtocol::V2, }; hmac_secret_request = Some(HmacSecretRequest { key_agreement, diff --git a/authenticator/src/ctap/tests.rs b/authenticator/src/ctap/tests.rs index 4e35287..6923d1b 100644 --- a/authenticator/src/ctap/tests.rs +++ b/authenticator/src/ctap/tests.rs @@ -24,7 +24,6 @@ use trussed::client::{ }; use trussed::error::Error as TrussedError; use trussed::types::{consent, Message}; -use trussed_mlkem::{ParamSet as KemParamSet, SecretKey as KemSecretKey}; use zeroize::Zeroize; #[derive(Default)] @@ -110,30 +109,11 @@ impl ManagementClient for TestClient {} impl UiClient for TestClient {} impl TrussedClient for TestClient {} -#[test] -fn pqc_key_agreement_value_is_canonical_akp_map() { - let public_key = vec![0x01, 0x02]; - let session = PinProtocolSession::Pqc { - param_set: KemParamSet::MLKEM512, - secret_key: KemSecretKey(vec![]), - public_key: public_key.clone(), - }; - - let value = session.key_agreement_value(); - let expected_alg = cose_alg_for_kem_param_set(KemParamSet::MLKEM512); - assert_eq!(value, cose_akp_key_map(expected_alg, &public_key)); - - let mut encoded = Vec::new(); - into_writer(&value, &mut encoded).expect("encode COSE key agreement map"); - let expected = vec![0xA3, 0x01, 0x07, 0x03, 0x38, 0x6D, 0x20, 0x42, 0x01, 0x02]; - assert_eq!(encoded, expected); -} - #[test] fn classic_key_agreement_value_is_canonical() { let secret_key = P256SecretKey::from_slice(&[0x13; 32]).expect("valid secret key"); let public_key = secret_key.public_key().to_encoded_point(false); - let session = PinProtocolSession::Classic { + let session = PinProtocolSession { protocol: ClassicPinProtocol::V2, public_key: public_key.clone(), secret_key, @@ -247,8 +227,8 @@ fn assert_get_info_response(app: &mut CtapApp, aaguid: [u8; 16]) { ( Value::Integer(Integer::from(6)), Value::Array(vec![ - Value::Integer(Integer::from(i32::from(PIN_UV_AUTH_PROTOCOL_PQC))), - Value::Integer(Integer::from(PIN_UV_AUTH_PROTOCOL_CLASSIC)), + Value::Integer(Integer::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V2)), + Value::Integer(Integer::from(PIN_UV_AUTH_PROTOCOL_CLASSIC_V1)), ]), ), ( diff --git a/authenticator/src/lib.rs b/authenticator/src/lib.rs index c3f6778..56243b5 100644 --- a/authenticator/src/lib.rs +++ b/authenticator/src/lib.rs @@ -1,7 +1,4 @@ use aes::Aes256; -#[allow(deprecated)] -use aes_gcm::aead::{generic_array::GenericArray, Aead, KeyInit, Payload}; -use aes_gcm::Aes256Gcm; use cbc::cipher::{block_padding::NoPadding, BlockDecryptMut, BlockEncryptMut, KeyIvInit}; use cbc::{Decryptor, Encryptor}; use ciborium::ser::into_writer; @@ -14,7 +11,6 @@ use p256::{EncodedPoint, SecretKey as P256SecretKey}; use rand_core::OsRng; use sha2::{Digest, Sha256}; use trussed_mldsa::{keypair, sign, ParamSet, PublicKey, SecretKey}; -use trussed_mlkem::ParamSet as KemParamSet; use zeroize::Zeroize; pub mod ctap; @@ -22,9 +18,6 @@ pub mod ctap; type Aes256CbcEncryptor = Encryptor; type Aes256CbcDecryptor = Decryptor; -/// Identifier advertised in `authenticatorGetInfo` for the PQC PIN/UV protocol. -pub const PIN_UV_AUTH_PROTOCOL_PQC: u8 = 101; - /// COSE key type value assigned to Algorithm Key Pairs (AKP). pub const COSE_KEY_TYPE_AKP: i32 = 7; @@ -33,11 +26,6 @@ pub const COSE_KEY_LABEL_KTY: i32 = 1; pub const COSE_KEY_LABEL_ALG: i32 = 3; pub const COSE_KEY_PARAM_AKP_KEY: i32 = -1; -/// COSE algorithm identifiers for ML-KEM parameter sets. -pub const COSE_ALG_ML_KEM_512: i32 = -110; -pub const COSE_ALG_ML_KEM_768: i32 = -111; -pub const COSE_ALG_ML_KEM_1024: i32 = -112; - /// Session keys derived from an ML-KEM shared secret and the transcript hash. #[derive(Debug, Zeroize)] #[zeroize(drop)] @@ -63,27 +51,6 @@ impl ClassicPinProtocol { } } -/// Derive the AES-256-GCM encryption key and the 32-byte HMAC key used for -/// client PIN handling. The HKDF salt binds the keys to the transcript hash. -pub fn derive_pqc_pin_uv_session_keys( - shared_secret: &[u8], - transcript_hash: &[u8], -) -> PinUvSessionKeys { - let hkdf = Hkdf::::new(Some(transcript_hash), shared_secret); - let mut okm = [0u8; 64]; - hkdf.expand(b"FIDO2-PQC-PIN-KEYS", &mut okm) - .expect("HKDF expand must not fail for valid length"); - let mut encryption_key = [0u8; 32]; - let mut auth_key = [0u8; 32]; - encryption_key.copy_from_slice(&okm[..32]); - auth_key.copy_from_slice(&okm[32..]); - okm.zeroize(); - PinUvSessionKeys { - encryption_key, - auth_key, - } -} - /// Derive the AES/HMAC keys for the classic PIN/UV protocols. pub fn derive_classic_pin_uv_session_keys( protocol: ClassicPinProtocol, @@ -114,47 +81,6 @@ pub fn derive_classic_pin_uv_session_keys( } } -/// Encrypt PIN data using AES-256-GCM. The transcript hash should be supplied -/// as AAD to bind the ciphertext to the protocol run. -#[allow(deprecated)] -pub fn encrypt_pqc_pin_block( - keys: &PinUvSessionKeys, - nonce: &[u8; 12], - plaintext: &[u8], - transcript_hash: &[u8], -) -> Vec { - let cipher = Aes256Gcm::new_from_slice(&keys.encryption_key).expect("invalid AES key length"); - let nonce_ga = GenericArray::clone_from_slice(nonce); - cipher - .encrypt( - &nonce_ga, - Payload { - msg: plaintext, - aad: transcript_hash, - }, - ) - .expect("encryption should not fail for valid parameters") -} - -/// Decrypt the PIN block using AES-256-GCM and the previously derived keys. -#[allow(deprecated)] -pub fn decrypt_pqc_pin_block( - keys: &PinUvSessionKeys, - nonce: &[u8; 12], - ciphertext: &[u8], - transcript_hash: &[u8], -) -> Result, aes_gcm::Error> { - let cipher = Aes256Gcm::new_from_slice(&keys.encryption_key).expect("invalid AES key length"); - let nonce_ga = GenericArray::clone_from_slice(nonce); - cipher.decrypt( - &nonce_ga, - Payload { - msg: ciphertext, - aad: transcript_hash, - }, - ) -} - /// Encrypt a classic PIN block using AES-256-CBC. Protocol 1 uses an all-zero /// IV, while protocol 2 prepends the random IV to the ciphertext. pub fn encrypt_classic_pin_block( @@ -262,15 +188,6 @@ pub fn mldsa_paramset_from_alg(alg: CoseAlg) -> Option { } } -/// Translate an ML-KEM parameter set to the corresponding COSE `alg` value. -pub fn cose_alg_for_kem_param_set(param_set: KemParamSet) -> i32 { - match param_set { - KemParamSet::MLKEM512 => COSE_ALG_ML_KEM_512, - KemParamSet::MLKEM768 => COSE_ALG_ML_KEM_768, - KemParamSet::MLKEM1024 => COSE_ALG_ML_KEM_1024, - } -} - /// Build a COSE_Key map for an AKP public key using canonical ordering. pub(crate) fn cose_akp_key_map(alg_id: i32, public_key: &[u8]) -> Value { Value::Map(vec![ @@ -423,17 +340,11 @@ pub fn sign_challenge( } } -// Additional structs and functions would be defined here to manage -// credential records, persist secrets via Trussed storage, and -// implement the CTAP2 command handlers. See the README for links -// explaining how to integrate this crate into a runner. - #[cfg(test)] mod tests { use super::*; - use ciborium::{de::from_reader, ser::into_writer, value::Integer}; + use ciborium::{de::from_reader, value::Integer}; use trussed_mldsa::verify; - use trussed_mlkem::{self, ParamSet as KemParamSet}; #[test] fn cose_public_key_canonical_encoding_matches_fixture() { @@ -452,32 +363,6 @@ mod tests { ); } - #[test] - fn mlkem_akp_map_matches_canonical_fixture() { - let pk = [0xCA, 0xFE]; - let value = cose_akp_key_map(COSE_ALG_ML_KEM_512, &pk); - let mut encoded = Vec::new(); - into_writer(&value, &mut encoded).expect("encode ML-KEM COSE key"); - let expected = vec![0xA3, 0x01, 0x07, 0x03, 0x38, 0x6D, 0x20, 0x42, 0xCA, 0xFE]; - assert_eq!(encoded, expected); - } - - #[test] - fn mlkem_alg_mapping_matches_expected_values() { - assert_eq!( - cose_alg_for_kem_param_set(KemParamSet::MLKEM512), - COSE_ALG_ML_KEM_512 - ); - assert_eq!( - cose_alg_for_kem_param_set(KemParamSet::MLKEM768), - COSE_ALG_ML_KEM_768 - ); - assert_eq!( - cose_alg_for_kem_param_set(KemParamSet::MLKEM1024), - COSE_ALG_ML_KEM_1024 - ); - } - #[test] fn mldsa_roundtrip_signatures() { for alg in [CoseAlg::MLDSA44, CoseAlg::MLDSA65, CoseAlg::MLDSA87] { @@ -577,22 +462,4 @@ mod tests { panic!("COSE key missing public key bytes"); } - #[test] - fn mlkem_pin_protocol_roundtrip() { - let (pk, sk) = trussed_mlkem::keypair(KemParamSet::MLKEM512); - let (ciphertext, shared_secret_client) = - trussed_mlkem::encapsulate(KemParamSet::MLKEM512, &pk); - let shared_secret_auth = - trussed_mlkem::decapsulate(KemParamSet::MLKEM512, &sk, &ciphertext) - .expect("ciphertext should be valid"); - let transcript_hash = b"transcript"; - let client_keys = derive_pqc_pin_uv_session_keys(&shared_secret_client.0, transcript_hash); - let auth_keys = derive_pqc_pin_uv_session_keys(&shared_secret_auth.0, transcript_hash); - let nonce = [0u8; 12]; - let plaintext = b"PIN data"; - let ciphertext = encrypt_pqc_pin_block(&client_keys, &nonce, plaintext, transcript_hash); - let decrypted = decrypt_pqc_pin_block(&auth_keys, &nonce, &ciphertext, transcript_hash) - .expect("decryption should succeed"); - assert_eq!(plaintext.to_vec(), decrypted); - } } diff --git a/pc-hid-runner/src/cli.rs b/pc-hid-runner/src/cli.rs index 5b844f5..18ba23a 100644 --- a/pc-hid-runner/src/cli.rs +++ b/pc-hid-runner/src/cli.rs @@ -7,7 +7,6 @@ use std::{ time::{Duration, Instant}, }; -use authenticator::ctap::PqcPolicy; use clap::{Args, Parser, Subcommand, ValueEnum}; use clap_num::maybe_hex; use daemonize::Daemonize; @@ -98,9 +97,6 @@ pub struct DeviceArgs { /// Suppress attestation certificate material for makeCredential operations #[clap(long)] pub suppress_attestation: bool, - /// Policy controlling whether PQC PIN/UV is preferred, required, or disabled - #[clap(long, value_enum, default_value_t = PqcPolicyArg::Prefer)] - pub pqc_policy: PqcPolicyArg, /// Backend transport to use #[clap(long, value_enum, default_value_t = BackendArg::Uhid)] pub backend: BackendArg, @@ -111,23 +107,6 @@ pub enum BackendArg { Uhid, } -#[derive(Copy, Clone, Debug, ValueEnum, PartialEq, Eq)] -pub enum PqcPolicyArg { - Prefer, - ClassicOnly, - Require, -} - -impl From for PqcPolicy { - fn from(value: PqcPolicyArg) -> Self { - match value { - PqcPolicyArg::Prefer => PqcPolicy::PreferPqc, - PqcPolicyArg::ClassicOnly => PqcPolicy::ClassicOnly, - PqcPolicyArg::Require => PqcPolicy::RequirePqc, - } - } -} - impl BackendArg { fn into_backend(self) -> service::Backend { match self { @@ -171,7 +150,6 @@ impl StartCommand { }, auto_user_presence: !self.device.manual_user_presence, suppress_attestation: self.device.suppress_attestation, - pqc_policy: self.device.pqc_policy.into(), backend: self.device.backend.into_backend(), }) } diff --git a/pc-hid-runner/src/service.rs b/pc-hid-runner/src/service.rs index a25e991..8ccf879 100644 --- a/pc-hid-runner/src/service.rs +++ b/pc-hid-runner/src/service.rs @@ -3,7 +3,7 @@ use std::{ path::{Path, PathBuf}, }; -use authenticator::ctap::{CtapApp, PqcPolicy}; +use authenticator::ctap::CtapApp; use transport_core::state::{IdentityConfig, PersistentStore}; use transport_core::{set_waiting, Apps as TrussedApps, Builder, Options, Platform, Syscall}; use trussed::{ @@ -35,7 +35,6 @@ pub struct RunnerConfig { pub identity: IdentityStrings, pub auto_user_presence: bool, pub suppress_attestation: bool, - pub pqc_policy: PqcPolicy, pub backend: Backend, } @@ -44,7 +43,6 @@ pub struct AppData { pub aaguid: [u8; 16], pub auto_user_presence: bool, pub suppress_attestation: bool, - pub pqc_policy: PqcPolicy, } pub struct Apps { @@ -68,7 +66,6 @@ impl<'a> TrussedApps<'a, CoreOnly> for Apps { let mut ctap = CtapApp::new(client, data.aaguid); ctap.set_auto_user_presence(data.auto_user_presence); ctap.suppress_attestation(data.suppress_attestation); - ctap.set_pqc_policy(data.pqc_policy); ctap.set_keepalive_callback(set_waiting); Self { ctap } } @@ -98,7 +95,6 @@ pub fn run(config: RunnerConfig) -> io::Result<()> { identity, auto_user_presence, suppress_attestation, - pqc_policy, backend, } = config; @@ -115,7 +111,6 @@ pub fn run(config: RunnerConfig) -> io::Result<()> { aaguid, auto_user_presence, suppress_attestation, - pqc_policy, }; match backend { From 2d6b13bdc10f275d24f1022b792d154d9fc2b9f2 Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:42:23 -0700 Subject: [PATCH 12/26] Delete trussed-mlkem crate --- Cargo.toml | 1 - trussed-mlkem/Cargo.toml | 17 --- trussed-mlkem/build.rs | 130 ------------------ trussed-mlkem/src/lib.rs | 283 --------------------------------------- 4 files changed, 431 deletions(-) delete mode 100644 trussed-mlkem/Cargo.toml delete mode 100644 trussed-mlkem/build.rs delete mode 100644 trussed-mlkem/src/lib.rs diff --git a/Cargo.toml b/Cargo.toml index a006a4d..5b4ef01 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,6 @@ members = [ "trussed-mldsa", "authenticator", - "trussed-mlkem", "pc-hid-runner", "transport-core" ] diff --git a/trussed-mlkem/Cargo.toml b/trussed-mlkem/Cargo.toml deleted file mode 100644 index 49d60ff..0000000 --- a/trussed-mlkem/Cargo.toml +++ /dev/null @@ -1,17 +0,0 @@ -[package] -name = "trussed-mlkem" -version = "0.1.0" -edition = "2021" - -description = "Safe Rust wrapper around the liboqs ML-KEM key encapsulation mechanisms" -authors = ["Feitian Technologies "] -license = "Apache-2.0 OR MIT" - -[dependencies] -zeroize = { version = "1", features = ["zeroize_derive"] } - -[features] -default = ["mlkem512", "mlkem768", "mlkem1024"] -mlkem512 = [] -mlkem768 = [] -mlkem1024 = [] diff --git a/trussed-mlkem/build.rs b/trussed-mlkem/build.rs deleted file mode 100644 index aaf7b7b..0000000 --- a/trussed-mlkem/build.rs +++ /dev/null @@ -1,130 +0,0 @@ -use std::env; -use std::fs; -use std::path::{Path, PathBuf}; -use std::process::Command; - -fn workspace_root() -> PathBuf { - PathBuf::from(env::var("CARGO_MANIFEST_DIR").expect("CARGO_MANIFEST_DIR")).join("..") -} - -fn target_subdir() -> String { - let arch = env::var("CARGO_CFG_TARGET_ARCH").expect("CARGO_CFG_TARGET_ARCH"); - let os = env::var("CARGO_CFG_TARGET_OS").expect("CARGO_CFG_TARGET_OS"); - match (os.as_str(), arch.as_str()) { - ("linux", "aarch64") => "linux-aarch64".to_string(), - ("linux", "x86_64") => "linux-x86_64".to_string(), - _ => panic!("unsupported prebuilt liboqs target {os}-{arch}"), - } -} - -fn lib_directory(root: &Path) -> PathBuf { - root.join("prebuilt_liboqs") - .join(target_subdir()) - .join("lib") -} - -fn include_directory(root: &Path) -> PathBuf { - root.join("prebuilt_liboqs") - .join(target_subdir()) - .join("include") -} - -fn ensure_symbol(lib: &Path, symbol: &str) { - let mut cmd = Command::new("nm"); - let is_shared = lib - .file_name() - .and_then(|name| name.to_str()) - .map(|name| name.contains(".so")) - .unwrap_or(false); - if is_shared { - cmd.arg("-D"); - } - let output = cmd - .arg(lib) - .output() - .unwrap_or_else(|e| panic!("failed to invoke nm on {}: {e}", lib.display())); - if !output.status.success() { - panic!("nm reported an error while inspecting {}", lib.display()); - } - let stdout = String::from_utf8_lossy(&output.stdout); - if !stdout.contains(symbol) { - panic!("symbol {symbol} not found in {}", lib.display()); - } -} - -enum LibraryKind { - Static, - Dynamic, -} - -const SHARED_CANDIDATES: &[&str] = &[ - "liboqs.so", - "liboqs.so.0.15.0-rc1", - "liboqs.so.9", - "liboqs.so.0.14.1-dev", - "liboqs.so.8", -]; - -fn select_library(lib_dir: &Path) -> (PathBuf, LibraryKind) { - let static_lib = lib_dir.join("liboqs.a"); - if static_lib.exists() { - return (static_lib, LibraryKind::Static); - } - for candidate in SHARED_CANDIDATES.iter().map(|name| lib_dir.join(name)) { - if let Ok(meta) = candidate.metadata() { - if meta.len() > 1024 { - return (candidate, LibraryKind::Dynamic); - } - } - } - panic!( - "neither liboqs.a nor a usable liboqs.so variant found under {}", - lib_dir.display() - ); -} - -fn main() { - let root = workspace_root(); - let lib_dir = lib_directory(&root); - if !lib_dir.exists() { - panic!("liboqs lib directory missing: {}", lib_dir.display()); - } - let (link_target, kind) = select_library(&lib_dir); - match kind { - LibraryKind::Static => { - println!("cargo:rustc-link-search=native={}", lib_dir.display()); - println!("cargo:rustc-link-lib=static=oqs"); - } - LibraryKind::Dynamic => { - let out_dir = PathBuf::from(env::var("OUT_DIR").expect("OUT_DIR")); - for name in SHARED_CANDIDATES { - let source = lib_dir.join(name); - if let Ok(meta) = source.metadata() { - if meta.len() > 0 { - let target_path = out_dir.join(name); - fs::copy(&source, &target_path) - .unwrap_or_else(|e| panic!("failed to stage {name}: {e}")); - } - } - } - println!("cargo:rustc-link-search=native={}", out_dir.display()); - println!("cargo:rustc-link-search=native={}", lib_dir.display()); - println!("cargo:rustc-link-lib=dylib=oqs"); - println!("cargo:rustc-link-arg=-Wl,-rpath,{}", out_dir.display()); - println!("cargo:rustc-link-arg=-Wl,-rpath,{}", lib_dir.display()); - } - } - - ensure_symbol(&link_target, "OQS_KEM_ml_kem_512_decaps"); - ensure_symbol(&link_target, "OQS_KEM_ml_kem_768_decaps"); - ensure_symbol(&link_target, "OQS_KEM_ml_kem_1024_decaps"); - - let include_dir = include_directory(&root); - let config = include_dir.join("oqs/oqsconfig.h"); - println!("cargo:rerun-if-changed={}", config.display()); - let contents = fs::read_to_string(&config) - .unwrap_or_else(|e| panic!("failed to read {}: {e}", config.display())); - if let Some(line) = contents.lines().find(|l| l.contains("OQS_VERSION_TEXT")) { - println!("cargo:warning=detected liboqs version {line}"); - } -} diff --git a/trussed-mlkem/src/lib.rs b/trussed-mlkem/src/lib.rs deleted file mode 100644 index fd7f549..0000000 --- a/trussed-mlkem/src/lib.rs +++ /dev/null @@ -1,283 +0,0 @@ -//! Safe wrapper around the liboqs ML-KEM implementations. -//! -//! The functions provided here expose the ML-KEM-512/768/1024 key -//! encapsulation mechanisms through a safe Rust API. All secret -//! material is zeroised on drop and the wrappers panic if the -//! underlying FFI call fails, ensuring that test failures surface -//! immediately during development builds. - -use zeroize::Zeroize; - -#[cfg(feature = "mlkem512")] -extern "C" { - fn OQS_KEM_ml_kem_512_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_KEM_ml_kem_512_encaps( - ciphertext: *mut u8, - shared_secret: *mut u8, - public_key: *const u8, - ) -> i32; - fn OQS_KEM_ml_kem_512_decaps( - shared_secret: *mut u8, - ciphertext: *const u8, - secret_key: *const u8, - ) -> i32; -} - -#[cfg(feature = "mlkem768")] -extern "C" { - fn OQS_KEM_ml_kem_768_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_KEM_ml_kem_768_encaps( - ciphertext: *mut u8, - shared_secret: *mut u8, - public_key: *const u8, - ) -> i32; - fn OQS_KEM_ml_kem_768_decaps( - shared_secret: *mut u8, - ciphertext: *const u8, - secret_key: *const u8, - ) -> i32; -} - -#[cfg(feature = "mlkem1024")] -extern "C" { - fn OQS_KEM_ml_kem_1024_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_KEM_ml_kem_1024_encaps( - ciphertext: *mut u8, - shared_secret: *mut u8, - public_key: *const u8, - ) -> i32; - fn OQS_KEM_ml_kem_1024_decaps( - shared_secret: *mut u8, - ciphertext: *const u8, - secret_key: *const u8, - ) -> i32; -} - -/// Available ML-KEM parameter sets. -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum ParamSet { - MLKEM512, - MLKEM768, - MLKEM1024, -} - -/// Public key wrapper. -#[derive(Debug, Clone)] -pub struct PublicKey(pub Vec); - -/// Secret key wrapper. The key material is securely wiped on drop. -#[derive(Debug)] -pub struct SecretKey(pub Vec); - -impl Drop for SecretKey { - fn drop(&mut self) { - self.0.zeroize(); - } -} - -/// Ciphertext wrapper produced by encapsulation. -#[derive(Debug, Clone)] -pub struct Ciphertext(pub Vec); - -/// Shared secret wrapper. The bytes are cleared on drop. -#[derive(Debug, Clone)] -pub struct SharedSecret(pub Vec); - -impl Drop for SharedSecret { - fn drop(&mut self) { - self.0.zeroize(); - } -} - -/// Return the lengths of the key and ciphertext buffers for a parameter set. -fn lengths(ps: ParamSet) -> (usize, usize, usize, usize) { - match ps { - ParamSet::MLKEM512 => (800, 1632, 768, 32), - ParamSet::MLKEM768 => (1184, 2400, 1088, 32), - ParamSet::MLKEM1024 => (1568, 3168, 1568, 32), - } -} - -/// Generate an ML-KEM keypair. -pub fn keypair(ps: ParamSet) -> (PublicKey, SecretKey) { - let (pk_len, sk_len, _ct_len, _ss_len) = lengths(ps); - let mut pk = vec![0u8; pk_len]; - let mut sk = vec![0u8; sk_len]; - unsafe { - let rc = match ps { - ParamSet::MLKEM512 => { - #[cfg(feature = "mlkem512")] - { - OQS_KEM_ml_kem_512_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mlkem512"))] - { - panic!("feature mlkem512 is not enabled"); - } - } - ParamSet::MLKEM768 => { - #[cfg(feature = "mlkem768")] - { - OQS_KEM_ml_kem_768_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mlkem768"))] - { - panic!("feature mlkem768 is not enabled"); - } - } - ParamSet::MLKEM1024 => { - #[cfg(feature = "mlkem1024")] - { - OQS_KEM_ml_kem_1024_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mlkem1024"))] - { - panic!("feature mlkem1024 is not enabled"); - } - } - }; - assert_eq!(rc, 0, "liboqs keypair call failed"); - } - (PublicKey(pk), SecretKey(sk)) -} - -/// Encapsulate a shared secret to the recipient's public key. -pub fn encapsulate(ps: ParamSet, pk: &PublicKey) -> (Ciphertext, SharedSecret) { - let (_pk_len, _sk_len, ct_len, ss_len) = lengths(ps); - let mut ct = vec![0u8; ct_len]; - let mut ss = vec![0u8; ss_len]; - unsafe { - let rc = match ps { - ParamSet::MLKEM512 => { - #[cfg(feature = "mlkem512")] - { - OQS_KEM_ml_kem_512_encaps(ct.as_mut_ptr(), ss.as_mut_ptr(), pk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem512"))] - { - panic!("feature mlkem512 is not enabled"); - } - } - ParamSet::MLKEM768 => { - #[cfg(feature = "mlkem768")] - { - OQS_KEM_ml_kem_768_encaps(ct.as_mut_ptr(), ss.as_mut_ptr(), pk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem768"))] - { - panic!("feature mlkem768 is not enabled"); - } - } - ParamSet::MLKEM1024 => { - #[cfg(feature = "mlkem1024")] - { - OQS_KEM_ml_kem_1024_encaps(ct.as_mut_ptr(), ss.as_mut_ptr(), pk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem1024"))] - { - panic!("feature mlkem1024 is not enabled"); - } - } - }; - assert_eq!(rc, 0, "liboqs encaps call failed"); - } - (Ciphertext(ct), SharedSecret(ss)) -} - -/// Errors that can occur during decapsulation. -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum DecapsulationError { - /// The ciphertext length does not match the parameter set requirements. - InvalidCiphertextLength, -} - -/// Decapsulate the shared secret from a ciphertext using the secret key. -pub fn decapsulate( - ps: ParamSet, - sk: &SecretKey, - ct: &Ciphertext, -) -> Result { - let (_pk_len, _sk_len, ct_len, ss_len) = lengths(ps); - if ct.0.len() != ct_len { - return Err(DecapsulationError::InvalidCiphertextLength); - } - let mut ss = vec![0u8; ss_len]; - unsafe { - let rc = match ps { - ParamSet::MLKEM512 => { - #[cfg(feature = "mlkem512")] - { - OQS_KEM_ml_kem_512_decaps(ss.as_mut_ptr(), ct.0.as_ptr(), sk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem512"))] - { - panic!("feature mlkem512 is not enabled"); - } - } - ParamSet::MLKEM768 => { - #[cfg(feature = "mlkem768")] - { - OQS_KEM_ml_kem_768_decaps(ss.as_mut_ptr(), ct.0.as_ptr(), sk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem768"))] - { - panic!("feature mlkem768 is not enabled"); - } - } - ParamSet::MLKEM1024 => { - #[cfg(feature = "mlkem1024")] - { - OQS_KEM_ml_kem_1024_decaps(ss.as_mut_ptr(), ct.0.as_ptr(), sk.0.as_ptr()) - } - #[cfg(not(feature = "mlkem1024"))] - { - panic!("feature mlkem1024 is not enabled"); - } - } - }; - assert_eq!(rc, 0, "liboqs decaps call failed"); - } - Ok(SharedSecret(ss)) -} - -#[cfg(test)] -mod tests { - use super::*; - - fn roundtrip(ps: ParamSet) { - let (pk, sk) = keypair(ps); - let (ct, ss_enc) = encapsulate(ps, &pk); - let ss_dec = decapsulate(ps, &sk, &ct).expect("ciphertext should be valid"); - assert_eq!(ss_enc.0, ss_dec.0, "shared secret mismatch for {:?}", ps); - - // Reject ciphertexts with invalid length. - let mut truncated = ct.0.clone(); - truncated.pop(); - assert!(matches!( - decapsulate(ps, &sk, &Ciphertext(truncated)), - Err(DecapsulationError::InvalidCiphertextLength) - )); - - let mut oversized = ct.0.clone(); - oversized.push(0); - assert!(matches!( - decapsulate(ps, &sk, &Ciphertext(oversized)), - Err(DecapsulationError::InvalidCiphertextLength) - )); - } - - #[test] - fn mlkem_512_roundtrip() { - roundtrip(ParamSet::MLKEM512); - } - - #[test] - fn mlkem_768_roundtrip() { - roundtrip(ParamSet::MLKEM768); - } - - #[test] - fn mlkem_1024_roundtrip() { - roundtrip(ParamSet::MLKEM1024); - } -} From 64ab65c4ab62da138cb92f1fb2f51cc47ea3702d Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:43:49 -0700 Subject: [PATCH 13/26] Replace liboqs FFI in trussed-mldsa with pure-Rust fips204 crate --- trussed-mldsa/Cargo.toml | 5 +- trussed-mldsa/build.rs | 131 ------------ trussed-mldsa/src/lib.rs | 435 ++++++++++++++++++++------------------- 3 files changed, 221 insertions(+), 350 deletions(-) delete mode 100644 trussed-mldsa/build.rs diff --git a/trussed-mldsa/Cargo.toml b/trussed-mldsa/Cargo.toml index 7ff06f0..5f069c3 100644 --- a/trussed-mldsa/Cargo.toml +++ b/trussed-mldsa/Cargo.toml @@ -3,11 +3,12 @@ name = "trussed-mldsa" version = "0.1.0" edition = "2021" -description = "Safe Rust wrapper around liboqs ML-DSA signatures" +description = "Safe Rust wrapper around pure-Rust ML-DSA (FIPS 204) signatures" authors = ["Feitian Technologies "] license = "Apache-2.0 OR MIT" [dependencies] +fips204 = "0.4" zeroize = { version = "1", features = ["zeroize_derive"] } [features] @@ -15,4 +16,4 @@ zeroize = { version = "1", features = ["zeroize_derive"] } default = ["mldsa44", "mldsa65", "mldsa87"] mldsa44 = [] mldsa65 = [] -mldsa87 = [] \ No newline at end of file +mldsa87 = [] diff --git a/trussed-mldsa/build.rs b/trussed-mldsa/build.rs deleted file mode 100644 index 0ca48e4..0000000 --- a/trussed-mldsa/build.rs +++ /dev/null @@ -1,131 +0,0 @@ -use std::env; -use std::fs; -use std::path::{Path, PathBuf}; -use std::process::Command; - -fn workspace_root() -> PathBuf { - PathBuf::from(env::var("CARGO_MANIFEST_DIR").expect("CARGO_MANIFEST_DIR")).join("..") -} - -fn target_subdir() -> String { - let arch = env::var("CARGO_CFG_TARGET_ARCH").expect("CARGO_CFG_TARGET_ARCH"); - let os = env::var("CARGO_CFG_TARGET_OS").expect("CARGO_CFG_TARGET_OS"); - match (os.as_str(), arch.as_str()) { - ("linux", "aarch64") => "linux-aarch64".to_string(), - ("linux", "x86_64") => "linux-x86_64".to_string(), - _ => panic!("unsupported prebuilt liboqs target {os}-{arch}"), - } -} - -fn lib_directory(root: &Path) -> PathBuf { - root.join("prebuilt_liboqs") - .join(target_subdir()) - .join("lib") -} - -fn include_directory(root: &Path) -> PathBuf { - root.join("prebuilt_liboqs") - .join(target_subdir()) - .join("include") -} - -fn ensure_symbol(lib: &Path, symbol: &str) { - let mut cmd = Command::new("nm"); - let is_shared = lib - .file_name() - .and_then(|name| name.to_str()) - .map(|name| name.contains(".so")) - .unwrap_or(false); - if is_shared { - cmd.arg("-D"); - } - let output = cmd - .arg(lib) - .output() - .unwrap_or_else(|e| panic!("failed to invoke nm on {}: {e}", lib.display())); - if !output.status.success() { - panic!("nm reported an error while inspecting {}", lib.display()); - } - let stdout = String::from_utf8_lossy(&output.stdout); - if !stdout.contains(symbol) { - panic!("symbol {symbol} not found in {}", lib.display()); - } -} - -enum LibraryKind { - Static, - Dynamic, -} - -const SHARED_CANDIDATES: &[&str] = &[ - "liboqs.so", - "liboqs.so.0.15.0-rc1", - "liboqs.so.9", - "liboqs.so.0.14.1-dev", - "liboqs.so.8", -]; - -fn select_library(lib_dir: &Path) -> (PathBuf, LibraryKind) { - let static_lib = lib_dir.join("liboqs.a"); - if static_lib.exists() { - return (static_lib, LibraryKind::Static); - } - for candidate in SHARED_CANDIDATES.iter().map(|name| lib_dir.join(name)) { - if let Ok(meta) = candidate.metadata() { - if meta.len() > 1024 { - return (candidate, LibraryKind::Dynamic); - } - } - } - panic!( - "neither liboqs.a nor a usable liboqs.so variant found under {}", - lib_dir.display() - ); -} - -fn main() { - let root = workspace_root(); - let lib_dir = lib_directory(&root); - if !lib_dir.exists() { - panic!("liboqs lib directory missing: {}", lib_dir.display()); - } - - let (link_target, kind) = select_library(&lib_dir); - match kind { - LibraryKind::Static => { - println!("cargo:rustc-link-search=native={}", lib_dir.display()); - println!("cargo:rustc-link-lib=static=oqs"); - } - LibraryKind::Dynamic => { - let out_dir = PathBuf::from(env::var("OUT_DIR").expect("OUT_DIR")); - for name in SHARED_CANDIDATES { - let source = lib_dir.join(name); - if let Ok(meta) = source.metadata() { - if meta.len() > 0 { - let target_path = out_dir.join(name); - fs::copy(&source, &target_path) - .unwrap_or_else(|e| panic!("failed to stage {name}: {e}")); - } - } - } - println!("cargo:rustc-link-search=native={}", out_dir.display()); - println!("cargo:rustc-link-search=native={}", lib_dir.display()); - println!("cargo:rustc-link-lib=dylib=oqs"); - println!("cargo:rustc-link-arg=-Wl,-rpath,{}", out_dir.display()); - println!("cargo:rustc-link-arg=-Wl,-rpath,{}", lib_dir.display()); - } - } - - ensure_symbol(&link_target, "OQS_SIG_ml_dsa_44_sign"); - ensure_symbol(&link_target, "OQS_SIG_ml_dsa_65_sign"); - ensure_symbol(&link_target, "OQS_SIG_ml_dsa_87_sign"); - - let include_dir = include_directory(&root); - let config = include_dir.join("oqs/oqsconfig.h"); - println!("cargo:rerun-if-changed={}", config.display()); - let contents = fs::read_to_string(&config) - .unwrap_or_else(|e| panic!("failed to read {}: {e}", config.display())); - if let Some(line) = contents.lines().find(|l| l.contains("OQS_VERSION_TEXT")) { - println!("cargo:warning=detected liboqs version {line}"); - } -} diff --git a/trussed-mldsa/src/lib.rs b/trussed-mldsa/src/lib.rs index 1d7f4df..df6e3f9 100644 --- a/trussed-mldsa/src/lib.rs +++ b/trussed-mldsa/src/lib.rs @@ -1,70 +1,15 @@ -//! Safe Rust wrapper around the liboqs ML-DSA signature implementations. +//! Safe Rust wrapper around pure-Rust ML-DSA implementations from `fips204`. //! -//! The wrapper exposes the ML-DSA-44/65/87 variants with minimal -//! overhead while ensuring that secret keys are wiped from memory on -//! drop. The FFI bindings panic when liboqs reports an error, which is -//! desirable for development builds where failing to produce a -//! signature should abort the test suite immediately. +//! This crate exposes a small, stable surface (`keypair`, `sign`, `verify`) +//! for the three ML-DSA parameter sets defined in FIPS 204 (ML-DSA-44/65/87). +//! The implementation is provided by the `fips204` crate, which has no C +//! dependencies, contains no `unsafe` code, and operates in constant-time. +//! +//! Secret keys are zeroized on drop. +use fips204::traits::{SerDes, Signer, Verifier}; use zeroize::Zeroize; -#[cfg(feature = "mldsa44")] -extern "C" { - fn OQS_SIG_ml_dsa_44_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_SIG_ml_dsa_44_sign( - signature: *mut u8, - signature_len: *mut usize, - message: *const u8, - message_len: usize, - secret_key: *const u8, - ) -> i32; - fn OQS_SIG_ml_dsa_44_verify( - message: *const u8, - message_len: usize, - signature: *const u8, - signature_len: usize, - public_key: *const u8, - ) -> i32; -} - -#[cfg(feature = "mldsa65")] -extern "C" { - fn OQS_SIG_ml_dsa_65_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_SIG_ml_dsa_65_sign( - signature: *mut u8, - signature_len: *mut usize, - message: *const u8, - message_len: usize, - secret_key: *const u8, - ) -> i32; - fn OQS_SIG_ml_dsa_65_verify( - message: *const u8, - message_len: usize, - signature: *const u8, - signature_len: usize, - public_key: *const u8, - ) -> i32; -} - -#[cfg(feature = "mldsa87")] -extern "C" { - fn OQS_SIG_ml_dsa_87_keypair(public_key: *mut u8, secret_key: *mut u8) -> i32; - fn OQS_SIG_ml_dsa_87_sign( - signature: *mut u8, - signature_len: *mut usize, - message: *const u8, - message_len: usize, - secret_key: *const u8, - ) -> i32; - fn OQS_SIG_ml_dsa_87_verify( - message: *const u8, - message_len: usize, - signature: *const u8, - signature_len: usize, - public_key: *const u8, - ) -> i32; -} - /// ML-DSA parameter sets supported by this wrapper. #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum ParamSet { @@ -73,11 +18,12 @@ pub enum ParamSet { MLDSA87, } -/// Public key wrapper. +/// Public key wrapper. The inner bytes are the canonical FIPS 204 encoding. #[derive(Debug, Clone)] pub struct PublicKey(pub Vec); -/// Secret key wrapper. The key material is zeroised on drop. +/// Secret key wrapper. The inner bytes are the canonical FIPS 204 encoding; +/// they are zeroized on drop. #[derive(Debug)] pub struct SecretKey(pub Vec); @@ -87,174 +33,195 @@ impl Drop for SecretKey { } } -/// Return the buffer lengths required by the parameter set. -fn lengths(ps: ParamSet) -> (usize, usize, usize) { +/// Returned by FIPS 204 calls that fail at runtime (invalid lengths, +/// keygen failure, signing failure). +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +pub enum MlDsaError { + InvalidParameterSet, + InvalidKeyLength, + InvalidSignatureLength, + KeyGenFailed, + SigningFailed, +} + +/// Return the (public-key, secret-key, signature) byte lengths for a +/// parameter set. Useful for storage / buffer sizing. +pub fn lengths(ps: ParamSet) -> (usize, usize, usize) { match ps { - ParamSet::MLDSA44 => (1312, 2560, 2420), - ParamSet::MLDSA65 => (1952, 4032, 3309), - ParamSet::MLDSA87 => (2592, 4896, 4627), + #[cfg(feature = "mldsa44")] + ParamSet::MLDSA44 => ( + fips204::ml_dsa_44::PK_LEN, + fips204::ml_dsa_44::SK_LEN, + fips204::ml_dsa_44::SIG_LEN, + ), + #[cfg(feature = "mldsa65")] + ParamSet::MLDSA65 => ( + fips204::ml_dsa_65::PK_LEN, + fips204::ml_dsa_65::SK_LEN, + fips204::ml_dsa_65::SIG_LEN, + ), + #[cfg(feature = "mldsa87")] + ParamSet::MLDSA87 => ( + fips204::ml_dsa_87::PK_LEN, + fips204::ml_dsa_87::SK_LEN, + fips204::ml_dsa_87::SIG_LEN, + ), + #[cfg(not(feature = "mldsa44"))] + ParamSet::MLDSA44 => panic!("feature mldsa44 is not enabled"), + #[cfg(not(feature = "mldsa65"))] + ParamSet::MLDSA65 => panic!("feature mldsa65 is not enabled"), + #[cfg(not(feature = "mldsa87"))] + ParamSet::MLDSA87 => panic!("feature mldsa87 is not enabled"), } } /// Generate an ML-DSA keypair. +/// +/// Panics if the parameter-set feature is not enabled. Returns an error if +/// the underlying FIPS 204 keygen call fails (extremely rare; surfaces RNG +/// problems). +pub fn try_keypair(ps: ParamSet) -> Result<(PublicKey, SecretKey), MlDsaError> { + match ps { + #[cfg(feature = "mldsa44")] + ParamSet::MLDSA44 => { + let (pk, sk) = fips204::ml_dsa_44::try_keygen().map_err(|_| MlDsaError::KeyGenFailed)?; + Ok((PublicKey(pk.into_bytes().to_vec()), SecretKey(sk.into_bytes().to_vec()))) + } + #[cfg(feature = "mldsa65")] + ParamSet::MLDSA65 => { + let (pk, sk) = fips204::ml_dsa_65::try_keygen().map_err(|_| MlDsaError::KeyGenFailed)?; + Ok((PublicKey(pk.into_bytes().to_vec()), SecretKey(sk.into_bytes().to_vec()))) + } + #[cfg(feature = "mldsa87")] + ParamSet::MLDSA87 => { + let (pk, sk) = fips204::ml_dsa_87::try_keygen().map_err(|_| MlDsaError::KeyGenFailed)?; + Ok((PublicKey(pk.into_bytes().to_vec()), SecretKey(sk.into_bytes().to_vec()))) + } + #[cfg(not(feature = "mldsa44"))] + ParamSet::MLDSA44 => Err(MlDsaError::InvalidParameterSet), + #[cfg(not(feature = "mldsa65"))] + ParamSet::MLDSA65 => Err(MlDsaError::InvalidParameterSet), + #[cfg(not(feature = "mldsa87"))] + ParamSet::MLDSA87 => Err(MlDsaError::InvalidParameterSet), + } +} + +/// Generate an ML-DSA keypair, panicking on failure. Kept for API +/// compatibility with the previous liboqs-based wrapper. pub fn keypair(ps: ParamSet) -> (PublicKey, SecretKey) { - let (pk_len, sk_len, _sig_len) = lengths(ps); - let mut pk = vec![0u8; pk_len]; - let mut sk = vec![0u8; sk_len]; - unsafe { - let rc = match ps { - ParamSet::MLDSA44 => { - #[cfg(feature = "mldsa44")] - { - OQS_SIG_ml_dsa_44_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mldsa44"))] - { - panic!("feature mldsa44 is not enabled"); - } - } - ParamSet::MLDSA65 => { - #[cfg(feature = "mldsa65")] - { - OQS_SIG_ml_dsa_65_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mldsa65"))] - { - panic!("feature mldsa65 is not enabled"); - } - } - ParamSet::MLDSA87 => { - #[cfg(feature = "mldsa87")] - { - OQS_SIG_ml_dsa_87_keypair(pk.as_mut_ptr(), sk.as_mut_ptr()) - } - #[cfg(not(feature = "mldsa87"))] - { - panic!("feature mldsa87 is not enabled"); - } - } - }; - assert_eq!(rc, 0, "liboqs keypair call failed"); + try_keypair(ps).expect("ML-DSA keypair generation failed") +} + +/// Try to sign `message` with the supplied secret key. Returns the raw +/// FIPS 204 signature bytes. The context value is always empty per the +/// CTAP2 / WebAuthn profile that uses this wrapper. +pub fn try_sign(ps: ParamSet, sk: &SecretKey, message: &[u8]) -> Result, MlDsaError> { + let (_pk_len, sk_len, _sig_len) = lengths(ps); + if sk.0.len() != sk_len { + return Err(MlDsaError::InvalidKeyLength); + } + match ps { + #[cfg(feature = "mldsa44")] + ParamSet::MLDSA44 => { + let bytes: [u8; fips204::ml_dsa_44::SK_LEN] = + sk.0.as_slice().try_into().map_err(|_| MlDsaError::InvalidKeyLength)?; + let sk = fips204::ml_dsa_44::PrivateKey::try_from_bytes(bytes) + .map_err(|_| MlDsaError::InvalidKeyLength)?; + let sig = sk.try_sign(message, &[]).map_err(|_| MlDsaError::SigningFailed)?; + Ok(sig.to_vec()) + } + #[cfg(feature = "mldsa65")] + ParamSet::MLDSA65 => { + let bytes: [u8; fips204::ml_dsa_65::SK_LEN] = + sk.0.as_slice().try_into().map_err(|_| MlDsaError::InvalidKeyLength)?; + let sk = fips204::ml_dsa_65::PrivateKey::try_from_bytes(bytes) + .map_err(|_| MlDsaError::InvalidKeyLength)?; + let sig = sk.try_sign(message, &[]).map_err(|_| MlDsaError::SigningFailed)?; + Ok(sig.to_vec()) + } + #[cfg(feature = "mldsa87")] + ParamSet::MLDSA87 => { + let bytes: [u8; fips204::ml_dsa_87::SK_LEN] = + sk.0.as_slice().try_into().map_err(|_| MlDsaError::InvalidKeyLength)?; + let sk = fips204::ml_dsa_87::PrivateKey::try_from_bytes(bytes) + .map_err(|_| MlDsaError::InvalidKeyLength)?; + let sig = sk.try_sign(message, &[]).map_err(|_| MlDsaError::SigningFailed)?; + Ok(sig.to_vec()) + } + #[cfg(not(feature = "mldsa44"))] + ParamSet::MLDSA44 => Err(MlDsaError::InvalidParameterSet), + #[cfg(not(feature = "mldsa65"))] + ParamSet::MLDSA65 => Err(MlDsaError::InvalidParameterSet), + #[cfg(not(feature = "mldsa87"))] + ParamSet::MLDSA87 => Err(MlDsaError::InvalidParameterSet), } - (PublicKey(pk), SecretKey(sk)) } -/// Sign a message with the supplied secret key. +/// Sign a message, panicking on failure. Kept for API compatibility with +/// the previous liboqs-based wrapper. pub fn sign(ps: ParamSet, sk: &SecretKey, message: &[u8]) -> Vec { - let (_pk_len, _sk_len, sig_len) = lengths(ps); - let mut sig = vec![0u8; sig_len]; - let mut actual_len: usize = sig_len; - unsafe { - let rc = match ps { - ParamSet::MLDSA44 => { - #[cfg(feature = "mldsa44")] - { - OQS_SIG_ml_dsa_44_sign( - sig.as_mut_ptr(), - &mut actual_len, - message.as_ptr(), - message.len(), - sk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa44"))] - { - panic!("feature mldsa44 is not enabled"); - } - } - ParamSet::MLDSA65 => { - #[cfg(feature = "mldsa65")] - { - OQS_SIG_ml_dsa_65_sign( - sig.as_mut_ptr(), - &mut actual_len, - message.as_ptr(), - message.len(), - sk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa65"))] - { - panic!("feature mldsa65 is not enabled"); - } - } - ParamSet::MLDSA87 => { - #[cfg(feature = "mldsa87")] - { - OQS_SIG_ml_dsa_87_sign( - sig.as_mut_ptr(), - &mut actual_len, - message.as_ptr(), - message.len(), - sk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa87"))] - { - panic!("feature mldsa87 is not enabled"); - } - } - }; - assert_eq!(rc, 0, "liboqs sign call failed"); - } - sig.truncate(actual_len); - sig + try_sign(ps, sk, message).expect("ML-DSA signing failed") } -/// Verify a signature over the message using the provided public key. +/// Verify a signature. Returns `false` on length mismatch or invalid +/// signature. pub fn verify(ps: ParamSet, pk: &PublicKey, message: &[u8], signature: &[u8]) -> bool { - unsafe { - let rc = match ps { - ParamSet::MLDSA44 => { - #[cfg(feature = "mldsa44")] - { - OQS_SIG_ml_dsa_44_verify( - message.as_ptr(), - message.len(), - signature.as_ptr(), - signature.len(), - pk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa44"))] - { - panic!("feature mldsa44 is not enabled"); - } + let (pk_len, _sk_len, sig_len) = lengths(ps); + if pk.0.len() != pk_len || signature.len() != sig_len { + return false; + } + match ps { + #[cfg(feature = "mldsa44")] + ParamSet::MLDSA44 => { + let pk_bytes: [u8; fips204::ml_dsa_44::PK_LEN] = match pk.0.as_slice().try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + let sig_bytes: [u8; fips204::ml_dsa_44::SIG_LEN] = match signature.try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + match fips204::ml_dsa_44::PublicKey::try_from_bytes(pk_bytes) { + Ok(pk) => pk.verify(message, &sig_bytes, &[]), + Err(_) => false, } - ParamSet::MLDSA65 => { - #[cfg(feature = "mldsa65")] - { - OQS_SIG_ml_dsa_65_verify( - message.as_ptr(), - message.len(), - signature.as_ptr(), - signature.len(), - pk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa65"))] - { - panic!("feature mldsa65 is not enabled"); - } + } + #[cfg(feature = "mldsa65")] + ParamSet::MLDSA65 => { + let pk_bytes: [u8; fips204::ml_dsa_65::PK_LEN] = match pk.0.as_slice().try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + let sig_bytes: [u8; fips204::ml_dsa_65::SIG_LEN] = match signature.try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + match fips204::ml_dsa_65::PublicKey::try_from_bytes(pk_bytes) { + Ok(pk) => pk.verify(message, &sig_bytes, &[]), + Err(_) => false, } - ParamSet::MLDSA87 => { - #[cfg(feature = "mldsa87")] - { - OQS_SIG_ml_dsa_87_verify( - message.as_ptr(), - message.len(), - signature.as_ptr(), - signature.len(), - pk.0.as_ptr(), - ) - } - #[cfg(not(feature = "mldsa87"))] - { - panic!("feature mldsa87 is not enabled"); - } + } + #[cfg(feature = "mldsa87")] + ParamSet::MLDSA87 => { + let pk_bytes: [u8; fips204::ml_dsa_87::PK_LEN] = match pk.0.as_slice().try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + let sig_bytes: [u8; fips204::ml_dsa_87::SIG_LEN] = match signature.try_into() { + Ok(bytes) => bytes, + Err(_) => return false, + }; + match fips204::ml_dsa_87::PublicKey::try_from_bytes(pk_bytes) { + Ok(pk) => pk.verify(message, &sig_bytes, &[]), + Err(_) => false, } - }; - rc == 0 + } + #[cfg(not(feature = "mldsa44"))] + ParamSet::MLDSA44 => false, + #[cfg(not(feature = "mldsa65"))] + ParamSet::MLDSA65 => false, + #[cfg(not(feature = "mldsa87"))] + ParamSet::MLDSA87 => false, } } @@ -264,6 +231,10 @@ mod tests { fn roundtrip(ps: ParamSet) { let (pk, sk) = keypair(ps); + let (pk_len, sk_len, _sig_len) = lengths(ps); + assert_eq!(pk.0.len(), pk_len, "public key length"); + assert_eq!(sk.0.len(), sk_len, "secret key length"); + let message = b"post-quantum authentication"; let signature = sign(ps, &sk, message); assert!( @@ -271,6 +242,22 @@ mod tests { "verification failed for {:?}", ps ); + + let mut tampered = signature.clone(); + tampered[0] ^= 0x01; + assert!( + !verify(ps, &pk, message, &tampered), + "tampered signature must not verify ({:?})", + ps + ); + + let mut other_message = message.to_vec(); + other_message.push(0xFF); + assert!( + !verify(ps, &pk, &other_message, &signature), + "signature must not verify for different message ({:?})", + ps + ); } #[test] @@ -287,4 +274,18 @@ mod tests { fn mldsa87_roundtrip() { roundtrip(ParamSet::MLDSA87); } + + #[test] + fn rejects_wrong_length_signature() { + let (pk, _sk) = keypair(ParamSet::MLDSA44); + assert!(!verify(ParamSet::MLDSA44, &pk, b"hello", &[0u8; 16])); + } + + #[test] + fn rejects_wrong_length_pubkey() { + let (_pk, sk) = keypair(ParamSet::MLDSA44); + let sig = sign(ParamSet::MLDSA44, &sk, b"hello"); + let pk = PublicKey(vec![0u8; 32]); + assert!(!verify(ParamSet::MLDSA44, &pk, b"hello", &sig)); + } } From 94b1626f096f58500176fa043e3b948f1d3e683b Mon Sep 17 00:00:00 2001 From: Rain Zhang Date: Sun, 24 May 2026 18:44:34 -0700 Subject: [PATCH 14/26] Delete prebuilt_liboqs blobs and update README --- README.md | 35 +- .../linux-aarch64/include/oqs/aes.h | 202 -- .../linux-aarch64/include/oqs/aes_ops.h | 124 - .../linux-aarch64/include/oqs/common.h | 286 --- .../linux-aarch64/include/oqs/kem.h | 374 --- .../linux-aarch64/include/oqs/kem_bike.h | 54 - .../include/oqs/kem_classic_mceliece.h | 159 -- .../linux-aarch64/include/oqs/kem_frodokem.h | 98 - .../linux-aarch64/include/oqs/kem_kyber.h | 54 - .../linux-aarch64/include/oqs/kem_ml_kem.h | 54 - .../linux-aarch64/include/oqs/kem_ntru.h | 93 - .../linux-aarch64/include/oqs/kem_ntruprime.h | 24 - .../linux-aarch64/include/oqs/oqs.h | 26 - .../linux-aarch64/include/oqs/oqsconfig.h | 569 ----- .../linux-aarch64/include/oqs/rand.h | 66 - .../linux-aarch64/include/oqs/rand_nist.h | 47 - .../linux-aarch64/include/oqs/sha2.h | 246 -- .../linux-aarch64/include/oqs/sha2_ops.h | 176 -- .../linux-aarch64/include/oqs/sha3.h | 400 --- .../linux-aarch64/include/oqs/sha3_ops.h | 256 -- .../linux-aarch64/include/oqs/sha3x4.h | 252 -- .../linux-aarch64/include/oqs/sha3x4_ops.h | 182 -- .../linux-aarch64/include/oqs/sig.h | 770 ------ .../linux-aarch64/include/oqs/sig_cross.h | 242 -- .../linux-aarch64/include/oqs/sig_falcon.h | 60 - .../linux-aarch64/include/oqs/sig_mayo.h | 60 - .../linux-aarch64/include/oqs/sig_ml_dsa.h | 47 - .../linux-aarch64/include/oqs/sig_slh_dsa.h | 2192 ----------------- .../linux-aarch64/include/oqs/sig_snova.h | 164 -- .../linux-aarch64/include/oqs/sig_sphincs.h | 164 -- .../linux-aarch64/include/oqs/sig_stfl.h | 740 ------ .../linux-aarch64/include/oqs/sig_uov.h | 164 -- prebuilt_liboqs/linux-aarch64/lib/liboqs.so | 1 - .../linux-aarch64/lib/liboqs.so.0.15.0-rc1 | Bin 7032032 -> 0 bytes prebuilt_liboqs/linux-aarch64/lib/liboqs.so.9 | 1 - .../linux-x86_64/include/oqs/aes.h | 202 -- .../linux-x86_64/include/oqs/aes_ops.h | 124 - .../linux-x86_64/include/oqs/common.h | 286 --- .../linux-x86_64/include/oqs/kem.h | 374 --- .../linux-x86_64/include/oqs/kem_bike.h | 54 - .../include/oqs/kem_classic_mceliece.h | 159 -- .../linux-x86_64/include/oqs/kem_frodokem.h | 98 - .../linux-x86_64/include/oqs/kem_kyber.h | 54 - .../linux-x86_64/include/oqs/kem_ml_kem.h | 54 - .../linux-x86_64/include/oqs/kem_ntru.h | 93 - .../linux-x86_64/include/oqs/kem_ntruprime.h | 24 - .../linux-x86_64/include/oqs/oqs.h | 26 - .../linux-x86_64/include/oqs/oqsconfig.h | 569 ----- .../linux-x86_64/include/oqs/rand.h | 66 - .../linux-x86_64/include/oqs/rand_nist.h | 47 - .../linux-x86_64/include/oqs/sha2.h | 246 -- .../linux-x86_64/include/oqs/sha2_ops.h | 176 -- .../linux-x86_64/include/oqs/sha3.h | 400 --- .../linux-x86_64/include/oqs/sha3_ops.h | 256 -- .../linux-x86_64/include/oqs/sha3x4.h | 252 -- .../linux-x86_64/include/oqs/sha3x4_ops.h | 182 -- .../linux-x86_64/include/oqs/sig.h | 770 ------ .../linux-x86_64/include/oqs/sig_cross.h | 242 -- .../linux-x86_64/include/oqs/sig_falcon.h | 60 - .../linux-x86_64/include/oqs/sig_mayo.h | 60 - .../linux-x86_64/include/oqs/sig_ml_dsa.h | 47 - .../linux-x86_64/include/oqs/sig_slh_dsa.h | 2192 ----------------- .../linux-x86_64/include/oqs/sig_snova.h | 164 -- .../linux-x86_64/include/oqs/sig_sphincs.h | 164 -- .../linux-x86_64/include/oqs/sig_stfl.h | 740 ------ .../linux-x86_64/include/oqs/sig_uov.h | 164 -- prebuilt_liboqs/linux-x86_64/lib/liboqs.so | Bin 6779456 -> 0 bytes .../linux-x86_64/lib/liboqs.so.0.15.0-rc1 | Bin 6779456 -> 0 bytes prebuilt_liboqs/linux-x86_64/lib/liboqs.so.9 | Bin 6779456 -> 0 bytes 69 files changed, 16 insertions(+), 16711 deletions(-) delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/aes.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/aes_ops.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/common.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_bike.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_classic_mceliece.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_frodokem.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_kyber.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_ml_kem.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntru.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntruprime.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/oqs.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/oqsconfig.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/rand.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/rand_nist.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha2.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha2_ops.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha3.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha3_ops.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4_ops.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_cross.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_falcon.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_mayo.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_ml_dsa.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_slh_dsa.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_snova.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_sphincs.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_stfl.h delete mode 100644 prebuilt_liboqs/linux-aarch64/include/oqs/sig_uov.h delete mode 120000 prebuilt_liboqs/linux-aarch64/lib/liboqs.so delete mode 100755 prebuilt_liboqs/linux-aarch64/lib/liboqs.so.0.15.0-rc1 delete mode 120000 prebuilt_liboqs/linux-aarch64/lib/liboqs.so.9 delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/aes.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/aes_ops.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/common.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_bike.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_classic_mceliece.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_frodokem.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_kyber.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_ml_kem.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_ntru.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/kem_ntruprime.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/oqs.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/oqsconfig.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/rand.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/rand_nist.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha2.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha2_ops.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha3.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha3_ops.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha3x4.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sha3x4_ops.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_cross.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_falcon.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_mayo.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_ml_dsa.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_slh_dsa.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_snova.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_sphincs.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_stfl.h delete mode 100644 prebuilt_liboqs/linux-x86_64/include/oqs/sig_uov.h delete mode 100755 prebuilt_liboqs/linux-x86_64/lib/liboqs.so delete mode 100755 prebuilt_liboqs/linux-x86_64/lib/liboqs.so.0.15.0-rc1 delete mode 100755 prebuilt_liboqs/linux-x86_64/lib/liboqs.so.9 diff --git a/README.md b/README.md index 4a6ea98..dad36f0 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,21 @@ # FIDO Software Authenticator -A software-based FIDO2/WebAuthn authenticator written in Rust. It utilizes the Trussed framework and features **Post-Quantum Cryptography** (ML-DSA) via the `liboqs` library. +A software-based FIDO2/WebAuthn authenticator written in Rust. It uses the +Trussed framework and provides **Post-Quantum Cryptography** signatures +(ML-DSA-44/65/87 per FIPS 204) alongside classical ES256, with no C +dependencies — the cryptography is entirely pure Rust via the +[`fips204`](https://docs.rs/fips204) crate. -The application runs on a Linux host and provisions a virtual HID token through `/dev/uhid`. This allows web browsers and tools like `libfido2` to interact with it seamlessly, exactly as if it were a physical hardware security key—no custom kernel modules required. +The application runs on a Linux host and provisions a virtual HID token +through `/dev/uhid`. Web browsers and tools like `libfido2` interact with it +as if it were a physical hardware security key — no custom kernel modules +required. ### Key Features -* **Algorithms:** Post-quantum ML-DSA (44/65/87) and standard ES256. +* **Algorithms:** Post-quantum ML-DSA-44/65/87 (FIPS 204) and standard ES256. * **Virtual Hardware:** Acts as a standard USB HID (CTAPHID) device via `/dev/uhid`. * **Smartcard Support:** Optional CCID interface. -* **Legacy Support:** Includes a USB/IP backend for legacy testing environments. +* **Pure-Rust crypto:** No C toolchain or prebuilt `liboqs` binaries required. --- @@ -36,22 +43,13 @@ sudo apt install -y libfido2-1 libfido2-dev libfido2-tools usbip python3-pip ### 1. Build the Project From the repository root, build the project using Cargo: ```bash -cargo build --release +cargo build --release ``` -### 2. Link the Cryptography Library -The project uses prebuilt ML-DSA binaries located in the `prebuilt_liboqs/` folder. You need to add the correct library path for your architecture to your environment variables so the runner can find it. +The cryptography is pure Rust — there is no `liboqs` build step and nothing +to add to `LD_LIBRARY_PATH`. -**For x86_64 (Standard PC/Server):** -```bash -export LD_LIBRARY_PATH="$PWD/prebuilt_liboqs/linux-x86_64/lib:${LD_LIBRARY_PATH:-}" -``` -**For aarch64 (ARM/Raspberry Pi):** -```bash -export LD_LIBRARY_PATH="$PWD/prebuilt_liboqs/linux-aarch64/lib:${LD_LIBRARY_PATH:-}" -``` - -### 3. Setup Virtual HID Permissions +### 2. Setup Virtual HID Permissions To allow the authenticator to create a virtual USB device, you need to load the `uhid` kernel module and grant your user the correct permissions. ```bash @@ -69,7 +67,7 @@ sudo chmod 660 /dev/uhid newgrp plugdev ``` -### 4. Run the Authenticator +### 3. Run the Authenticator Launch the virtual authenticator in the foreground. It will automatically handle WebAuthn requests from your browser! ```bash @@ -85,6 +83,5 @@ When running the `pc-hid-runner`, you can append several useful flags to customi * `--manual-user-presence` : Require manual approval when a site requests user presence (default is auto-approve). * `--state-dir ` : Change where the authenticator saves its internal state and credentials (defaults to `$XDG_DATA_HOME/feitian-mldsa-authenticator`). * `--suppress-attestation` : Hide attestation certificates for privacy testing. -* `--pqc-policy ` : Force a specific Post-Quantum Cryptography policy. *Note: Omit the `--foreground` flag to run the authenticator quietly as a background daemon. You can manage a daemonized instance using the `status` and `stop` subcommands.* diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/aes.h b/prebuilt_liboqs/linux-aarch64/include/oqs/aes.h deleted file mode 100644 index d0d6d63..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/aes.h +++ /dev/null @@ -1,202 +0,0 @@ -/** - * \file aes.h - * \brief Header defining the API for OQS AES; not part of the public OQS API - * - * Note this is not part of the OQS public API: implementations within liboqs can use these - * functions, but external consumers of liboqs should not use these functions. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_AES_H -#define OQS_AES_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** - * Function to fill a key schedule given an initial key for use in ECB mode. - * - * @param key Initial Key. - * @param ctx Abstract data structure for a key schedule. - */ -void OQS_AES128_ECB_load_schedule(const uint8_t *key, void **ctx); - -/** - * Function to initialize a context and fill a key schedule given an initial key for - * use in CTR mode. - * - * @param key Initial Key. - * @param ctx Abstract data structure for a key schedule. - */ -void OQS_AES128_CTR_inc_init(const uint8_t *key, void **ctx); - -/** - * Function to fill a context given an IV for use in CTR mode. - * - * Handles a 12- or 16-byte IV. If a 12-byte IV is given, then 4 counter - * bytes are initialized to all zeros. - * - * @param iv Initialization Vector. - * @param iv_len Length of the initialization vector. - * @param ctx Abstract data structure for IV. - */ -void OQS_AES128_CTR_inc_iv(const uint8_t *iv, size_t iv_len, void *ctx); - -/** - * Function to fill a context given an IV for use in CTR mode. - * Handles an 8-byte IV passed as a 64-bit unsigned integer, - * counter bytes are initialized to zero. - * - * @param iv Initialization Vector as 64-bit integer. - * @param ctx Abstract data structure for IV. - */ -void OQS_AES128_CTR_inc_ivu64(uint64_t iv, void *ctx); - -/** - * Function to free a key schedule. - * - * @param ctx Context generated with OQS_AES128_ECB_load_schedule(). - */ -void OQS_AES128_free_schedule(void *ctx); - -/** - * Function to encrypt blocks of plaintext using ECB mode. - * A schedule based on the key is generated and used internally. - * - * @param plaintext Plaintext to be encrypted. - * @param plaintext_len Length on the plaintext in bytes. Must be a multiple of 16. - * @param key Key to be used for encryption. - * @param ciphertext Pointer to a block of memory which >= in size to the plaintext block. The result will be written here. - * @warning plaintext_len must be a multiple of 16. - */ -void OQS_AES128_ECB_enc(const uint8_t *plaintext, const size_t plaintext_len, const uint8_t *key, uint8_t *ciphertext); - -/** - * Same as OQS_AES128_ECB_enc() except a schedule generated by - * OQS_AES128_ECB_load_schedule() is passed rather then a key. This is faster - * if the same schedule is used for multiple encryptions since it does - * not have to be regenerated from the key. - */ -void OQS_AES128_ECB_enc_sch(const uint8_t *plaintext, const size_t plaintext_len, const void *schedule, uint8_t *ciphertext); - -/** - * AES counter mode keystream generator. A context generated by - * OQS_AES128_CTR_inc_init() is passed rather then a key. - * - * Handles a 12- or 16-byte IV. If a 12-byte IV is given, then 4 counter - * bytes are initialized to all zeros. - * - * @param iv 12- or 16-byte initialization vector. - * @param iv_len Lengh of IV in bytes. - * @param ctx Abstract data structure for a key schedule. - * @param out Pointer to a block of memory which is big enough to contain out_len bytes; the result will be written here. - * @param out_len Length of output bytes to generate. - */ -void OQS_AES128_CTR_inc_stream_iv(const uint8_t *iv, size_t iv_len, const void *ctx, uint8_t *out, size_t out_len); - -/** - * Function to fill a key schedule given an initial key for use in ECB mode encryption. - * - * @param key Initial Key. - * @param ctx Abstract data structure for a key schedule. - */ -void OQS_AES256_ECB_load_schedule(const uint8_t *key, void **ctx); - -/** - * Function to initialize a context and fill a key schedule given an initial key for - * use in CTR mode. - * - * @param key Initial Key. - * @param ctx Abstract data structure for a key schedule. - */ -void OQS_AES256_CTR_inc_init(const uint8_t *key, void **ctx); - -/** - * Function to fill a context given an IV for use in CTR mode. - * - * Handles a 12- or 16-byte IV. If a 12-byte IV is given, then 4 counter - * bytes are initialized to all zeros. - * - * @param iv Initialization Vector. - * @param iv_len Length of the initialization vector. - * @param ctx Abstract data structure for IV. - */ -void OQS_AES256_CTR_inc_iv(const uint8_t *iv, size_t iv_len, void *ctx); - -/** - * Function to fill a context given an IV for use in CTR mode. - * Handles an 8-byte IV passed as a 64-bit unsigned integer, - * counter bytes are initialized to zero. - * - * @param iv Initialization Vector as 64-bit integer. - * @param ctx Abstract data structure for IV. - */ -void OQS_AES256_CTR_inc_ivu64(uint64_t iv, void *ctx); - -/** - * Function to free a key schedule. - * - * @param ctx Schedule generated with OQS_AES256_ECB_load_schedule - * or OQS_AES256_CTR_inc_init. - */ -void OQS_AES256_free_schedule(void *ctx); - -/** - * Function to encrypt blocks of plaintext using ECB mode. - * A schedule based on the key is generated and used internally. - * - * @param plaintext Plaintext to be encrypted. - * @param plaintext_len Length on the plaintext in bytes. Must be a multiple of 16. - * @param key Key to be used for encryption. - * @param ciphertext Pointer to a block of memory which >= in size to the plaintext block. The result will be written here. - * @warning plaintext_len must be a multiple of 16. - */ -void OQS_AES256_ECB_enc(const uint8_t *plaintext, const size_t plaintext_len, const uint8_t *key, uint8_t *ciphertext); - -/** - * Same as OQS_AES256_ECB_enc() except a schedule generated by - * OQS_AES256_ECB_load_schedule() is passed rather then a key. This is faster - * if the same schedule is used for multiple encryptions since it does - * not have to be regenerated from the key. - */ -void OQS_AES256_ECB_enc_sch(const uint8_t *plaintext, const size_t plaintext_len, const void *schedule, uint8_t *ciphertext); - -/** - * AES counter mode keystream generator. A context generated by - * OQS_AES256_CTR_inc_init() is passed rather then a key. - * - * Handles a 12- or 16-byte IV. If a 12-byte IV is given, then 4 counter - * bytes are initialized to all zeros. - * - * @param iv 12- or 16-byte initialization vector. - * @param iv_len Lengh of IV in bytes. - * @param ctx Abstract data structure for a key schedule. - * @param out Pointer to a block of memory which is big enough to contain out_len bytes; the result will be written here. - * @param out_len Length of output bytes to generate. - */ -void OQS_AES256_CTR_inc_stream_iv(const uint8_t *iv, size_t iv_len, const void *ctx, uint8_t *out, size_t out_len); - -/** - * AES counter mode keystream generator. A context generated by - * OQS_AES256_CTR_inc_init() and OQS_AES256_CTR_inc_iv() is passed - * rather than a key and an IV. The counter is internally updated, which allows - * the function to be called multiple times. - * - * @param ctx Abstract data structure for key schedule and IV. - * @param out Pointer to a block of memory which is big enough to contain out_blks*16 bytes; the result will be written here. - * @param out_blks Length of output blocks to generate, where one block is 16 bytes. - */ -void OQS_AES256_CTR_inc_stream_blks(void *ctx, uint8_t *out, size_t out_blks); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_AES_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/aes_ops.h b/prebuilt_liboqs/linux-aarch64/include/oqs/aes_ops.h deleted file mode 100644 index a64c47d..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/aes_ops.h +++ /dev/null @@ -1,124 +0,0 @@ -/** - * \file aes_ops.h - * \brief Header defining the callback API for OQS AES - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_AES_OPS_H -#define OQS_AES_OPS_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Data structure implemented by cryptographic provider for AES operations. - */ -struct OQS_AES_callbacks { - /** - * Implementation of function OQS_AES128_ECB_load_schedule. - */ - void (*AES128_ECB_load_schedule)(const uint8_t *key, void **ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_init. - */ - void (*AES128_CTR_inc_init)(const uint8_t *key, void **ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_iv. - */ - void (*AES128_CTR_inc_iv)(const uint8_t *iv, size_t iv_len, void *ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_ivu64. - */ - void (*AES128_CTR_inc_ivu64)(uint64_t iv, void *ctx); - - /** - * Implementation of function OQS_AES128_free_schedule. - */ - void (*AES128_free_schedule)(void *ctx); - - /** - * Implementation of function OQS_AES128_ECB_enc. - */ - void (*AES128_ECB_enc)(const uint8_t *plaintext, const size_t plaintext_len, const uint8_t *key, uint8_t *ciphertext); - - /** - * Implementation of function OQS_AES128_ECB_enc_sch. - */ - void (*AES128_ECB_enc_sch)(const uint8_t *plaintext, const size_t plaintext_len, const void *schedule, uint8_t *ciphertext); - - /** - * Implementation of function OQS_AES128_CTR_inc_stream_iv. - */ - void (*AES128_CTR_inc_stream_iv)(const uint8_t *iv, size_t iv_len, const void *ctx, uint8_t *out, size_t out_len); - - /** - * Implementation of function OQS_AES256_ECB_load_schedule. - */ - void (*AES256_ECB_load_schedule)(const uint8_t *key, void **ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_init. - */ - void (*AES256_CTR_inc_init)(const uint8_t *key, void **ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_iv. - */ - void (*AES256_CTR_inc_iv)(const uint8_t *iv, size_t iv_len, void *ctx); - - /** - * Implementation of function OQS_AES256_CTR_inc_ivu64. - */ - void (*AES256_CTR_inc_ivu64)(uint64_t iv, void *ctx); - - /** - * Implementation of function OQS_AES256_free_schedule. - */ - void (*AES256_free_schedule)(void *ctx); - - /** - * Implementation of function OQS_AES256_ECB_enc. - */ - void (*AES256_ECB_enc)(const uint8_t *plaintext, const size_t plaintext_len, const uint8_t *key, uint8_t *ciphertext); - - /** - * Implementation of function OQS_AES256_ECB_enc_sch. - */ - void (*AES256_ECB_enc_sch)(const uint8_t *plaintext, const size_t plaintext_len, const void *schedule, uint8_t *ciphertext); - - /** - * Implementation of function OQS_AES256_CTR_inc_stream_iv. - */ - void (*AES256_CTR_inc_stream_iv)(const uint8_t *iv, size_t iv_len, const void *ctx, uint8_t *out, size_t out_len); - - /** - * Implementation of function OQS_AES256_CTR_inc_stream_blks. - */ - void (*AES256_CTR_inc_stream_blks)(void *ctx, uint8_t *out, size_t out_blks); -}; - -/** - * Set callback functions for AES operations. - * - * This function may be called before OQS_init to switch the - * cryptographic provider for AES operations. If it is not called, the - * default provider determined at build time will be used. - * - * @param[in] new_callbacks Callback functions defined in OQS_AES_callbacks - */ -OQS_API void OQS_AES_set_callbacks(struct OQS_AES_callbacks *new_callbacks); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_AES_OPS_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/common.h b/prebuilt_liboqs/linux-aarch64/include/oqs/common.h deleted file mode 100644 index ee01ff8..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/common.h +++ /dev/null @@ -1,286 +0,0 @@ -/** - * \file common.h - * \brief Utility functions for use in liboqs. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_COMMON_H -#define OQS_COMMON_H - -#include -#include -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** - * Macro for terminating the program if x is - * a null pointer. - */ -#define OQS_EXIT_IF_NULLPTR(x, loc) \ - do { \ - if ((x) == (void *)0) { \ - fprintf(stderr, "Unexpected NULL returned from %s API. Exiting.\n", \ - loc); \ - exit(EXIT_FAILURE); \ - } \ - } while (0) - -/** - * This macro is intended to replace those assert()s - * involving side-effecting statements in aes/aes_ossl.c. - * - * assert() becomes a no-op when -DNDEBUG is defined, - * which causes compilation failures when the statement - * being checked also results in side-effects. - * - * This is a temporary workaround until a better error - * handling strategy is developed. - */ -#ifdef OQS_USE_OPENSSL -#ifdef OPENSSL_NO_STDIO -#define OQS_OPENSSL_GUARD(x) \ - do { \ - if (1 != (x)) { \ - fprintf(stderr, "Error return value from OpenSSL API: %d. Exiting.\n", \ - x); \ - exit(EXIT_FAILURE); \ - } \ - } while (0) -#else // OPENSSL_NO_STDIO -#define OQS_OPENSSL_GUARD(x) \ - do { \ - if (1 != (x)) { \ - fprintf(stderr, "Error return value from OpenSSL API: %d. Exiting.\n", \ - x); \ - OSSL_FUNC(ERR_print_errors_fp)(stderr); \ - exit(EXIT_FAILURE); \ - } \ - } while (0) -#endif // OPENSSL_NO_STDIO -#endif // OQS_USE_OPENSSL - -/** - * Certain functions (such as OQS_randombytes_openssl in - * src/rand/rand.c) take in a size_t parameter, but can - * only handle values up to INT_MAX for those parameters. - * This macro is a temporary workaround for such functions. - */ -#define SIZE_T_TO_INT_OR_EXIT(size_t_var_name, int_var_name) \ - int int_var_name = 0; \ - if (size_t_var_name <= INT_MAX) { \ - int_var_name = (int)size_t_var_name; \ - } else { \ - exit(EXIT_FAILURE); \ - } - -/** - * Defines which functions should be exposed outside the LibOQS library - * - * By default the visibility of all the symbols is defined to "hidden" - * Only the library API should be marked as default - * - * Example: OQS_API return_value function_name(void); - */ -#if defined(_WIN32) -#define OQS_API __declspec(dllexport) -#else -#define OQS_API __attribute__((visibility("default"))) -#endif - -#if defined(OQS_SYS_UEFI) -#undef OQS_API -#define OQS_API -#endif - -/** - * Represents return values from functions. - * - * Callers should compare with the symbol rather than the individual value. - * For example, - * - * ret = OQS_KEM_encaps(...); - * if (ret == OQS_SUCCESS) { ... } - * - * rather than - * - * if (!OQS_KEM_encaps(...) { ... } - * - */ -typedef enum { - /** Used to indicate that some undefined error occurred. */ - OQS_ERROR = -1, - /** Used to indicate successful return from function. */ - OQS_SUCCESS = 0, - /** Used to indicate failures in external libraries (e.g., OpenSSL). */ - OQS_EXTERNAL_LIB_ERROR_OPENSSL = 50, -} OQS_STATUS; - -/** - * CPU runtime detection flags - */ -typedef enum { - OQS_CPU_EXT_INIT, /* Must be first */ - /* Start extension list */ - OQS_CPU_EXT_ADX, - OQS_CPU_EXT_AES, - OQS_CPU_EXT_AVX, - OQS_CPU_EXT_AVX2, - OQS_CPU_EXT_AVX512, - OQS_CPU_EXT_BMI1, - OQS_CPU_EXT_BMI2, - OQS_CPU_EXT_PCLMULQDQ, - OQS_CPU_EXT_VPCLMULQDQ, - OQS_CPU_EXT_POPCNT, - OQS_CPU_EXT_SSE, - OQS_CPU_EXT_SSE2, - OQS_CPU_EXT_SSE3, - OQS_CPU_EXT_ARM_AES, - OQS_CPU_EXT_ARM_SHA2, - OQS_CPU_EXT_ARM_SHA3, - OQS_CPU_EXT_ARM_NEON, - /* End extension list */ - OQS_CPU_EXT_COUNT, /* Must be last */ -} OQS_CPU_EXT; - -/** - * Checks if the CPU supports a given extension - * - * \return 1 if the given CPU extension is available, 0 otherwise. - */ -OQS_API int OQS_CPU_has_extension(OQS_CPU_EXT ext); - -/** - * This currently sets the values in the OQS_CPU_EXTENSIONS - * and prefetches the OpenSSL objects if necessary. - */ -OQS_API void OQS_init(void); - -/** - * This function stops OpenSSL threads, which allows resources - * to be cleaned up in the correct order. - * @note When liboqs is used in a multithreaded application, - * each thread should call this function prior to stopping. - */ -OQS_API void OQS_thread_stop(void); - -/** - * This function frees prefetched OpenSSL objects - */ -OQS_API void OQS_destroy(void); - -/** - * Return library version string. - */ -OQS_API const char *OQS_version(void); - -/** - * @brief Memory allocation and deallocation functions. - * - * These functions provide a unified interface for memory operations, - * using OpenSSL functions when OQS_USE_OPENSSL is defined, and - * standard C library functions otherwise. - */ - -/** - * Allocates memory of a given size. - * @param size The size of the memory to be allocated in bytes. - * @return A pointer to the allocated memory. - */ -OQS_API void *OQS_MEM_malloc(size_t size); - -/** - * Allocates memory for an array of elements of a given size. - * @param num_elements The number of elements to allocate. - * @param element_size The size of each element in bytes. - * @return A pointer to the allocated memory. - */ -OQS_API void *OQS_MEM_calloc(size_t num_elements, size_t element_size); - -/** - * Duplicates a string. - * @param str The string to be duplicated. - * @return A pointer to the newly allocated string. - */ -OQS_API char *OQS_MEM_strdup(const char *str); - -/** - * Constant time comparison of byte sequences `a` and `b` of length `len`. - * Returns 0 if the byte sequences are equal or if `len`=0. - * Returns 1 otherwise. - * - * @param[in] a A byte sequence of length at least `len`. - * @param[in] b A byte sequence of length at least `len`. - * @param[in] len The number of bytes to compare. - */ -OQS_API int OQS_MEM_secure_bcmp(const void *a, const void *b, size_t len); - -/** - * Zeros out `len` bytes of memory starting at `ptr`. - * - * Designed to be protected against optimizing compilers which try to remove - * "unnecessary" operations. Should be used for all buffers containing secret - * data. - * - * @param[in] ptr The start of the memory to zero out. - * @param[in] len The number of bytes to zero out. - */ -OQS_API void OQS_MEM_cleanse(void *ptr, size_t len); - -/** - * Zeros out `len` bytes of memory starting at `ptr`, then frees `ptr`. - * - * Can be called with `ptr = NULL`, in which case no operation is performed. - * - * Designed to be protected against optimizing compilers which try to remove - * "unnecessary" operations. Should be used for all buffers containing secret - * data. - * - * @param[in] ptr The start of the memory to zero out and free. - * @param[in] len The number of bytes to zero out. - */ -OQS_API void OQS_MEM_secure_free(void *ptr, size_t len); - -/** - * Frees `ptr`. - * - * Can be called with `ptr = NULL`, in which case no operation is performed. - * - * Should only be used on non-secret data. - * - * @param[in] ptr The start of the memory to free. - */ -OQS_API void OQS_MEM_insecure_free(void *ptr); - -/** - * Internal implementation of C11 aligned_alloc to work around compiler quirks. - * - * Allocates size bytes of uninitialized memory with a base pointer that is - * a multiple of alignment. Alignment must be a power of two and a multiple - * of sizeof(void *). Size must be a multiple of alignment. - * @note The allocated memory should be freed with `OQS_MEM_aligned_free` when - * it is no longer needed. - */ -void *OQS_MEM_aligned_alloc(size_t alignment, size_t size); - -/** - * Free memory allocated with OQS_MEM_aligned_alloc. - */ -void OQS_MEM_aligned_free(void *ptr); - -/** - * Free and zeroize memory allocated with OQS_MEM_aligned_alloc. - */ -void OQS_MEM_aligned_secure_free(void *ptr, size_t len); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_COMMON_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem.h deleted file mode 100644 index fe52cd8..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem.h +++ /dev/null @@ -1,374 +0,0 @@ -/** - * \file kem.h - * \brief Key encapsulation mechanisms - * - * The file `tests/example_kem.c` contains two examples on using the OQS_KEM API. - * - * The first example uses the individual scheme's algorithms directly and uses - * no dynamic memory allocation -- all buffers are allocated on the stack, with - * sizes indicated using preprocessor macros. Since algorithms can be disabled at - * compile-time, the programmer should wrap the code in \#ifdefs. - * - * The second example uses an OQS_KEM object to use an algorithm specified at - * runtime. Therefore it uses dynamic memory allocation -- all buffers must be - * malloc'ed by the programmer, with sizes indicated using the corresponding length - * member of the OQS_KEM object in question. Since algorithms can be disabled at - * compile-time, the programmer should check that the OQS_KEM object is not `NULL`. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_KEM_H -#define OQS_KEM_H - -#include -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Algorithm identifier for BIKE-L1 KEM (Round-4). */ -#define OQS_KEM_alg_bike_l1 "BIKE-L1" -/** Algorithm identifier for BIKE-L3 KEM (Round-4). */ -#define OQS_KEM_alg_bike_l3 "BIKE-L3" -/** Algorithm identifier for BIKE-L5 KEM (Round-4). */ -#define OQS_KEM_alg_bike_l5 "BIKE-L5" -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALG_IDENTIFIER_START -/** Algorithm identifier for Classic-McEliece-348864 KEM. */ -#define OQS_KEM_alg_classic_mceliece_348864 "Classic-McEliece-348864" -/** Algorithm identifier for Classic-McEliece-348864f KEM. */ -#define OQS_KEM_alg_classic_mceliece_348864f "Classic-McEliece-348864f" -/** Algorithm identifier for Classic-McEliece-460896 KEM. */ -#define OQS_KEM_alg_classic_mceliece_460896 "Classic-McEliece-460896" -/** Algorithm identifier for Classic-McEliece-460896f KEM. */ -#define OQS_KEM_alg_classic_mceliece_460896f "Classic-McEliece-460896f" -/** Algorithm identifier for Classic-McEliece-6688128 KEM. */ -#define OQS_KEM_alg_classic_mceliece_6688128 "Classic-McEliece-6688128" -/** Algorithm identifier for Classic-McEliece-6688128f KEM. */ -#define OQS_KEM_alg_classic_mceliece_6688128f "Classic-McEliece-6688128f" -/** Algorithm identifier for Classic-McEliece-6960119 KEM. */ -#define OQS_KEM_alg_classic_mceliece_6960119 "Classic-McEliece-6960119" -/** Algorithm identifier for Classic-McEliece-6960119f KEM. */ -#define OQS_KEM_alg_classic_mceliece_6960119f "Classic-McEliece-6960119f" -/** Algorithm identifier for Classic-McEliece-8192128 KEM. */ -#define OQS_KEM_alg_classic_mceliece_8192128 "Classic-McEliece-8192128" -/** Algorithm identifier for Classic-McEliece-8192128f KEM. */ -#define OQS_KEM_alg_classic_mceliece_8192128f "Classic-McEliece-8192128f" -/** Algorithm identifier for HQC-128 KEM. */ -#define OQS_KEM_alg_hqc_128 "HQC-128" -/** Algorithm identifier for HQC-192 KEM. */ -#define OQS_KEM_alg_hqc_192 "HQC-192" -/** Algorithm identifier for HQC-256 KEM. */ -#define OQS_KEM_alg_hqc_256 "HQC-256" -/** Algorithm identifier for Kyber512 KEM. */ -#define OQS_KEM_alg_kyber_512 "Kyber512" -/** Algorithm identifier for Kyber768 KEM. */ -#define OQS_KEM_alg_kyber_768 "Kyber768" -/** Algorithm identifier for Kyber1024 KEM. */ -#define OQS_KEM_alg_kyber_1024 "Kyber1024" -/** Algorithm identifier for ML-KEM-512 KEM. */ -#define OQS_KEM_alg_ml_kem_512 "ML-KEM-512" -/** Algorithm identifier for ML-KEM-768 KEM. */ -#define OQS_KEM_alg_ml_kem_768 "ML-KEM-768" -/** Algorithm identifier for ML-KEM-1024 KEM. */ -#define OQS_KEM_alg_ml_kem_1024 "ML-KEM-1024" -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALG_IDENTIFIER_END -/** Algorithm identifier for NTRU-HPS-2048-509 KEM. */ -#define OQS_KEM_alg_ntru_hps2048509 "NTRU-HPS-2048-509" -/** Algorithm identifier for NTRU-HPS-2048-677 KEM. */ -#define OQS_KEM_alg_ntru_hps2048677 "NTRU-HPS-2048-677" -/** Algorithm identifier for NTRU-HPS-4096-821 KEM. */ -#define OQS_KEM_alg_ntru_hps4096821 "NTRU-HPS-4096-821" -/** Algorithm identifier for NTRU-HPS-4096-1229 KEM. */ -#define OQS_KEM_alg_ntru_hps40961229 "NTRU-HPS-4096-1229" -/** Algorithm identifier for NTRU-HRSS-701 KEM. */ -#define OQS_KEM_alg_ntru_hrss701 "NTRU-HRSS-701" -/** Algorithm identifier for NTRU-HRSS-1373 KEM. */ -#define OQS_KEM_alg_ntru_hrss1373 "NTRU-HRSS-1373" -/** Algorithm identifier for sntrup761 KEM. */ -#define OQS_KEM_alg_ntruprime_sntrup761 "sntrup761" -/** Algorithm identifier for FrodoKEM-640-AES KEM. */ -#define OQS_KEM_alg_frodokem_640_aes "FrodoKEM-640-AES" -/** Algorithm identifier for FrodoKEM-640-SHAKE KEM. */ -#define OQS_KEM_alg_frodokem_640_shake "FrodoKEM-640-SHAKE" -/** Algorithm identifier for FrodoKEM-976-AES KEM. */ -#define OQS_KEM_alg_frodokem_976_aes "FrodoKEM-976-AES" -/** Algorithm identifier for FrodoKEM-976-SHAKE KEM. */ -#define OQS_KEM_alg_frodokem_976_shake "FrodoKEM-976-SHAKE" -/** Algorithm identifier for FrodoKEM-1344-AES KEM. */ -#define OQS_KEM_alg_frodokem_1344_aes "FrodoKEM-1344-AES" -/** Algorithm identifier for FrodoKEM-1344-SHAKE KEM. */ -#define OQS_KEM_alg_frodokem_1344_shake "FrodoKEM-1344-SHAKE" -// EDIT-WHEN-ADDING-KEM -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALGS_LENGTH_START - -/** Number of algorithm identifiers above. */ -#define OQS_KEM_algs_length 35 -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALGS_LENGTH_END - -/** - * Returns identifiers for available key encapsulation mechanisms in liboqs. Used with OQS_KEM_new. - * - * Note that algorithm identifiers are present in this list even when the algorithm is disabled - * at compile time. - * - * @param[in] i Index of the algorithm identifier to return, 0 <= i < OQS_KEM_algs_length - * @return Algorithm identifier as a string, or NULL. - */ -OQS_API const char *OQS_KEM_alg_identifier(size_t i); - -/** - * Returns the number of key encapsulation mechanisms in liboqs. They can be enumerated with - * OQS_KEM_alg_identifier. - * - * Note that some mechanisms may be disabled at compile time. - * - * @return The number of key encapsulation mechanisms. - */ -OQS_API int OQS_KEM_alg_count(void); - -/** - * Indicates whether the specified algorithm was enabled at compile-time or not. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_KEM_algs`. - * @return 1 if enabled, 0 if disabled or not found - */ -OQS_API int OQS_KEM_alg_is_enabled(const char *method_name); - -/** - * Key encapsulation mechanism object - */ -typedef struct OQS_KEM { - - /** Printable string representing the name of the key encapsulation mechanism. */ - const char *method_name; - - /** - * Printable string representing the version of the cryptographic algorithm. - * - * Implementations with the same method_name and same alg_version will be interoperable. - * See README.md for information about algorithm compatibility. - */ - const char *alg_version; - - /** The NIST security level (1, 2, 3, 4, 5) claimed in this algorithm's original NIST submission. */ - uint8_t claimed_nist_level; - - /** Whether the KEM offers IND-CCA security (TRUE) or IND-CPA security (FALSE). */ - bool ind_cca; - - /** The length, in bytes, of public keys for this KEM. */ - size_t length_public_key; - /** The length, in bytes, of secret keys for this KEM. */ - size_t length_secret_key; - /** The length, in bytes, of ciphertexts for this KEM. */ - size_t length_ciphertext; - /** The length, in bytes, of shared secrets for this KEM. */ - size_t length_shared_secret; - /** The length, in bytes, of seeds for derandomized keypair generation for this KEM. */ - size_t length_keypair_seed; - /** The length, in bytes, of seeds for derandomized encaps generation for this KEM. */ - size_t length_encaps_seed; - - /** - * Derandomized keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @param[in] seed The input randomness represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*keypair_derand)(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); - - /** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*keypair)(uint8_t *public_key, uint8_t *secret_key); - - /** - * Derandomized encapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `ciphertext` and - * `shared_secret`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[out] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] public_key The public key represented as a byte string. - * @param[in] seed The input randomness represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*encaps_derand)(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); - - /** - * Encapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `ciphertext` and - * `shared_secret`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[out] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*encaps)(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); - - /** - * Decapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `shared_secret`, based - * on the `length_*` members in this object or the per-scheme compile-time macros - * `OQS_KEM_*_length_*`. - * - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*decaps)(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); - -} OQS_KEM; - -/** - * Constructs an OQS_KEM object for a particular algorithm. - * - * Callers should always check whether the return value is `NULL`, which indicates either than an - * invalid algorithm name was provided, or that the requested algorithm was disabled at compile-time. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_KEM_algs`. - * @return An OQS_KEM for the particular algorithm, or `NULL` if the algorithm has been disabled at compile-time. - */ -OQS_API OQS_KEM *OQS_KEM_new(const char *method_name); - -/** - * Derandomized keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[in] kem The OQS_KEM object representing the KEM. - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @param[in] seed The input randomness represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_KEM_keypair_derand(const OQS_KEM *kem, uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); - -/** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[in] kem The OQS_KEM object representing the KEM. - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_KEM_keypair(const OQS_KEM *kem, uint8_t *public_key, uint8_t *secret_key); - -/** - * Derandomized encapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `ciphertext` and - * `shared_secret`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[in] kem The OQS_KEM object representing the KEM. - * @param[out] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] public_key The public key represented as a byte string. - * @param[in] seed The input randomness represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_KEM_encaps_derand(const OQS_KEM *kem, uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); - -/** - * Encapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `ciphertext` and - * `shared_secret`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_KEM_*_length_*`. - * - * @param[in] kem The OQS_KEM object representing the KEM. - * @param[out] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_KEM_encaps(const OQS_KEM *kem, uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); - -/** - * Decapsulation algorithm. - * - * Caller is responsible for allocating sufficient memory for `shared_secret`, based - * on the `length_*` members in this object or the per-scheme compile-time macros - * `OQS_KEM_*_length_*`. - * - * @param[in] kem The OQS_KEM object representing the KEM. - * @param[out] shared_secret The shared secret represented as a byte string. - * @param[in] ciphertext The ciphertext (encapsulation) represented as a byte string. - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_KEM_decaps(const OQS_KEM *kem, uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); - -/** - * Frees an OQS_KEM object that was constructed by OQS_KEM_new. - * - * @param[in] kem The OQS_KEM object to free. - */ -OQS_API void OQS_KEM_free(OQS_KEM *kem); - -#ifdef OQS_ENABLE_KEM_BIKE -#include -#endif /* OQS_ENABLE_KEM_BIKE */ -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_INCLUDE_START -#ifdef OQS_ENABLE_KEM_CLASSIC_MCELIECE -#include -#endif /* OQS_ENABLE_KEM_CLASSIC_MCELIECE */ -#ifdef OQS_ENABLE_KEM_HQC -#include -#endif /* OQS_ENABLE_KEM_HQC */ -#ifdef OQS_ENABLE_KEM_KYBER -#include -#endif /* OQS_ENABLE_KEM_KYBER */ -#ifdef OQS_ENABLE_KEM_ML_KEM -#include -#endif /* OQS_ENABLE_KEM_ML_KEM */ -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_INCLUDE_END -#ifdef OQS_ENABLE_KEM_NTRU -#include -#endif /* OQS_ENABLE_KEM_NTRU */ -#ifdef OQS_ENABLE_KEM_NTRUPRIME -#include -#endif /* OQS_ENABLE_KEM_NTRUPRIME */ -#ifdef OQS_ENABLE_KEM_FRODOKEM -#include -#endif /* OQS_ENABLE_KEM_FRODOKEM */ -// EDIT-WHEN-ADDING-KEM - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_KEM_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_bike.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_bike.h deleted file mode 100644 index beac165..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_bike.h +++ /dev/null @@ -1,54 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_BIKE_H -#define OQS_KEM_BIKE_H - -#include - -// Round-4 KEMs -#ifdef OQS_ENABLE_KEM_bike_l1 -#define OQS_KEM_bike_l1_length_secret_key 5223 -#define OQS_KEM_bike_l1_length_public_key 1541 -#define OQS_KEM_bike_l1_length_ciphertext 1573 -#define OQS_KEM_bike_l1_length_shared_secret 32 -#define OQS_KEM_bike_l1_length_keypair_seed 0 -#define OQS_KEM_bike_l1_length_encaps_seed 0 -OQS_KEM *OQS_KEM_bike_l1_new(void); -OQS_API OQS_STATUS OQS_KEM_bike_l1_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_bike_l1_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l1_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_bike_l1_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l1_decaps(uint8_t *shared_secret, const unsigned char *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_bike_l3 -#define OQS_KEM_bike_l3_length_secret_key 10105 -#define OQS_KEM_bike_l3_length_public_key 3083 -#define OQS_KEM_bike_l3_length_ciphertext 3115 -#define OQS_KEM_bike_l3_length_shared_secret 32 -#define OQS_KEM_bike_l3_length_keypair_seed 0 -#define OQS_KEM_bike_l3_length_encaps_seed 0 -OQS_KEM *OQS_KEM_bike_l3_new(void); -OQS_API OQS_STATUS OQS_KEM_bike_l3_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_bike_l3_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l3_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_bike_l3_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l3_decaps(uint8_t *shared_secret, const unsigned char *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_bike_l5 -#define OQS_KEM_bike_l5_length_secret_key 16494 -#define OQS_KEM_bike_l5_length_public_key 5122 -#define OQS_KEM_bike_l5_length_ciphertext 5154 -#define OQS_KEM_bike_l5_length_shared_secret 32 -#define OQS_KEM_bike_l5_length_keypair_seed 0 -#define OQS_KEM_bike_l5_length_encaps_seed 0 -OQS_KEM *OQS_KEM_bike_l5_new(void); -OQS_API OQS_STATUS OQS_KEM_bike_l5_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_bike_l5_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l5_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_bike_l5_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_bike_l5_decaps(uint8_t *shared_secret, const unsigned char *ciphertext, const uint8_t *secret_key); -#endif - -#endif // OQS_KEM_BIKE_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_classic_mceliece.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_classic_mceliece.h deleted file mode 100644 index 13613e7..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_classic_mceliece.h +++ /dev/null @@ -1,159 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_CLASSIC_MCELIECE_H -#define OQS_KEM_CLASSIC_MCELIECE_H - -#include - -#if defined(OQS_ENABLE_KEM_classic_mceliece_348864) -#define OQS_KEM_classic_mceliece_348864_length_public_key 261120 -#define OQS_KEM_classic_mceliece_348864_length_secret_key 6492 -#define OQS_KEM_classic_mceliece_348864_length_ciphertext 96 -#define OQS_KEM_classic_mceliece_348864_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_348864_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_348864_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_348864_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_348864f) -#define OQS_KEM_classic_mceliece_348864f_length_public_key 261120 -#define OQS_KEM_classic_mceliece_348864f_length_secret_key 6492 -#define OQS_KEM_classic_mceliece_348864f_length_ciphertext 96 -#define OQS_KEM_classic_mceliece_348864f_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_348864f_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_348864f_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_348864f_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864f_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864f_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864f_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_348864f_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_460896) -#define OQS_KEM_classic_mceliece_460896_length_public_key 524160 -#define OQS_KEM_classic_mceliece_460896_length_secret_key 13608 -#define OQS_KEM_classic_mceliece_460896_length_ciphertext 156 -#define OQS_KEM_classic_mceliece_460896_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_460896_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_460896_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_460896_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_460896f) -#define OQS_KEM_classic_mceliece_460896f_length_public_key 524160 -#define OQS_KEM_classic_mceliece_460896f_length_secret_key 13608 -#define OQS_KEM_classic_mceliece_460896f_length_ciphertext 156 -#define OQS_KEM_classic_mceliece_460896f_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_460896f_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_460896f_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_460896f_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896f_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896f_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896f_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_460896f_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_6688128) -#define OQS_KEM_classic_mceliece_6688128_length_public_key 1044992 -#define OQS_KEM_classic_mceliece_6688128_length_secret_key 13932 -#define OQS_KEM_classic_mceliece_6688128_length_ciphertext 208 -#define OQS_KEM_classic_mceliece_6688128_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_6688128_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_6688128_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_6688128_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_6688128f) -#define OQS_KEM_classic_mceliece_6688128f_length_public_key 1044992 -#define OQS_KEM_classic_mceliece_6688128f_length_secret_key 13932 -#define OQS_KEM_classic_mceliece_6688128f_length_ciphertext 208 -#define OQS_KEM_classic_mceliece_6688128f_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_6688128f_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_6688128f_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_6688128f_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128f_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128f_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128f_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6688128f_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_6960119) -#define OQS_KEM_classic_mceliece_6960119_length_public_key 1047319 -#define OQS_KEM_classic_mceliece_6960119_length_secret_key 13948 -#define OQS_KEM_classic_mceliece_6960119_length_ciphertext 194 -#define OQS_KEM_classic_mceliece_6960119_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_6960119_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_6960119_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_6960119_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_6960119f) -#define OQS_KEM_classic_mceliece_6960119f_length_public_key 1047319 -#define OQS_KEM_classic_mceliece_6960119f_length_secret_key 13948 -#define OQS_KEM_classic_mceliece_6960119f_length_ciphertext 194 -#define OQS_KEM_classic_mceliece_6960119f_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_6960119f_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_6960119f_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_6960119f_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119f_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119f_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119f_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_6960119f_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_8192128) -#define OQS_KEM_classic_mceliece_8192128_length_public_key 1357824 -#define OQS_KEM_classic_mceliece_8192128_length_secret_key 14120 -#define OQS_KEM_classic_mceliece_8192128_length_ciphertext 208 -#define OQS_KEM_classic_mceliece_8192128_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_8192128_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_8192128_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_8192128_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_classic_mceliece_8192128f) -#define OQS_KEM_classic_mceliece_8192128f_length_public_key 1357824 -#define OQS_KEM_classic_mceliece_8192128f_length_secret_key 14120 -#define OQS_KEM_classic_mceliece_8192128f_length_ciphertext 208 -#define OQS_KEM_classic_mceliece_8192128f_length_shared_secret 32 -#define OQS_KEM_classic_mceliece_8192128f_length_keypair_seed 0 -#define OQS_KEM_classic_mceliece_8192128f_length_encaps_seed 0 -OQS_KEM *OQS_KEM_classic_mceliece_8192128f_new(void); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128f_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128f_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128f_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_classic_mceliece_8192128f_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif - diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_frodokem.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_frodokem.h deleted file mode 100644 index 56a38c9..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_frodokem.h +++ /dev/null @@ -1,98 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_FRODOKEM_H -#define OQS_KEM_FRODOKEM_H - -#include - -#ifdef OQS_ENABLE_KEM_frodokem_640_aes -#define OQS_KEM_frodokem_640_aes_length_public_key 9616 -#define OQS_KEM_frodokem_640_aes_length_secret_key 19888 -#define OQS_KEM_frodokem_640_aes_length_ciphertext 9720 -#define OQS_KEM_frodokem_640_aes_length_shared_secret 16 -#define OQS_KEM_frodokem_640_aes_length_keypair_seed 0 -#define OQS_KEM_frodokem_640_aes_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_640_aes_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_aes_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_aes_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_aes_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_aes_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_aes_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_frodokem_640_shake -#define OQS_KEM_frodokem_640_shake_length_public_key 9616 -#define OQS_KEM_frodokem_640_shake_length_secret_key 19888 -#define OQS_KEM_frodokem_640_shake_length_ciphertext 9720 -#define OQS_KEM_frodokem_640_shake_length_shared_secret 16 -#define OQS_KEM_frodokem_640_shake_length_keypair_seed 0 -#define OQS_KEM_frodokem_640_shake_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_640_shake_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_shake_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_shake_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_shake_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_shake_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_640_shake_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_frodokem_976_aes -#define OQS_KEM_frodokem_976_aes_length_public_key 15632 -#define OQS_KEM_frodokem_976_aes_length_secret_key 31296 -#define OQS_KEM_frodokem_976_aes_length_ciphertext 15744 -#define OQS_KEM_frodokem_976_aes_length_shared_secret 24 -#define OQS_KEM_frodokem_976_aes_length_keypair_seed 0 -#define OQS_KEM_frodokem_976_aes_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_976_aes_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_aes_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_aes_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_aes_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_aes_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_aes_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_frodokem_976_shake -#define OQS_KEM_frodokem_976_shake_length_public_key 15632 -#define OQS_KEM_frodokem_976_shake_length_secret_key 31296 -#define OQS_KEM_frodokem_976_shake_length_ciphertext 15744 -#define OQS_KEM_frodokem_976_shake_length_shared_secret 24 -#define OQS_KEM_frodokem_976_shake_length_keypair_seed 0 -#define OQS_KEM_frodokem_976_shake_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_976_shake_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_shake_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_shake_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_shake_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_shake_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_976_shake_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_frodokem_1344_aes -#define OQS_KEM_frodokem_1344_aes_length_public_key 21520 -#define OQS_KEM_frodokem_1344_aes_length_secret_key 43088 -#define OQS_KEM_frodokem_1344_aes_length_ciphertext 21632 -#define OQS_KEM_frodokem_1344_aes_length_shared_secret 32 -#define OQS_KEM_frodokem_1344_aes_length_keypair_seed 0 -#define OQS_KEM_frodokem_1344_aes_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_1344_aes_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_aes_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_aes_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_aes_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_aes_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_aes_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_frodokem_1344_shake -#define OQS_KEM_frodokem_1344_shake_length_public_key 21520 -#define OQS_KEM_frodokem_1344_shake_length_secret_key 43088 -#define OQS_KEM_frodokem_1344_shake_length_ciphertext 21632 -#define OQS_KEM_frodokem_1344_shake_length_shared_secret 32 -#define OQS_KEM_frodokem_1344_shake_length_keypair_seed 0 -#define OQS_KEM_frodokem_1344_shake_length_encaps_seed 0 -OQS_KEM *OQS_KEM_frodokem_1344_shake_new(void); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_shake_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_shake_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_shake_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_shake_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_frodokem_1344_shake_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif // OQS_KEM_FRODOKEM_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_kyber.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_kyber.h deleted file mode 100644 index 7915704..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_kyber.h +++ /dev/null @@ -1,54 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_KYBER_H -#define OQS_KEM_KYBER_H - -#include - -#if defined(OQS_ENABLE_KEM_kyber_512) -#define OQS_KEM_kyber_512_length_public_key 800 -#define OQS_KEM_kyber_512_length_secret_key 1632 -#define OQS_KEM_kyber_512_length_ciphertext 768 -#define OQS_KEM_kyber_512_length_shared_secret 32 -#define OQS_KEM_kyber_512_length_keypair_seed 0 -#define OQS_KEM_kyber_512_length_encaps_seed 0 -OQS_KEM *OQS_KEM_kyber_512_new(void); -OQS_API OQS_STATUS OQS_KEM_kyber_512_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_kyber_512_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_512_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_kyber_512_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_512_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_kyber_768) -#define OQS_KEM_kyber_768_length_public_key 1184 -#define OQS_KEM_kyber_768_length_secret_key 2400 -#define OQS_KEM_kyber_768_length_ciphertext 1088 -#define OQS_KEM_kyber_768_length_shared_secret 32 -#define OQS_KEM_kyber_768_length_keypair_seed 0 -#define OQS_KEM_kyber_768_length_encaps_seed 0 -OQS_KEM *OQS_KEM_kyber_768_new(void); -OQS_API OQS_STATUS OQS_KEM_kyber_768_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_kyber_768_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_768_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_kyber_768_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_768_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_kyber_1024) -#define OQS_KEM_kyber_1024_length_public_key 1568 -#define OQS_KEM_kyber_1024_length_secret_key 3168 -#define OQS_KEM_kyber_1024_length_ciphertext 1568 -#define OQS_KEM_kyber_1024_length_shared_secret 32 -#define OQS_KEM_kyber_1024_length_keypair_seed 0 -#define OQS_KEM_kyber_1024_length_encaps_seed 0 -OQS_KEM *OQS_KEM_kyber_1024_new(void); -OQS_API OQS_STATUS OQS_KEM_kyber_1024_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_kyber_1024_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_1024_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_kyber_1024_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_kyber_1024_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif - diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ml_kem.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ml_kem.h deleted file mode 100644 index be45e17..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ml_kem.h +++ /dev/null @@ -1,54 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_ML_KEM_H -#define OQS_KEM_ML_KEM_H - -#include - -#if defined(OQS_ENABLE_KEM_ml_kem_512) -#define OQS_KEM_ml_kem_512_length_public_key 800 -#define OQS_KEM_ml_kem_512_length_secret_key 1632 -#define OQS_KEM_ml_kem_512_length_ciphertext 768 -#define OQS_KEM_ml_kem_512_length_shared_secret 32 -#define OQS_KEM_ml_kem_512_length_keypair_seed 64 -#define OQS_KEM_ml_kem_512_length_encaps_seed 32 -OQS_KEM *OQS_KEM_ml_kem_512_new(void); -OQS_API OQS_STATUS OQS_KEM_ml_kem_512_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_512_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_512_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_512_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_512_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_ml_kem_768) -#define OQS_KEM_ml_kem_768_length_public_key 1184 -#define OQS_KEM_ml_kem_768_length_secret_key 2400 -#define OQS_KEM_ml_kem_768_length_ciphertext 1088 -#define OQS_KEM_ml_kem_768_length_shared_secret 32 -#define OQS_KEM_ml_kem_768_length_keypair_seed 64 -#define OQS_KEM_ml_kem_768_length_encaps_seed 32 -OQS_KEM *OQS_KEM_ml_kem_768_new(void); -OQS_API OQS_STATUS OQS_KEM_ml_kem_768_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_768_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_768_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_768_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_768_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#if defined(OQS_ENABLE_KEM_ml_kem_1024) -#define OQS_KEM_ml_kem_1024_length_public_key 1568 -#define OQS_KEM_ml_kem_1024_length_secret_key 3168 -#define OQS_KEM_ml_kem_1024_length_ciphertext 1568 -#define OQS_KEM_ml_kem_1024_length_shared_secret 32 -#define OQS_KEM_ml_kem_1024_length_keypair_seed 64 -#define OQS_KEM_ml_kem_1024_length_encaps_seed 32 -OQS_KEM *OQS_KEM_ml_kem_1024_new(void); -OQS_API OQS_STATUS OQS_KEM_ml_kem_1024_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_1024_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_1024_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ml_kem_1024_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ml_kem_1024_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif - diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntru.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntru.h deleted file mode 100644 index 93f7999..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntru.h +++ /dev/null @@ -1,93 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_NTRU_H -#define OQS_KEM_NTRU_H - -#include - -#ifdef OQS_ENABLE_KEM_ntru_hps2048509 -#define OQS_KEM_ntru_hps2048509_length_public_key 699 -#define OQS_KEM_ntru_hps2048509_length_secret_key 935 -#define OQS_KEM_ntru_hps2048509_length_ciphertext 699 -#define OQS_KEM_ntru_hps2048509_length_shared_secret 32 -#define OQS_KEM_ntru_hps2048509_length_keypair_seed 0 -#define OQS_KEM_ntru_hps2048509_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hps2048509_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048509_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048509_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048509_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048509_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_ntru_hps2048677 -#define OQS_KEM_ntru_hps2048677_length_public_key 930 -#define OQS_KEM_ntru_hps2048677_length_secret_key 1234 -#define OQS_KEM_ntru_hps2048677_length_ciphertext 930 -#define OQS_KEM_ntru_hps2048677_length_shared_secret 32 -#define OQS_KEM_ntru_hps2048677_length_keypair_seed 0 -#define OQS_KEM_ntru_hps2048677_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hps2048677_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048677_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048677_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048677_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps2048677_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_ntru_hps4096821 -#define OQS_KEM_ntru_hps4096821_length_public_key 1230 -#define OQS_KEM_ntru_hps4096821_length_secret_key 1590 -#define OQS_KEM_ntru_hps4096821_length_ciphertext 1230 -#define OQS_KEM_ntru_hps4096821_length_shared_secret 32 -#define OQS_KEM_ntru_hps4096821_length_keypair_seed 0 -#define OQS_KEM_ntru_hps4096821_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hps4096821_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hps4096821_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps4096821_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hps4096821_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps4096821_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_ntru_hps40961229 -#define OQS_KEM_ntru_hps40961229_length_public_key 1842 -#define OQS_KEM_ntru_hps40961229_length_secret_key 2366 -#define OQS_KEM_ntru_hps40961229_length_ciphertext 1842 -#define OQS_KEM_ntru_hps40961229_length_shared_secret 32 -#define OQS_KEM_ntru_hps40961229_length_keypair_seed 0 -#define OQS_KEM_ntru_hps40961229_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hps40961229_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hps40961229_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps40961229_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hps40961229_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hps40961229_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_ntru_hrss701 -#define OQS_KEM_ntru_hrss701_length_public_key 1138 -#define OQS_KEM_ntru_hrss701_length_secret_key 1450 -#define OQS_KEM_ntru_hrss701_length_ciphertext 1138 -#define OQS_KEM_ntru_hrss701_length_shared_secret 32 -#define OQS_KEM_ntru_hrss701_length_keypair_seed 0 -#define OQS_KEM_ntru_hrss701_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hrss701_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss701_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss701_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss701_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss701_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#ifdef OQS_ENABLE_KEM_ntru_hrss1373 -#define OQS_KEM_ntru_hrss1373_length_public_key 2401 -#define OQS_KEM_ntru_hrss1373_length_secret_key 2983 -#define OQS_KEM_ntru_hrss1373_length_ciphertext 2401 -#define OQS_KEM_ntru_hrss1373_length_shared_secret 32 -#define OQS_KEM_ntru_hrss1373_length_keypair_seed 0 -#define OQS_KEM_ntru_hrss1373_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntru_hrss1373_new(void); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss1373_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss1373_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss1373_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntru_hrss1373_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif - diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntruprime.h b/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntruprime.h deleted file mode 100644 index fbb5e61..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/kem_ntruprime.h +++ /dev/null @@ -1,24 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_KEM_NTRUPRIME_H -#define OQS_KEM_NTRUPRIME_H - -#include - -#ifdef OQS_ENABLE_KEM_ntruprime_sntrup761 -#define OQS_KEM_ntruprime_sntrup761_length_public_key 1158 -#define OQS_KEM_ntruprime_sntrup761_length_secret_key 1763 -#define OQS_KEM_ntruprime_sntrup761_length_ciphertext 1039 -#define OQS_KEM_ntruprime_sntrup761_length_shared_secret 32 -#define OQS_KEM_ntruprime_sntrup761_length_keypair_seed 0 -#define OQS_KEM_ntruprime_sntrup761_length_encaps_seed 0 -OQS_KEM *OQS_KEM_ntruprime_sntrup761_new(void); -OQS_API OQS_STATUS OQS_KEM_ntruprime_sntrup761_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_KEM_ntruprime_sntrup761_keypair_derand(uint8_t *public_key, uint8_t *secret_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntruprime_sntrup761_encaps(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_KEM_ntruprime_sntrup761_encaps_derand(uint8_t *ciphertext, uint8_t *shared_secret, const uint8_t *public_key, const uint8_t *seed); -OQS_API OQS_STATUS OQS_KEM_ntruprime_sntrup761_decaps(uint8_t *shared_secret, const uint8_t *ciphertext, const uint8_t *secret_key); -#endif - -#endif - diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/oqs.h b/prebuilt_liboqs/linux-aarch64/include/oqs/oqs.h deleted file mode 100644 index d6833bc..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/oqs.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * \file oqs.h - * \brief Overall header file for the liboqs public API. - * - * C programs using liboqs can include just this one file, and it will include all - * other necessary headers from liboqs. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_H -#define OQS_H - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#endif // OQS_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/oqsconfig.h b/prebuilt_liboqs/linux-aarch64/include/oqs/oqsconfig.h deleted file mode 100644 index 1a4e16f..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/oqsconfig.h +++ /dev/null @@ -1,569 +0,0 @@ -// SPDX-License-Identifier: MIT - -/** - * Version of liboqs as a string. Equivalent to {MAJOR}.{MINOR}.{PATCH}{PRE_RELEASE} - */ -#define OQS_VERSION_TEXT "0.15.0-rc1" -/** - * Version levels of liboqs as integers. - */ -#define OQS_VERSION_MAJOR 0 -#define OQS_VERSION_MINOR 15 -#define OQS_VERSION_PATCH 0 -/** - * OQS_VERSION_PRE_RELEASE is defined if this is a pre-release version of liboqs, otherwise it is undefined. - * Examples: "-dev" or "-rc1". - */ -#define OQS_VERSION_PRE_RELEASE "-rc1" - -#define OQS_COMPILE_BUILD_TARGET "aarch64-Linux-6.8.0-86-generic" -/* #undef OQS_DIST_BUILD */ -/* #undef OQS_DIST_X86_64_BUILD */ -/* #undef OQS_DIST_X86_BUILD */ -/* #undef OQS_DIST_ARM64_V8_BUILD */ -/* #undef OQS_DIST_ARM32_V7_BUILD */ -/* #undef OQS_DIST_PPC64LE_BUILD */ -/* #undef OQS_DEBUG_BUILD */ -/* #undef ARCH_X86_64 */ -#define ARCH_ARM64v8 1 -/* #undef ARCH_ARM32v7 */ -#define BUILD_SHARED_LIBS 1 -/* #undef OQS_BUILD_ONLY_LIB */ -#define OQS_OPT_TARGET "auto" -/* #undef USE_COVERAGE */ -/* #undef USE_SANITIZER */ -#define CMAKE_BUILD_TYPE "Release" - -/* #undef OQS_USE_OPENSSL */ -/* #undef OQS_USE_AES_OPENSSL */ -/* #undef OQS_USE_SHA2_OPENSSL */ -/* #undef OQS_USE_SHA3_OPENSSL */ -/* #undef OQS_DLOPEN_OPENSSL */ -/* #undef OQS_OPENSSL_CRYPTO_SONAME */ - -/* #undef OQS_EMBEDDED_BUILD */ - -#define OQS_USE_PTHREADS 1 - -/* #undef OQS_USE_ADX_INSTRUCTIONS */ -/* #undef OQS_USE_AES_INSTRUCTIONS */ -/* #undef OQS_USE_AVX_INSTRUCTIONS */ -/* #undef OQS_USE_AVX2_INSTRUCTIONS */ -/* #undef OQS_USE_AVX512_INSTRUCTIONS */ -/* #undef OQS_USE_BMI1_INSTRUCTIONS */ -/* #undef OQS_USE_BMI2_INSTRUCTIONS */ -/* #undef OQS_USE_PCLMULQDQ_INSTRUCTIONS */ -/* #undef OQS_USE_VPCLMULQDQ_INSTRUCTIONS */ -/* #undef OQS_USE_POPCNT_INSTRUCTIONS */ -/* #undef OQS_USE_SSE_INSTRUCTIONS */ -/* #undef OQS_USE_SSE2_INSTRUCTIONS */ -/* #undef OQS_USE_SSE3_INSTRUCTIONS */ - -/* #undef OQS_USE_ARM_AES_INSTRUCTIONS */ -/* #undef OQS_USE_ARM_SHA2_INSTRUCTIONS */ -/* #undef OQS_USE_ARM_SHA3_INSTRUCTIONS */ -#define OQS_USE_ARM_NEON_INSTRUCTIONS 1 - -/* #undef OQS_SPEED_USE_ARM_PMU */ - -/* #undef OQS_ENABLE_TEST_CONSTANT_TIME */ - -/* #undef OQS_ENABLE_SHA3_xkcp_low_avx2 */ -/* #undef OQS_USE_SHA3_AVX512VL */ - -#define OQS_USE_CUPQC 0 -#define OQS_USE_ICICLE 0 - -#define OQS_ENABLE_KEM_BIKE 1 -#define OQS_ENABLE_KEM_bike_l1 1 -#define OQS_ENABLE_KEM_bike_l3 1 -#define OQS_ENABLE_KEM_bike_l5 1 - -#define OQS_ENABLE_KEM_FRODOKEM 1 -#define OQS_ENABLE_KEM_frodokem_640_aes 1 -#define OQS_ENABLE_KEM_frodokem_640_shake 1 -#define OQS_ENABLE_KEM_frodokem_976_aes 1 -#define OQS_ENABLE_KEM_frodokem_976_shake 1 -#define OQS_ENABLE_KEM_frodokem_1344_aes 1 -#define OQS_ENABLE_KEM_frodokem_1344_shake 1 - -#define OQS_ENABLE_KEM_NTRUPRIME 1 -#define OQS_ENABLE_KEM_ntruprime_sntrup761 1 -/* #undef OQS_ENABLE_KEM_ntruprime_sntrup761_avx2 */ - -#define OQS_ENABLE_KEM_NTRU 1 -#define OQS_ENABLE_KEM_ntru_hps2048509 1 -/* #undef OQS_ENABLE_KEM_ntru_hps2048509_avx2 */ -#define OQS_ENABLE_KEM_ntru_hps2048677 1 -/* #undef OQS_ENABLE_KEM_ntru_hps2048677_avx2 */ -#define OQS_ENABLE_KEM_ntru_hps4096821 1 -/* #undef OQS_ENABLE_KEM_ntru_hps4096821_avx2 */ -#define OQS_ENABLE_KEM_ntru_hps40961229 1 -#define OQS_ENABLE_KEM_ntru_hrss701 1 -/* #undef OQS_ENABLE_KEM_ntru_hrss701_avx2 */ -#define OQS_ENABLE_KEM_ntru_hrss1373 1 - -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ADD_ALG_ENABLE_DEFINES_START - -#define OQS_ENABLE_KEM_CLASSIC_MCELIECE 1 -#define OQS_ENABLE_KEM_classic_mceliece_348864 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_348864_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_348864f 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_348864f_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_460896 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_460896_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_460896f 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_460896f_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_6688128 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_6688128_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_6688128f 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_6688128f_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_6960119 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_6960119_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_6960119f 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_6960119f_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_8192128 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_8192128_avx2 */ -#define OQS_ENABLE_KEM_classic_mceliece_8192128f 1 -/* #undef OQS_ENABLE_KEM_classic_mceliece_8192128f_avx2 */ - -/* #undef OQS_ENABLE_KEM_HQC */ -/* #undef OQS_ENABLE_KEM_hqc_128 */ -/* #undef OQS_ENABLE_KEM_hqc_192 */ -/* #undef OQS_ENABLE_KEM_hqc_256 */ - -#define OQS_ENABLE_KEM_KYBER 1 -#define OQS_ENABLE_KEM_kyber_512 1 -/* #undef OQS_ENABLE_KEM_kyber_512_avx2 */ -#define OQS_ENABLE_KEM_kyber_512_aarch64 1 -#define OQS_ENABLE_KEM_kyber_768 1 -/* #undef OQS_ENABLE_KEM_kyber_768_avx2 */ -#define OQS_ENABLE_KEM_kyber_768_aarch64 1 -#define OQS_ENABLE_KEM_kyber_1024 1 -/* #undef OQS_ENABLE_KEM_kyber_1024_avx2 */ -#define OQS_ENABLE_KEM_kyber_1024_aarch64 1 - -#define OQS_ENABLE_KEM_ML_KEM 1 -#define OQS_ENABLE_KEM_ml_kem_512 1 -/* #undef OQS_ENABLE_KEM_ml_kem_512_x86_64 */ -#define OQS_ENABLE_KEM_ml_kem_512_aarch64 1 -/* #undef OQS_ENABLE_KEM_ml_kem_512_cuda */ -/* #undef OQS_ENABLE_KEM_ml_kem_512_icicle_cuda */ -#define OQS_ENABLE_KEM_ml_kem_768 1 -/* #undef OQS_ENABLE_KEM_ml_kem_768_x86_64 */ -#define OQS_ENABLE_KEM_ml_kem_768_aarch64 1 -/* #undef OQS_ENABLE_KEM_ml_kem_768_cuda */ -/* #undef OQS_ENABLE_KEM_ml_kem_768_icicle_cuda */ -#define OQS_ENABLE_KEM_ml_kem_1024 1 -/* #undef OQS_ENABLE_KEM_ml_kem_1024_x86_64 */ -#define OQS_ENABLE_KEM_ml_kem_1024_aarch64 1 -/* #undef OQS_ENABLE_KEM_ml_kem_1024_cuda */ -/* #undef OQS_ENABLE_KEM_ml_kem_1024_icicle_cuda */ - -#define OQS_ENABLE_SIG_ML_DSA 1 -#define OQS_ENABLE_SIG_ml_dsa_44 1 -/* #undef OQS_ENABLE_SIG_ml_dsa_44_avx2 */ -#define OQS_ENABLE_SIG_ml_dsa_65 1 -/* #undef OQS_ENABLE_SIG_ml_dsa_65_avx2 */ -#define OQS_ENABLE_SIG_ml_dsa_87 1 -/* #undef OQS_ENABLE_SIG_ml_dsa_87_avx2 */ - -#define OQS_ENABLE_SIG_FALCON 1 -#define OQS_ENABLE_SIG_falcon_512 1 -/* #undef OQS_ENABLE_SIG_falcon_512_avx2 */ -#define OQS_ENABLE_SIG_falcon_512_aarch64 1 -#define OQS_ENABLE_SIG_falcon_1024 1 -/* #undef OQS_ENABLE_SIG_falcon_1024_avx2 */ -#define OQS_ENABLE_SIG_falcon_1024_aarch64 1 -#define OQS_ENABLE_SIG_falcon_padded_512 1 -/* #undef OQS_ENABLE_SIG_falcon_padded_512_avx2 */ -#define OQS_ENABLE_SIG_falcon_padded_512_aarch64 1 -#define OQS_ENABLE_SIG_falcon_padded_1024 1 -/* #undef OQS_ENABLE_SIG_falcon_padded_1024_avx2 */ -#define OQS_ENABLE_SIG_falcon_padded_1024_aarch64 1 - -#define OQS_ENABLE_SIG_SPHINCS 1 -#define OQS_ENABLE_SIG_sphincs_sha2_128f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_128f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_sha2_128s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_128s_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_sha2_192f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_192f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_sha2_192s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_192s_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_sha2_256f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_256f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_sha2_256s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_sha2_256s_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_128f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_128f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_128s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_128s_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_192f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_192f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_192s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_192s_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_256f_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_256f_simple_avx2 */ -#define OQS_ENABLE_SIG_sphincs_shake_256s_simple 1 -/* #undef OQS_ENABLE_SIG_sphincs_shake_256s_simple_avx2 */ - -#define OQS_ENABLE_SIG_MAYO 1 -#define OQS_ENABLE_SIG_mayo_1 1 -/* #undef OQS_ENABLE_SIG_mayo_1_avx2 */ -#define OQS_ENABLE_SIG_mayo_1_neon 1 -#define OQS_ENABLE_SIG_mayo_2 1 -/* #undef OQS_ENABLE_SIG_mayo_2_avx2 */ -#define OQS_ENABLE_SIG_mayo_2_neon 1 -#define OQS_ENABLE_SIG_mayo_3 1 -/* #undef OQS_ENABLE_SIG_mayo_3_avx2 */ -#define OQS_ENABLE_SIG_mayo_3_neon 1 -#define OQS_ENABLE_SIG_mayo_5 1 -/* #undef OQS_ENABLE_SIG_mayo_5_avx2 */ -#define OQS_ENABLE_SIG_mayo_5_neon 1 - -#define OQS_ENABLE_SIG_CROSS 1 -#define OQS_ENABLE_SIG_cross_rsdp_128_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_128_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_128_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_128_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_128_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_128_small_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_192_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_192_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_192_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_192_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_192_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_192_small_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_256_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_256_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_256_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_256_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdp_256_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdp_256_small_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_128_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_128_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_128_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_128_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_128_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_128_small_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_192_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_192_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_192_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_192_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_192_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_192_small_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_256_balanced 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_256_balanced_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_256_fast 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_256_fast_avx2 */ -#define OQS_ENABLE_SIG_cross_rsdpg_256_small 1 -/* #undef OQS_ENABLE_SIG_cross_rsdpg_256_small_avx2 */ - -#define OQS_ENABLE_SIG_UOV 1 -#define OQS_ENABLE_SIG_uov_ov_Is 1 -#define OQS_ENABLE_SIG_uov_ov_Is_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Is_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_Ip 1 -#define OQS_ENABLE_SIG_uov_ov_Ip_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Ip_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_III 1 -#define OQS_ENABLE_SIG_uov_ov_III_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_III_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_V 1 -#define OQS_ENABLE_SIG_uov_ov_V_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_V_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_Is_pkc 1 -#define OQS_ENABLE_SIG_uov_ov_Is_pkc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Is_pkc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_Ip_pkc 1 -#define OQS_ENABLE_SIG_uov_ov_Ip_pkc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Ip_pkc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_III_pkc 1 -#define OQS_ENABLE_SIG_uov_ov_III_pkc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_III_pkc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_V_pkc 1 -#define OQS_ENABLE_SIG_uov_ov_V_pkc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_V_pkc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_Is_pkc_skc 1 -#define OQS_ENABLE_SIG_uov_ov_Is_pkc_skc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Is_pkc_skc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_Ip_pkc_skc 1 -#define OQS_ENABLE_SIG_uov_ov_Ip_pkc_skc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_Ip_pkc_skc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_III_pkc_skc 1 -#define OQS_ENABLE_SIG_uov_ov_III_pkc_skc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_III_pkc_skc_avx2 */ -#define OQS_ENABLE_SIG_uov_ov_V_pkc_skc 1 -#define OQS_ENABLE_SIG_uov_ov_V_pkc_skc_neon 1 -/* #undef OQS_ENABLE_SIG_uov_ov_V_pkc_skc_avx2 */ - -#define OQS_ENABLE_SIG_SNOVA 1 -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_24_5_4_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_esk 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_24_5_4_esk_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_esk_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_esk 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_esk_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_esk_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_37_17_2 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_37_17_2_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_37_17_2_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_25_8_3 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_25_8_3_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_25_8_3_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_56_25_2 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_56_25_2_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_56_25_2_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_49_11_3 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_49_11_3_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_49_11_3_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_37_8_4 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_37_8_4_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_37_8_4_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_5 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_24_5_5_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_24_5_5_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_60_10_4 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_60_10_4_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_60_10_4_neon 1 -#define OQS_ENABLE_SIG_snova_SNOVA_29_6_5 1 -/* #undef OQS_ENABLE_SIG_snova_SNOVA_29_6_5_avx2 */ -#define OQS_ENABLE_SIG_snova_SNOVA_29_6_5_neon 1 -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ADD_ALG_ENABLE_DEFINES_END -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ADD_ALG_ENABLE_DEFINES_START -#define OQS_ENABLE_SIG_SLH_DSA 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_pure_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_256f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_128s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_128f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_192s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_192f 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_256s 1 -#define OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_256f 1 -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ADD_ALG_ENABLE_DEFINES_END - -///// OQS_COPY_FROM_LIBJADE_FRAGMENT_ADD_ALG_ENABLE_DEFINES_START - -#define OQS_LIBJADE_BUILD 0 - -/* #undef OQS_ENABLE_LIBJADE_KEM_KYBER */ -/* #undef OQS_ENABLE_LIBJADE_KEM_kyber_512 */ -/* #undef OQS_ENABLE_LIBJADE_KEM_kyber_512_avx2 */ -/* #undef OQS_ENABLE_LIBJADE_KEM_kyber_768 */ -/* #undef OQS_ENABLE_LIBJADE_KEM_kyber_768_avx2 */ -///// OQS_COPY_FROM_LIBJADE_FRAGMENT_ADD_ALG_ENABLE_DEFINES_END - -/* #undef OQS_ENABLE_SIG_STFL_XMSS */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h10 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h16 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h20 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake128_h10 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake128_h16 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake128_h20 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha512_h10 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha512_h16 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha512_h20 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h10 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h16 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h20 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h10_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h16_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_sha256_h20_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h10_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h16_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h20_192 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h10_256 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h16_256 */ -/* #undef OQS_ENABLE_SIG_STFL_xmss_shake256_h20_256 */ - -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h20_2 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h20_4 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h40_2 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h40_4 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h40_8 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h60_3 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h60_6 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_sha256_h60_12 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h20_2 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h20_4 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h40_2 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h40_4 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h40_8 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h60_3 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h60_6 */ -/* #undef OQS_ENABLE_SIG_STFL_xmssmt_shake128_h60_12 */ - - -/* #undef OQS_ENABLE_SIG_STFL_LMS */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h5_w1 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h5_w2 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h5_w4 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h5_w8 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h10_w1 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h10_w2 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h10_w4 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h10_w8 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h15_w1 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h15_w2 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h15_w4 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h5_w8_h5_w8 */ -/* #undef OQS_ENABLE_SIG_STFL_lms_sha256_h10_w4_h5_w8 */ - -/* #undef OQS_HAZARDOUS_EXPERIMENTAL_ENABLE_SIG_STFL_KEY_SIG_GEN */ -/* #undef OQS_ALLOW_STFL_KEY_AND_SIG_GEN */ -/* #undef OQS_ALLOW_XMSS_KEY_AND_SIG_GEN */ -/* #undef OQS_ALLOW_LMS_KEY_AND_SIG_GEN */ diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/rand.h b/prebuilt_liboqs/linux-aarch64/include/oqs/rand.h deleted file mode 100644 index 962ce6c..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/rand.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * \file rand.h - * \brief Random number generator. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_RANDOM_H -#define OQS_RANDOM_H - -#include -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Algorithm identifier for system PRNG. */ -#define OQS_RAND_alg_system "system" -/** Algorithm identifier for using OpenSSL's PRNG. */ -#define OQS_RAND_alg_openssl "OpenSSL" - -/** - * Switches OQS_randombytes to use the specified algorithm. - * - * @warning In case you have set a custom algorithm using `OQS_randombytes_custom_algorithm` - * before, this function will overwrite it again. Hence, you have to set your custom - * algorithm again after calling this function. - * - * @param[in] algorithm The name of the algorithm to use. - * @return OQS_SUCCESS if `algorithm` is a supported algorithm name, OQS_ERROR otherwise. - */ -OQS_API OQS_STATUS OQS_randombytes_switch_algorithm(const char *algorithm); - -/** - * Switches OQS_randombytes to use the given function. - * - * This allows additional custom RNGs besides the provided ones. The provided RNG - * function must have the same signature as `OQS_randombytes`. - * - * @param[in] algorithm_ptr Pointer to the RNG function to use. - */ -OQS_API void OQS_randombytes_custom_algorithm(void (*algorithm_ptr)(uint8_t *, size_t)); - -/** - * Fills the given memory with the requested number of (pseudo)random bytes. - * - * This implementation uses whichever algorithm has been selected by - * OQS_randombytes_switch_algorithm. The default is OQS_randombytes_system, which - * reads bytes from a system specific default source. - * - * The caller is responsible for providing a buffer allocated with sufficient room. - * - * @param[out] random_array Pointer to the memory to fill with (pseudo)random bytes - * @param[in] bytes_to_read The number of random bytes to read into memory - */ -OQS_API void OQS_randombytes(uint8_t *random_array, size_t bytes_to_read); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_RANDOM_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/rand_nist.h b/prebuilt_liboqs/linux-aarch64/include/oqs/rand_nist.h deleted file mode 100644 index d124773..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/rand_nist.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * \file rand_nist.h - * \brief NIST DRBG - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_RAND_NIST_H -#define OQS_RAND_NIST_H - -#include -#include - -typedef struct { - unsigned char Key[32]; - unsigned char V[16]; - int reseed_counter; -} OQS_NIST_DRBG_struct; - -/** - * Initializes the NIST DRBG with a given seed and with 256-bit security. - * - * @param[in] entropy_input The seed; must be exactly 48 bytes - * @param[in] personalization_string An optional personalization string; - * may be NULL; if not NULL, must be at least 48 bytes long - */ -void OQS_randombytes_nist_kat_init_256bit(const uint8_t *entropy_input, const uint8_t *personalization_string); - -/** - * Fills the given memory with the requested number of pseudorandom bytes using the NIST DRBG. - * - * @param[out] random_array Pointer to the memory to fill with (pseudo)random bytes - * @param[in] bytes_to_read The number of random bytes to read into memory - */ -void OQS_randombytes_nist_kat(uint8_t *random_array, size_t bytes_to_read); - -/** - * Writes the current state of the NIST DRBG into the provided memory. - */ -void OQS_randombytes_nist_kat_get_state(void *out); - -/** - * Overwrites the current state of the NIST DRBG from the provided memory. - */ -void OQS_randombytes_nist_kat_set_state(const void *in); - -#endif // OQS_RAND_NIST_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha2.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha2.h deleted file mode 100644 index e7aaf54..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha2.h +++ /dev/null @@ -1,246 +0,0 @@ -/** - * \file sha2.h - * \brief SHA2 functions; not part of the OQS public API - * - * Contains the API and documentation for SHA2 digest implementation - * - * Note this is not part of the OQS public API: implementations within liboqs can use these - * functions, but external consumers of liboqs should not use these functions. - * - * \author Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA2_H -#define OQS_SHA2_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** - * \brief Process a message with SHA-256 and return the hash code in the output byte array. - * - * \warning The output array must be at least 32 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA2_sha256(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Allocate and initialize the state for the SHA-256 incremental hashing API. - * - * \warning The state must be released by OQS_SHA2_sha256_inc_finalize - * or OQS_SHA2_sha256_inc_ctx_release. - * - * \param state Pointer to the state - */ -void OQS_SHA2_sha256_inc_init(OQS_SHA2_sha256_ctx *state); - -/** - * \brief Duplicate state for the SHA-256 incremental hashing API. - * - * \warning dest must be allocated by the caller. Caller is responsible - * for releasing dest by calling either OQS_SHA2_sha256_inc_finalize or - * OQS_SHA2_sha256_inc_ctx_release. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA2_sha256_inc_ctx_clone(OQS_SHA2_sha256_ctx *dest, const OQS_SHA2_sha256_ctx *src); - -/** - * \brief Process blocks with SHA-256 and update the state. - * - * \warning The state must be initialized by OQS_SHA2_sha256_inc_init or OQS_SHA2_sha256_inc_ctx_clone. - * - * \param state The state to update - * \param in Message input byte array - * \param inblocks The number of 64-byte blocks of message bytes to process - */ -void OQS_SHA2_sha256_inc_blocks(OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t inblocks); - -/** - * \brief Process message bytes with SHA-256 and update the state. - * - * \warning The state must be initialized by OQS_SHA2_sha256_inc_init or OQS_SHA2_sha256_inc_ctx_clone. - * - * \param state The state to update - * \param in Message input byte array - * \param len The number of bytes of message to process - */ -void OQS_SHA2_sha256_inc(OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t len); - -/** - * \brief Process more message bytes with SHA-256 and return the hash code in the output byte array. - * - * \warning The output array must be at least 32 bytes in length. The state is - * deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha256_inc_init again. - * - * \param out The output byte array - * \param state The state - * \param in Additional message input byte array - * \param inlen The number of additional message bytes to process - */ -void OQS_SHA2_sha256_inc_finalize(uint8_t *out, OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t inlen); - -/** - * \brief Destroy state. - * - * \warning The state is deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha256_inc_init again. - * - * \param state The state - */ -void OQS_SHA2_sha256_inc_ctx_release(OQS_SHA2_sha256_ctx *state); - -/** - * \brief Process a message with SHA-384 and return the hash code in the output byte array. - * - * \warning The output array must be at least 48 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA2_sha384(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Allocate and initialize the state for the SHA-384 incremental hashing API. - * - * \warning The state must be released by OQS_SHA2_sha384_inc_finalize - * or OQS_SHA2_sha384_inc_ctx_release. - * - * \param state Pointer to the state - */ -void OQS_SHA2_sha384_inc_init(OQS_SHA2_sha384_ctx *state); - -/** - * \brief Duplicate state for the SHA-384 incremental hashing API. - * - * \warning dest must be allocated by the caller. Caller is responsible - * for releasing dest by calling either OQS_SHA2_sha384_inc_finalize or - * OQS_SHA2_sha384_inc_ctx_release. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA2_sha384_inc_ctx_clone(OQS_SHA2_sha384_ctx *dest, const OQS_SHA2_sha384_ctx *src); - -/** - * \brief Process blocks with SHA-384 and update the state. - * - * \warning The state must be initialized by OQS_SHA2_sha384_inc_init or OQS_SHA2_sha384_inc_ctx_clone. - * - * \param state The state to update - * \param in Message input byte array - * \param inblocks The number of 128-byte blocks of message bytes to process - */ -void OQS_SHA2_sha384_inc_blocks(OQS_SHA2_sha384_ctx *state, const uint8_t *in, size_t inblocks); - -/** - * \brief Process more message bytes with SHA-384 and return the hash code in the output byte array. - * - * \warning The output array must be at least 48 bytes in length. The state is - * deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha384_inc_init again. - * - * \param out The output byte array - * \param state The state - * \param in Additional message input byte array - * \param inlen The number of additional message bytes to process - */ -void OQS_SHA2_sha384_inc_finalize(uint8_t *out, OQS_SHA2_sha384_ctx *state, const uint8_t *in, size_t inlen); - -/** - * \brief Destroy state. - * - * \warning The state is deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha384_inc_init again. - * - * \param state The state - */ -void OQS_SHA2_sha384_inc_ctx_release(OQS_SHA2_sha384_ctx *state); - -/** - * \brief Process a message with SHA-512 and return the hash code in the output byte array. - * - * \warning The output array must be at least 64 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA2_sha512(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Allocate and initialize the state for the SHA-512 incremental hashing API. - * - * \warning The state must be released by OQS_SHA2_sha512_inc_finalize - * or OQS_SHA2_sha512_inc_ctx_release. - * - * \param state Pointer to the state - */ -void OQS_SHA2_sha512_inc_init(OQS_SHA2_sha512_ctx *state); - -/** - * \brief Duplicate state for the SHA-512 incremental hashing API. - * - * \warning dest must be allocated by the caller. Caller is responsible - * for releasing dest by calling either OQS_SHA2_sha512_inc_finalize or - * OQS_SHA2_sha512_inc_ctx_release. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA2_sha512_inc_ctx_clone(OQS_SHA2_sha512_ctx *dest, const OQS_SHA2_sha512_ctx *src); - -/** - * \brief Process blocks with SHA-512 and update the state. - * - * \warning The state must be initialized by OQS_SHA2_sha512_inc_init or OQS_SHA2_sha512_inc_ctx_clone. - * - * \param state The state to update - * \param in Message input byte array - * \param inblocks The number of 128-byte blocks of message bytes to process - */ -void OQS_SHA2_sha512_inc_blocks(OQS_SHA2_sha512_ctx *state, const uint8_t *in, size_t inblocks); - -/** - * \brief Process more message bytes with SHA-512 and return the hash code in the output byte array. - * - * \warning The output array must be at least 64 bytes in length. The state is - * deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha512_inc_init again. - * - * \param out The output byte array - * \param state The state - * \param in Additional message input byte array - * \param inlen The number of additional message bytes to process - */ -void OQS_SHA2_sha512_inc_finalize(uint8_t *out, OQS_SHA2_sha512_ctx *state, const uint8_t *in, size_t inlen); - -/** - * \brief Destroy state. - * - * \warning The state is deallocated by this function and can not be used again after calling - * this function without calling OQS_SHA2_sha512_inc_init again. - * - * \param state The state - */ -void OQS_SHA2_sha512_inc_ctx_release(OQS_SHA2_sha512_ctx *state); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA2_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha2_ops.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha2_ops.h deleted file mode 100644 index 7b8ae8c..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha2_ops.h +++ /dev/null @@ -1,176 +0,0 @@ -/** - * \file sha2_ops.h - * \brief Header defining the callback API for OQS SHA2 - * - * \author Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA2_OPS_H -#define OQS_SHA2_OPS_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Data structure for the state of the SHA-224 incremental hashing API. */ -typedef struct { - /** Internal state */ - void *ctx; - /** current number of bytes in data */ - size_t data_len; - /** unprocessed data buffer */ - uint8_t data[128]; -} OQS_SHA2_sha224_ctx; - -/** Data structure for the state of the SHA-256 incremental hashing API. */ -typedef struct { - /** Internal state */ - void *ctx; - /** current number of bytes in data */ - size_t data_len; - /** unprocessed data buffer */ - uint8_t data[128]; -} OQS_SHA2_sha256_ctx; - -/** Data structure for the state of the SHA-384 incremental hashing API. */ -typedef struct { - /** Internal state. */ - void *ctx; - /** current number of bytes in data */ - size_t data_len; - /** unprocessed data buffer */ - uint8_t data[128]; -} OQS_SHA2_sha384_ctx; - -/** Data structure for the state of the SHA-512 incremental hashing API. */ -typedef struct { - /** Internal state. */ - void *ctx; - /** current number of bytes in data */ - size_t data_len; - /** unprocessed data buffer */ - uint8_t data[128]; -} OQS_SHA2_sha512_ctx; - -/** Data structure implemented by cryptographic provider for SHA-2 operations. - */ -struct OQS_SHA2_callbacks { - /** - * Implementation of function OQS_SHA2_sha256. - */ - void (*SHA2_sha256)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA2_sha256_inc_init. - */ - void (*SHA2_sha256_inc_init)(OQS_SHA2_sha256_ctx *state); - - /** - * Implementation of function OQS_SHA2_sha256_inc_ctx_clone. - */ - void (*SHA2_sha256_inc_ctx_clone)(OQS_SHA2_sha256_ctx *dest, const OQS_SHA2_sha256_ctx *src); - - /** - * Implementation of function OQS_SHA2_sha256_inc. - */ - void (*SHA2_sha256_inc)(OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t len); - - /** - * Implementation of function OQS_SHA2_sha256_inc_blocks. - */ - void (*SHA2_sha256_inc_blocks)(OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t inblocks); - - /** - * Implementation of function OQS_SHA2_sha256_inc_finalize. - */ - void (*SHA2_sha256_inc_finalize)(uint8_t *out, OQS_SHA2_sha256_ctx *state, const uint8_t *in, size_t inlen); - - /** - * Implementation of function OQS_SHA2_sha256_inc_ctx_release. - */ - void (*SHA2_sha256_inc_ctx_release)(OQS_SHA2_sha256_ctx *state); - - /** - * Implementation of function OQS_SHA2_sha384. - */ - void (*SHA2_sha384)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA2_sha384_inc_init. - */ - void (*SHA2_sha384_inc_init)(OQS_SHA2_sha384_ctx *state); - - /** - * Implementation of function OQS_SHA2_sha384_inc_ctx_clone. - */ - void (*SHA2_sha384_inc_ctx_clone)(OQS_SHA2_sha384_ctx *dest, const OQS_SHA2_sha384_ctx *src); - - /** - * Implementation of function OQS_SHA2_sha384_inc_blocks. - */ - void (*SHA2_sha384_inc_blocks)(OQS_SHA2_sha384_ctx *state, const uint8_t *in, size_t inblocks); - - /** - * Implementation of function OQS_SHA2_sha384_inc_finalize. - */ - void (*SHA2_sha384_inc_finalize)(uint8_t *out, OQS_SHA2_sha384_ctx *state, const uint8_t *in, size_t inlen); - - /** - * Implementation of function OQS_SHA2_sha384_inc_ctx_release. - */ - void (*SHA2_sha384_inc_ctx_release)(OQS_SHA2_sha384_ctx *state); - - /** - * Implementation of function OQS_SHA2_sha512. - */ - void (*SHA2_sha512)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA2_sha512_inc_init. - */ - void (*SHA2_sha512_inc_init)(OQS_SHA2_sha512_ctx *state); - - /** - * Implementation of function OQS_SHA2_sha512_inc_ctx_clone. - */ - void (*SHA2_sha512_inc_ctx_clone)(OQS_SHA2_sha512_ctx *dest, const OQS_SHA2_sha512_ctx *src); - - /** - * Implementation of function OQS_SHA2_sha512_inc_blocks. - */ - void (*SHA2_sha512_inc_blocks)(OQS_SHA2_sha512_ctx *state, const uint8_t *in, size_t inblocks); - - /** - * Implementation of function OQS_SHA2_sha512_inc_finalize. - */ - void (*SHA2_sha512_inc_finalize)(uint8_t *out, OQS_SHA2_sha512_ctx *state, const uint8_t *in, size_t inlen); - - /** - * Implementation of function OQS_SHA2_sha512_inc_ctx_release. - */ - void (*SHA2_sha512_inc_ctx_release)(OQS_SHA2_sha512_ctx *state); -}; - -/** - * Set callback functions for SHA2 operations. - * - * This function may be called before OQS_init to switch the - * cryptographic provider for SHA2 operations. If it is not called, - * the default provider determined at build time will be used. - * - * @param[in] new_callbacks Callback functions defined in OQS_SHA2_callbacks - */ -OQS_API void OQS_SHA2_set_callbacks(struct OQS_SHA2_callbacks *new_callbacks); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA2_OPS_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha3.h deleted file mode 100644 index 7fa9c9a..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3.h +++ /dev/null @@ -1,400 +0,0 @@ -/** - * \file sha3.h - * \brief SHA3 and SHAKE functions; not part of the OQS public API - * - * Contains the API and documentation for SHA3 digest and SHAKE implementations. - * - * Note this is not part of the OQS public API: implementations within liboqs can use these - * functions, but external consumers of liboqs should not use these functions. - * - * \author John Underhill, Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA3_H -#define OQS_SHA3_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/* SHA3 */ - -/** The SHA-256 byte absorption rate */ -#define OQS_SHA3_SHA3_256_RATE 136 - -/** - * \brief Process a message with SHA3-256 and return the digest in the output byte array. - * - * \warning The output array must be at least 32 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA3_sha3_256(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Initialize the state for the incremental SHA3-256 API. - * - * \warning Caller is responsible for releasing state by calling - * OQS_SHA3_sha3_256_inc_ctx_release. - * - * \param state The function state to be allocated and initialized. - */ -void OQS_SHA3_sha3_256_inc_init(OQS_SHA3_sha3_256_inc_ctx *state); - -/** - * \brief The SHA3-256 absorb function. - * Absorb an input into the state. - * - * \param state The function state; must be initialized - * \param input The input array - * \param inlen The length of the input - */ -void OQS_SHA3_sha3_256_inc_absorb(OQS_SHA3_sha3_256_inc_ctx *state, const uint8_t *input, size_t inlen); - -/** - * \brief The SHA3-256 finalize-and-squeeze function. - * Finalizes the state and squeezes a 32 byte digest. - * - * \warning Output array must be at least 32 bytes. - * State cannot be used after this without calling OQS_SHA3_sha3_256_inc_reset. - * - * \param output The output byte array - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_256_inc_finalize(uint8_t *output, OQS_SHA3_sha3_256_inc_ctx *state); - -/** - * \brief Release the state for the SHA3-256 incremental API. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_256_inc_ctx_release(OQS_SHA3_sha3_256_inc_ctx *state); - -/** - * \brief Resets the state for the SHA3-256 incremental API. - * Alternative to freeing and reinitializing the state. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_256_inc_ctx_reset(OQS_SHA3_sha3_256_inc_ctx *state); - -/** - * \brief Clone the state for the SHA3-256 incremental API. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA3_sha3_256_inc_ctx_clone(OQS_SHA3_sha3_256_inc_ctx *dest, const OQS_SHA3_sha3_256_inc_ctx *src); - -/** The SHA-384 byte absorption rate */ -#define OQS_SHA3_SHA3_384_RATE 104 - -/** - * \brief Process a message with SHA3-384 and return the digest in the output byte array. - * - * \warning The output array must be at least 48 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA3_sha3_384(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Initialize the state for the incremental SHA3-384 API. - * - * \warning Caller is responsible for releasing state by calling - * OQS_SHA3_sha3_384_inc_ctx_release. - * - * \param state The function state to be allocated and initialized. - */ -void OQS_SHA3_sha3_384_inc_init(OQS_SHA3_sha3_384_inc_ctx *state); - -/** - * \brief The SHA3-384 absorb function. - * Absorb an input into the state. - * - * \param state The function state; must be initialized - * \param input The input array - * \param inlen The length of the input - */ -void OQS_SHA3_sha3_384_inc_absorb(OQS_SHA3_sha3_384_inc_ctx *state, const uint8_t *input, size_t inlen); - -/** - * \brief The SHA3-384 finalize-and-squeeze function. - * Finalizes the state and squeezes a 48 byte digest. - * - * \warning Output array must be at least 48 bytes. - * State cannot be used after this without calling OQS_SHA3_sha3_384_inc_reset. - * - * \param output The output byte array - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_384_inc_finalize(uint8_t *output, OQS_SHA3_sha3_384_inc_ctx *state); - -/** - * \brief Release the state for the SHA3-384 incremental API. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_384_inc_ctx_release(OQS_SHA3_sha3_384_inc_ctx *state); - -/** - * \brief Resets the state for the SHA3-384 incremental API. - * Alternative to freeing and reinitializing the state. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_384_inc_ctx_reset(OQS_SHA3_sha3_384_inc_ctx *state); - -/** - * \brief Clone the state for the SHA3-384 incremental API. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA3_sha3_384_inc_ctx_clone(OQS_SHA3_sha3_384_inc_ctx *dest, const OQS_SHA3_sha3_384_inc_ctx *src); - -/** The SHA-512 byte absorption rate */ -#define OQS_SHA3_SHA3_512_RATE 72 - -/** - * \brief Process a message with SHA3-512 and return the digest in the output byte array. - * - * \warning The output array must be at least 64 bytes in length. - * - * \param output The output byte array - * \param input The message input byte array - * \param inplen The number of message bytes to process - */ -void OQS_SHA3_sha3_512(uint8_t *output, const uint8_t *input, size_t inplen); - -/** - * \brief Initialize the state for the incremental SHA3-512 API. - * - * \warning Caller is responsible for releasing state by calling - * OQS_SHA3_sha3_512_inc_ctx_release. - * - * \param state The function state to be allocated and initialized. - */ -void OQS_SHA3_sha3_512_inc_init(OQS_SHA3_sha3_512_inc_ctx *state); - -/** - * \brief The SHA3-512 absorb function. - * Absorb an input into the state. - * - * \param state The function state; must be initialized - * \param input The input array - * \param inlen The length of the input - */ -void OQS_SHA3_sha3_512_inc_absorb(OQS_SHA3_sha3_512_inc_ctx *state, const uint8_t *input, size_t inlen); - -/** - * \brief The SHA3-512 finalize-and-squeeze function. - * Finalizes the state and squeezes a 64 byte digest. - * - * \warning Output array must be at least 64 bytes. - * State cannot be used after this without calling OQS_SHA3_sha3_512_inc_reset. - * - * \param output The output byte array - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_512_inc_finalize(uint8_t *output, OQS_SHA3_sha3_512_inc_ctx *state); - -/** - * \brief Release the state for the SHA3-512 incremental API. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_512_inc_ctx_release(OQS_SHA3_sha3_512_inc_ctx *state); - -/** - * \brief Resets the state for the SHA3-512 incremental API. - * Alternative to freeing and reinitializing the state. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_sha3_512_inc_ctx_reset(OQS_SHA3_sha3_512_inc_ctx *state); - -/** - * \brief Clone the state for the SHA3-512 incremental API. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA3_sha3_512_inc_ctx_clone(OQS_SHA3_sha3_512_inc_ctx *dest, const OQS_SHA3_sha3_512_inc_ctx *src); - -/* SHAKE */ - -/** The SHAKE-128 byte absorption rate */ -#define OQS_SHA3_SHAKE128_RATE 168 - -/** - * \brief Seed a SHAKE-128 instance, and generate an array of pseudo-random bytes. - * - * \warning The output array length must not be zero. - * - * \param output The output byte array - * \param outlen The number of output bytes to generate - * \param input The input seed byte array - * \param inplen The number of seed bytes to process - */ -void OQS_SHA3_shake128(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen); - -/** - * \brief Initialize the state for the incremental SHAKE-128 API. - * - * \warning Caller is responsible for releasing state by calling - * OQS_SHA3_shake128_inc_ctx_release. - * - * \param state The function state to be initialized; must be allocated - */ -void OQS_SHA3_shake128_inc_init(OQS_SHA3_shake128_inc_ctx *state); - -/** - * \brief The SHAKE-128 absorb function. - * Absorb an input into the state. - * - * \warning State must be initialized. - * - * \param state The function state; must be initialized - * \param input input buffer - * \param inlen length of input buffer - */ -void OQS_SHA3_shake128_inc_absorb(OQS_SHA3_shake128_inc_ctx *state, const uint8_t *input, size_t inlen); - -/** - * \brief The SHAKE-128 finalize function. - * Prepares the state for squeezing. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake128_inc_finalize(OQS_SHA3_shake128_inc_ctx *state); - -/** - * \brief The SHAKE-128 squeeze function. - * Extracts to an output byte array. - * - * \param output output buffer - * \param outlen bytes of outbut buffer - * \param state The function state; must be initialized and finalized - */ -void OQS_SHA3_shake128_inc_squeeze(uint8_t *output, size_t outlen, OQS_SHA3_shake128_inc_ctx *state); - -/** - * \brief Frees the state for the incremental SHAKE-128 API. - * - * \param state The state to free - */ -void OQS_SHA3_shake128_inc_ctx_release(OQS_SHA3_shake128_inc_ctx *state); - -/** - * \brief Copies the state for the SHAKE-128 incremental API. - * - * \warning Caller is responsible for releasing dest by calling - * OQS_SHA3_shake128_inc_ctx_release. - * - * \param dest The function state to copy into; must be initialized - * \param src The function state to copy; must be initialized - */ -void OQS_SHA3_shake128_inc_ctx_clone(OQS_SHA3_shake128_inc_ctx *dest, const OQS_SHA3_shake128_inc_ctx *src); - -/** - * \brief Resets the state for the SHAKE-128 incremental API. Allows a context - * to be re-used without free and init calls. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake128_inc_ctx_reset(OQS_SHA3_shake128_inc_ctx *state); - -/** The SHAKE-256 byte absorption rate */ -#define OQS_SHA3_SHAKE256_RATE 136 - -/** - * \brief Seed a SHAKE-256 instance, and generate an array of pseudo-random bytes. - * - * \warning The output array length must not be zero. - * - * \param output The output byte array - * \param outlen The number of output bytes to generate - * \param input The input seed byte array - * \param inplen The number of seed bytes to process - */ -void OQS_SHA3_shake256(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen); - -/** - * \brief Initialize the state for the incremental SHAKE-256 API. - * - * \param state The function state to be initialized; must be allocated - */ -void OQS_SHA3_shake256_inc_init(OQS_SHA3_shake256_inc_ctx *state); - -/** - * \brief The SHAKE-256 absorb function. - * Absorb an input message array directly into the state. - * - * \warning State must be initialized by the caller. - * - * \param state The function state; must be initialized - * \param input input buffer - * \param inlen length of input buffer - */ -void OQS_SHA3_shake256_inc_absorb(OQS_SHA3_shake256_inc_ctx *state, const uint8_t *input, size_t inlen); - -/** - * \brief The SHAKE-256 finalize function. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake256_inc_finalize(OQS_SHA3_shake256_inc_ctx *state); - -/** - * \brief The SHAKE-256 squeeze function. - * Extracts to an output byte array. - * - * \param output output buffer - * \param outlen bytes of outbut buffer - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake256_inc_squeeze(uint8_t *output, size_t outlen, OQS_SHA3_shake256_inc_ctx *state); - -/** - * \brief Frees the state for the incremental SHAKE-256 API. - * - * \param state The state to free - */ -void OQS_SHA3_shake256_inc_ctx_release(OQS_SHA3_shake256_inc_ctx *state); - -/** - * \brief Copies the state for the incremental SHAKE-256 API. - * - * \warning dest must be allocated. dest must be freed by calling - * OQS_SHA3_shake256_inc_ctx_release. - * - * \param dest The state to copy into; must be initialized - * \param src The state to copy from; must be initialized - */ -void OQS_SHA3_shake256_inc_ctx_clone(OQS_SHA3_shake256_inc_ctx *dest, const OQS_SHA3_shake256_inc_ctx *src); - -/** - * \brief Resets the state for the SHAKE-256 incremental API. Allows a context - * to be re-used without free and init calls. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake256_inc_ctx_reset(OQS_SHA3_shake256_inc_ctx *state); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA3_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3_ops.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha3_ops.h deleted file mode 100644 index 694fc21..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3_ops.h +++ /dev/null @@ -1,256 +0,0 @@ -/** - * \file sha3_ops.h - * \brief Header defining the callback API for OQS SHA3 and SHAKE - * - * \author John Underhill, Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA3_OPS_H -#define OQS_SHA3_OPS_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Data structure for the state of the incremental SHA3-256 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_sha3_256_inc_ctx; - -/** Data structure for the state of the incremental SHA3-384 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_sha3_384_inc_ctx; - -/** Data structure for the state of the incremental SHA3-512 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_sha3_512_inc_ctx; - -/** Data structure for the state of the incremental SHAKE-128 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_shake128_inc_ctx; - -/** Data structure for the state of the incremental SHAKE-256 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_shake256_inc_ctx; - -/** Data structure implemented by cryptographic provider for SHA-3 operations. - */ -struct OQS_SHA3_callbacks { - /** - * Implementation of function OQS_SHA3_sha3_256. - */ - void (*SHA3_sha3_256)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_init. - */ - void (*SHA3_sha3_256_inc_init)(OQS_SHA3_sha3_256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_absorb. - */ - void (*SHA3_sha3_256_inc_absorb)(OQS_SHA3_sha3_256_inc_ctx *state, const uint8_t *input, size_t inlen); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_finalize. - */ - void (*SHA3_sha3_256_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_ctx_release. - */ - void (*SHA3_sha3_256_inc_ctx_release)(OQS_SHA3_sha3_256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_ctx_reset. - */ - void (*SHA3_sha3_256_inc_ctx_reset)(OQS_SHA3_sha3_256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_256_inc_ctx_clone. - */ - void (*SHA3_sha3_256_inc_ctx_clone)(OQS_SHA3_sha3_256_inc_ctx *dest, const OQS_SHA3_sha3_256_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_sha3_384. - */ - void (*SHA3_sha3_384)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_init. - */ - void (*SHA3_sha3_384_inc_init)(OQS_SHA3_sha3_384_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_absorb. - */ - void (*SHA3_sha3_384_inc_absorb)(OQS_SHA3_sha3_384_inc_ctx *state, const uint8_t *input, size_t inlen); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_finalize. - */ - void (*SHA3_sha3_384_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_384_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_ctx_release. - */ - void (*SHA3_sha3_384_inc_ctx_release)(OQS_SHA3_sha3_384_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_ctx_reset. - */ - void (*SHA3_sha3_384_inc_ctx_reset)(OQS_SHA3_sha3_384_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_384_inc_ctx_clone. - */ - void (*SHA3_sha3_384_inc_ctx_clone)(OQS_SHA3_sha3_384_inc_ctx *dest, const OQS_SHA3_sha3_384_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_sha3_512. - */ - void (*SHA3_sha3_512)(uint8_t *output, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_init. - */ - void (*SHA3_sha3_512_inc_init)(OQS_SHA3_sha3_512_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_absorb. - */ - void (*SHA3_sha3_512_inc_absorb)(OQS_SHA3_sha3_512_inc_ctx *state, const uint8_t *input, size_t inlen); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_finalize. - */ - void (*SHA3_sha3_512_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_512_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_ctx_release. - */ - void (*SHA3_sha3_512_inc_ctx_release)(OQS_SHA3_sha3_512_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_ctx_reset. - */ - void (*SHA3_sha3_512_inc_ctx_reset)(OQS_SHA3_sha3_512_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_sha3_512_inc_ctx_clone. - */ - void (*SHA3_sha3_512_inc_ctx_clone)(OQS_SHA3_sha3_512_inc_ctx *dest, const OQS_SHA3_sha3_512_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_shake128. - */ - void (*SHA3_shake128)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA3_shake128_inc_init. - */ - void (*SHA3_shake128_inc_init)(OQS_SHA3_shake128_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_inc_absorb. - */ - void (*SHA3_shake128_inc_absorb)(OQS_SHA3_shake128_inc_ctx *state, const uint8_t *input, size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake128_inc_finalize. - */ - void (*SHA3_shake128_inc_finalize)(OQS_SHA3_shake128_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_inc_squeeze. - */ - void (*SHA3_shake128_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake128_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_inc_ctx_release. - */ - void (*SHA3_shake128_inc_ctx_release)(OQS_SHA3_shake128_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_inc_ctx_clone. - */ - void (*SHA3_shake128_inc_ctx_clone)(OQS_SHA3_shake128_inc_ctx *dest, const OQS_SHA3_shake128_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_shake128_inc_ctx_reset. - */ - void (*SHA3_shake128_inc_ctx_reset)(OQS_SHA3_shake128_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256. - */ - void (*SHA3_shake256)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen); - - /** - * Implementation of function OQS_SHA3_shake256_inc_init. - */ - void (*SHA3_shake256_inc_init)(OQS_SHA3_shake256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_inc_absorb. - */ - void (*SHA3_shake256_inc_absorb)(OQS_SHA3_shake256_inc_ctx *state, const uint8_t *input, size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake256_inc_finalize. - */ - void (*SHA3_shake256_inc_finalize)(OQS_SHA3_shake256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_inc_squeeze. - */ - void (*SHA3_shake256_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_inc_ctx_release. - */ - void (*SHA3_shake256_inc_ctx_release)(OQS_SHA3_shake256_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_inc_ctx_clone. - */ - void (*SHA3_shake256_inc_ctx_clone)(OQS_SHA3_shake256_inc_ctx *dest, const OQS_SHA3_shake256_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_shake256_inc_ctx_reset. - */ - void (*SHA3_shake256_inc_ctx_reset)(OQS_SHA3_shake256_inc_ctx *state); -}; - -/** - * Set callback functions for SHA3 operations. - * - * This function may be called before OQS_init to switch the - * cryptographic provider for SHA3 operations. If it is not called, - * the default provider determined at build time will be used. - * - * @param new_callbacks Callback functions defined in OQS_SHA3_callbacks struct - */ -OQS_API void OQS_SHA3_set_callbacks(struct OQS_SHA3_callbacks *new_callbacks); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA3_OPS_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4.h deleted file mode 100644 index aabea5b..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4.h +++ /dev/null @@ -1,252 +0,0 @@ -/** - * \file sha3x4.h - * \brief SHA3, SHAKE, and cSHAKE functions; not part of the OQS public API - * - * Contains the API and documentation for SHA3 digest and SHAKE implementations. - * - * Note this is not part of the OQS public API: implementations within liboqs can use these - * functions, but external consumers of liboqs should not use these functions. - * - * \author John Underhill, Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA3X4_H -#define OQS_SHA3X4_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** - * \brief Seed 4 parallel SHAKE-128 instances, and generate 4 arrays of pseudo-random bytes. - * - * \warning The output array length must not be zero. - * - * \param out0 The first output byte array - * \param out1 The second output byte array - * \param out2 The third output byte array - * \param out3 The fourth output byte array - * \param outlen The number of output bytes to generate in every output array - * \param in0 The first input seed byte array - * \param in1 The second input seed byte array - * \param in2 The third input seed byte array - * \param in3 The fourth input seed byte array - * \param inlen The number of seed bytes to process from every input array - */ -void OQS_SHA3_shake128_x4( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - -/** - * \brief Initialize the state for four-way parallel incremental SHAKE-128 API. - * - * \param state The function state to be initialized; must be allocated - */ -void OQS_SHA3_shake128_x4_inc_init(OQS_SHA3_shake128_x4_inc_ctx *state); - -/** - * \brief Four-way parallel SHAKE-128 absorb function. - * Absorb four input messages of the same length into four parallel states. - * - * \warning State must be initialized by the caller. - * - * \param state The function state; must be initialized - * \param in0 The input to be absorbed into first instance - * \param in1 The input to be absorbed into first instance - * \param in2 The input to be absorbed into first instance - * \param in3 The input to be absorbed into first instance - * \param inlen The number of bytes to process from each input array - */ -void OQS_SHA3_shake128_x4_inc_absorb( - OQS_SHA3_shake128_x4_inc_ctx *state, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - -/** - * \brief Four-way parallel SHAKE-128 finalize function. - * Prepares the states for squeezing. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake128_x4_inc_finalize(OQS_SHA3_shake128_x4_inc_ctx *state); - -/** - * \brief Four-way parallel SHAKE-128 squeeze function. - * Extracts from four parallel states into four output buffers - * - * \param out0 output buffer for the first instance - * \param out1 output buffer for the second instance - * \param out2 output buffer for the third instance - * \param out3 output buffer for the fourth instance - * \param outlen bytes of outbut buffer - * \param state The function state; must be initialized and finalized. - */ -void OQS_SHA3_shake128_x4_inc_squeeze( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - OQS_SHA3_shake128_x4_inc_ctx *state); - -/** - * \brief Frees the state for the four-way parallel incremental SHAKE-128 API. - * - * \param state The state to free - */ -void OQS_SHA3_shake128_x4_inc_ctx_release(OQS_SHA3_shake128_x4_inc_ctx *state); - -/** - * \brief Copies the state for the four-way parallel incremental SHAKE-128 API. - * - * \param dest The state to copy into; must be initialized - * \param src The state to copy from; must be initialized - */ -void OQS_SHA3_shake128_x4_inc_ctx_clone( - OQS_SHA3_shake128_x4_inc_ctx *dest, - const OQS_SHA3_shake128_x4_inc_ctx *src); - -/** - * \brief Resets the state for the four-way parallel incremental SHAKE-128 API. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake128_x4_inc_ctx_reset(OQS_SHA3_shake128_x4_inc_ctx *state); - -/* SHAKE256 */ - -/** - * \brief Seed 4 parallel SHAKE-256 instances, and generate 4 arrays of pseudo-random bytes. - * - * Uses a vectorized (AVX2) implementation of SHAKE-256 if available. - * - * \warning The output array length must not be zero. - * - * \param out0 The first output byte array - * \param out1 The second output byte array - * \param out2 The third output byte array - * \param out3 The fourth output byte array - * \param outlen The number of output bytes to generate in every output array - * \param in0 The first input seed byte array - * \param in1 The second input seed byte array - * \param in2 The third input seed byte array - * \param in3 The fourth input seed byte array - * \param inlen The number of seed bytes to process from every input array - */ -void OQS_SHA3_shake256_x4( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - -/** - * \brief Initialize the state for four-way parallel incremental SHAKE-256 API. - * - * \param state The function state to be initialized; must be allocated - */ -void OQS_SHA3_shake256_x4_inc_init(OQS_SHA3_shake256_x4_inc_ctx *state); - -/** - * \brief Four-way parallel SHAKE-256 absorb function. - * Absorb four input messages of the same length into four parallel states. - * - * \warning State must be initialized by the caller. - * - * \param state The function state; must be initialized - * \param in0 The input to be absorbed into first instance - * \param in1 The input to be absorbed into first instance - * \param in2 The input to be absorbed into first instance - * \param in3 The input to be absorbed into first instance - * \param inlen The number of bytes to process from each input array - */ -void OQS_SHA3_shake256_x4_inc_absorb( - OQS_SHA3_shake256_x4_inc_ctx *state, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - -/** - * \brief Four-way parallel SHAKE-256 finalize function. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake256_x4_inc_finalize(OQS_SHA3_shake256_x4_inc_ctx *state); - -/** - * \brief Four-way parallel SHAKE-256 squeeze function. - * Extracts from four parallel states into four output buffers - * - * \param out0 output buffer for the first instance - * \param out1 output buffer for the second instance - * \param out2 output buffer for the third instance - * \param out3 output buffer for the fourth instance - * \param outlen bytes of outbut buffer - * \param state The function state; must be initialized and finalized - */ -void OQS_SHA3_shake256_x4_inc_squeeze( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - OQS_SHA3_shake256_x4_inc_ctx *state); - -/** - * \brief Frees the state for the four-way parallel incremental SHAKE-256 API. - * - * \param state The state to free - */ -void OQS_SHA3_shake256_x4_inc_ctx_release(OQS_SHA3_shake256_x4_inc_ctx *state); - -/** - * \brief Copies the state for the four-way parallel incremental SHAKE-256 API. - * - * \warning dest must be allocated. dest must be freed by calling - * OQS_SHA3_shake256_inc_ctx_release. - * - * \param dest The state to copy into; must be initialized - * \param src The state to copy from; must be initialized - */ -void OQS_SHA3_shake256_x4_inc_ctx_clone( - OQS_SHA3_shake256_x4_inc_ctx *dest, - const OQS_SHA3_shake256_x4_inc_ctx *src); - -/** - * \brief Resets the state for the four-way parallel incremental SHAKE-256 API. - * Allows a context to be re-used without free and init calls. - * - * \param state The function state; must be initialized - */ -void OQS_SHA3_shake256_x4_inc_ctx_reset(OQS_SHA3_shake256_x4_inc_ctx *state); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA3X4_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4_ops.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4_ops.h deleted file mode 100644 index 32e4cc3..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sha3x4_ops.h +++ /dev/null @@ -1,182 +0,0 @@ -/** - * \file sha3x4_ops.h - * \brief Header defining the callback API for OQS SHA3 and SHAKE - * - * \author John Underhill, Douglas Stebila - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SHA3X4_OPS_H -#define OQS_SHA3X4_OPS_H - -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -/** Data structure for the state of the four-way parallel incremental SHAKE-128 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_shake128_x4_inc_ctx; - -/** Data structure for the state of the four-way parallel incremental SHAKE-256 API. */ -typedef struct { - /** Internal state. */ - void *ctx; -} OQS_SHA3_shake256_x4_inc_ctx; - -/** Data structure implemented by cryptographic provider for the - * four-way parallel incremental SHAKE-256 operations. - */ -struct OQS_SHA3_x4_callbacks { - /** - * Implementation of function OQS_SHA3_shake128_x4. - */ - void (*SHA3_shake128_x4)( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_init. - */ - void (*SHA3_shake128_x4_inc_init)(OQS_SHA3_shake128_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_absorb. - */ - void (*SHA3_shake128_x4_inc_absorb)( - OQS_SHA3_shake128_x4_inc_ctx *state, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_finalize. - */ - void (*SHA3_shake128_x4_inc_finalize)(OQS_SHA3_shake128_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_squeeze. - */ - void (*SHA3_shake128_x4_inc_squeeze)( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - OQS_SHA3_shake128_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_ctx_release. - */ - void (*SHA3_shake128_x4_inc_ctx_release)(OQS_SHA3_shake128_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_ctx_clone. - */ - void (*SHA3_shake128_x4_inc_ctx_clone)( - OQS_SHA3_shake128_x4_inc_ctx *dest, - const OQS_SHA3_shake128_x4_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_shake128_x4_inc_ctx_reset. - */ - void (*SHA3_shake128_x4_inc_ctx_reset)(OQS_SHA3_shake128_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_x4. - */ - void (*SHA3_shake256_x4)( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_init. - */ - void (*SHA3_shake256_x4_inc_init)(OQS_SHA3_shake256_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_absorb. - */ - void (*SHA3_shake256_x4_inc_absorb)( - OQS_SHA3_shake256_x4_inc_ctx *state, - const uint8_t *in0, - const uint8_t *in1, - const uint8_t *in2, - const uint8_t *in3, - size_t inlen); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_finalize. - */ - void (*SHA3_shake256_x4_inc_finalize)(OQS_SHA3_shake256_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_squeeze. - */ - void (*SHA3_shake256_x4_inc_squeeze)( - uint8_t *out0, - uint8_t *out1, - uint8_t *out2, - uint8_t *out3, - size_t outlen, - OQS_SHA3_shake256_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_ctx_release. - */ - void (*SHA3_shake256_x4_inc_ctx_release)(OQS_SHA3_shake256_x4_inc_ctx *state); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_ctx_clone. - */ - void (*SHA3_shake256_x4_inc_ctx_clone)( - OQS_SHA3_shake256_x4_inc_ctx *dest, - const OQS_SHA3_shake256_x4_inc_ctx *src); - - /** - * Implementation of function OQS_SHA3_shake256_x4_inc_ctx_reset. - */ - void (*SHA3_shake256_x4_inc_ctx_reset)(OQS_SHA3_shake256_x4_inc_ctx *state); -}; - -/** - * Set callback functions for 4-parallel SHA3 operations. - * - * This function may be called before OQS_init to switch the - * cryptographic provider for 4-parallel SHA3 operations. If it is not - * called, the default provider determined at build time will be used. - * - * @param new_callbacks Callback functions defined in OQS_SHA3_x4_callbacks struct - */ -OQS_API void OQS_SHA3_x4_set_callbacks(struct OQS_SHA3_x4_callbacks *new_callbacks); - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SHA3X4_OPS_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig.h deleted file mode 100644 index d356e3f..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig.h +++ /dev/null @@ -1,770 +0,0 @@ -/** - * \file sig.h - * \brief Signature schemes - * - * The file `tests/example_sig.c` contains two examples on using the OQS_SIG API. - * - * The first example uses the individual scheme's algorithms directly and uses - * no dynamic memory allocation -- all buffers are allocated on the stack, with - * sizes indicated using preprocessor macros. Since algorithms can be disabled at - * compile-time, the programmer should wrap the code in \#ifdefs. - * - * The second example uses an OQS_SIG object to use an algorithm specified at - * runtime. Therefore it uses dynamic memory allocation -- all buffers must be - * malloc'ed by the programmer, with sizes indicated using the corresponding length - * member of the OQS_SIG object in question. Since algorithms can be disabled at - * compile-time, the programmer should check that the OQS_SIG object is not `NULL`. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SIG_H -#define OQS_SIG_H - -#include -#include -#include - -#include - -#if defined(__cplusplus) -extern "C" { -#endif - -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALG_IDENTIFIER_START -/** Algorithm identifier for ML-DSA-44 */ -#define OQS_SIG_alg_ml_dsa_44 "ML-DSA-44" -/** Algorithm identifier for ML-DSA-65 */ -#define OQS_SIG_alg_ml_dsa_65 "ML-DSA-65" -/** Algorithm identifier for ML-DSA-87 */ -#define OQS_SIG_alg_ml_dsa_87 "ML-DSA-87" -/** Algorithm identifier for Falcon-512 */ -#define OQS_SIG_alg_falcon_512 "Falcon-512" -/** Algorithm identifier for Falcon-1024 */ -#define OQS_SIG_alg_falcon_1024 "Falcon-1024" -/** Algorithm identifier for Falcon-padded-512 */ -#define OQS_SIG_alg_falcon_padded_512 "Falcon-padded-512" -/** Algorithm identifier for Falcon-padded-1024 */ -#define OQS_SIG_alg_falcon_padded_1024 "Falcon-padded-1024" -/** Algorithm identifier for SPHINCS+-SHA2-128f-simple */ -#define OQS_SIG_alg_sphincs_sha2_128f_simple "SPHINCS+-SHA2-128f-simple" -/** Algorithm identifier for SPHINCS+-SHA2-128s-simple */ -#define OQS_SIG_alg_sphincs_sha2_128s_simple "SPHINCS+-SHA2-128s-simple" -/** Algorithm identifier for SPHINCS+-SHA2-192f-simple */ -#define OQS_SIG_alg_sphincs_sha2_192f_simple "SPHINCS+-SHA2-192f-simple" -/** Algorithm identifier for SPHINCS+-SHA2-192s-simple */ -#define OQS_SIG_alg_sphincs_sha2_192s_simple "SPHINCS+-SHA2-192s-simple" -/** Algorithm identifier for SPHINCS+-SHA2-256f-simple */ -#define OQS_SIG_alg_sphincs_sha2_256f_simple "SPHINCS+-SHA2-256f-simple" -/** Algorithm identifier for SPHINCS+-SHA2-256s-simple */ -#define OQS_SIG_alg_sphincs_sha2_256s_simple "SPHINCS+-SHA2-256s-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-128f-simple */ -#define OQS_SIG_alg_sphincs_shake_128f_simple "SPHINCS+-SHAKE-128f-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-128s-simple */ -#define OQS_SIG_alg_sphincs_shake_128s_simple "SPHINCS+-SHAKE-128s-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-192f-simple */ -#define OQS_SIG_alg_sphincs_shake_192f_simple "SPHINCS+-SHAKE-192f-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-192s-simple */ -#define OQS_SIG_alg_sphincs_shake_192s_simple "SPHINCS+-SHAKE-192s-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-256f-simple */ -#define OQS_SIG_alg_sphincs_shake_256f_simple "SPHINCS+-SHAKE-256f-simple" -/** Algorithm identifier for SPHINCS+-SHAKE-256s-simple */ -#define OQS_SIG_alg_sphincs_shake_256s_simple "SPHINCS+-SHAKE-256s-simple" -/** Algorithm identifier for MAYO-1 */ -#define OQS_SIG_alg_mayo_1 "MAYO-1" -/** Algorithm identifier for MAYO-2 */ -#define OQS_SIG_alg_mayo_2 "MAYO-2" -/** Algorithm identifier for MAYO-3 */ -#define OQS_SIG_alg_mayo_3 "MAYO-3" -/** Algorithm identifier for MAYO-5 */ -#define OQS_SIG_alg_mayo_5 "MAYO-5" -/** Algorithm identifier for cross-rsdp-128-balanced */ -#define OQS_SIG_alg_cross_rsdp_128_balanced "cross-rsdp-128-balanced" -/** Algorithm identifier for cross-rsdp-128-fast */ -#define OQS_SIG_alg_cross_rsdp_128_fast "cross-rsdp-128-fast" -/** Algorithm identifier for cross-rsdp-128-small */ -#define OQS_SIG_alg_cross_rsdp_128_small "cross-rsdp-128-small" -/** Algorithm identifier for cross-rsdp-192-balanced */ -#define OQS_SIG_alg_cross_rsdp_192_balanced "cross-rsdp-192-balanced" -/** Algorithm identifier for cross-rsdp-192-fast */ -#define OQS_SIG_alg_cross_rsdp_192_fast "cross-rsdp-192-fast" -/** Algorithm identifier for cross-rsdp-192-small */ -#define OQS_SIG_alg_cross_rsdp_192_small "cross-rsdp-192-small" -/** Algorithm identifier for cross-rsdp-256-balanced */ -#define OQS_SIG_alg_cross_rsdp_256_balanced "cross-rsdp-256-balanced" -/** Algorithm identifier for cross-rsdp-256-fast */ -#define OQS_SIG_alg_cross_rsdp_256_fast "cross-rsdp-256-fast" -/** Algorithm identifier for cross-rsdp-256-small */ -#define OQS_SIG_alg_cross_rsdp_256_small "cross-rsdp-256-small" -/** Algorithm identifier for cross-rsdpg-128-balanced */ -#define OQS_SIG_alg_cross_rsdpg_128_balanced "cross-rsdpg-128-balanced" -/** Algorithm identifier for cross-rsdpg-128-fast */ -#define OQS_SIG_alg_cross_rsdpg_128_fast "cross-rsdpg-128-fast" -/** Algorithm identifier for cross-rsdpg-128-small */ -#define OQS_SIG_alg_cross_rsdpg_128_small "cross-rsdpg-128-small" -/** Algorithm identifier for cross-rsdpg-192-balanced */ -#define OQS_SIG_alg_cross_rsdpg_192_balanced "cross-rsdpg-192-balanced" -/** Algorithm identifier for cross-rsdpg-192-fast */ -#define OQS_SIG_alg_cross_rsdpg_192_fast "cross-rsdpg-192-fast" -/** Algorithm identifier for cross-rsdpg-192-small */ -#define OQS_SIG_alg_cross_rsdpg_192_small "cross-rsdpg-192-small" -/** Algorithm identifier for cross-rsdpg-256-balanced */ -#define OQS_SIG_alg_cross_rsdpg_256_balanced "cross-rsdpg-256-balanced" -/** Algorithm identifier for cross-rsdpg-256-fast */ -#define OQS_SIG_alg_cross_rsdpg_256_fast "cross-rsdpg-256-fast" -/** Algorithm identifier for cross-rsdpg-256-small */ -#define OQS_SIG_alg_cross_rsdpg_256_small "cross-rsdpg-256-small" -/** Algorithm identifier for OV-Is */ -#define OQS_SIG_alg_uov_ov_Is "OV-Is" -/** Algorithm identifier for OV-Ip */ -#define OQS_SIG_alg_uov_ov_Ip "OV-Ip" -/** Algorithm identifier for OV-III */ -#define OQS_SIG_alg_uov_ov_III "OV-III" -/** Algorithm identifier for OV-V */ -#define OQS_SIG_alg_uov_ov_V "OV-V" -/** Algorithm identifier for OV-Is-pkc */ -#define OQS_SIG_alg_uov_ov_Is_pkc "OV-Is-pkc" -/** Algorithm identifier for OV-Ip-pkc */ -#define OQS_SIG_alg_uov_ov_Ip_pkc "OV-Ip-pkc" -/** Algorithm identifier for OV-III-pkc */ -#define OQS_SIG_alg_uov_ov_III_pkc "OV-III-pkc" -/** Algorithm identifier for OV-V-pkc */ -#define OQS_SIG_alg_uov_ov_V_pkc "OV-V-pkc" -/** Algorithm identifier for OV-Is-pkc-skc */ -#define OQS_SIG_alg_uov_ov_Is_pkc_skc "OV-Is-pkc-skc" -/** Algorithm identifier for OV-Ip-pkc-skc */ -#define OQS_SIG_alg_uov_ov_Ip_pkc_skc "OV-Ip-pkc-skc" -/** Algorithm identifier for OV-III-pkc-skc */ -#define OQS_SIG_alg_uov_ov_III_pkc_skc "OV-III-pkc-skc" -/** Algorithm identifier for OV-V-pkc-skc */ -#define OQS_SIG_alg_uov_ov_V_pkc_skc "OV-V-pkc-skc" -/** Algorithm identifier for SNOVA_24_5_4 */ -#define OQS_SIG_alg_snova_SNOVA_24_5_4 "SNOVA_24_5_4" -/** Algorithm identifier for SNOVA_24_5_4_SHAKE */ -#define OQS_SIG_alg_snova_SNOVA_24_5_4_SHAKE "SNOVA_24_5_4_SHAKE" -/** Algorithm identifier for SNOVA_24_5_4_esk */ -#define OQS_SIG_alg_snova_SNOVA_24_5_4_esk "SNOVA_24_5_4_esk" -/** Algorithm identifier for SNOVA_24_5_4_SHAKE_esk */ -#define OQS_SIG_alg_snova_SNOVA_24_5_4_SHAKE_esk "SNOVA_24_5_4_SHAKE_esk" -/** Algorithm identifier for SNOVA_37_17_2 */ -#define OQS_SIG_alg_snova_SNOVA_37_17_2 "SNOVA_37_17_2" -/** Algorithm identifier for SNOVA_25_8_3 */ -#define OQS_SIG_alg_snova_SNOVA_25_8_3 "SNOVA_25_8_3" -/** Algorithm identifier for SNOVA_56_25_2 */ -#define OQS_SIG_alg_snova_SNOVA_56_25_2 "SNOVA_56_25_2" -/** Algorithm identifier for SNOVA_49_11_3 */ -#define OQS_SIG_alg_snova_SNOVA_49_11_3 "SNOVA_49_11_3" -/** Algorithm identifier for SNOVA_37_8_4 */ -#define OQS_SIG_alg_snova_SNOVA_37_8_4 "SNOVA_37_8_4" -/** Algorithm identifier for SNOVA_24_5_5 */ -#define OQS_SIG_alg_snova_SNOVA_24_5_5 "SNOVA_24_5_5" -/** Algorithm identifier for SNOVA_60_10_4 */ -#define OQS_SIG_alg_snova_SNOVA_60_10_4 "SNOVA_60_10_4" -/** Algorithm identifier for SNOVA_29_6_5 */ -#define OQS_SIG_alg_snova_SNOVA_29_6_5 "SNOVA_29_6_5" -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALG_IDENTIFIER_END -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ALGID_START -/** Algorithm identifier for slh_dsa_pure_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_128s "SLH_DSA_PURE_SHA2_128S" -/** Algorithm identifier for slh_dsa_pure_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_128f "SLH_DSA_PURE_SHA2_128F" -/** Algorithm identifier for slh_dsa_pure_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_192s "SLH_DSA_PURE_SHA2_192S" -/** Algorithm identifier for slh_dsa_pure_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_192f "SLH_DSA_PURE_SHA2_192F" -/** Algorithm identifier for slh_dsa_pure_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_256s "SLH_DSA_PURE_SHA2_256S" -/** Algorithm identifier for slh_dsa_pure_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_pure_sha2_256f "SLH_DSA_PURE_SHA2_256F" -/** Algorithm identifier for slh_dsa_pure_shake_128s */ -#define OQS_SIG_alg_slh_dsa_pure_shake_128s "SLH_DSA_PURE_SHAKE_128S" -/** Algorithm identifier for slh_dsa_pure_shake_128f */ -#define OQS_SIG_alg_slh_dsa_pure_shake_128f "SLH_DSA_PURE_SHAKE_128F" -/** Algorithm identifier for slh_dsa_pure_shake_192s */ -#define OQS_SIG_alg_slh_dsa_pure_shake_192s "SLH_DSA_PURE_SHAKE_192S" -/** Algorithm identifier for slh_dsa_pure_shake_192f */ -#define OQS_SIG_alg_slh_dsa_pure_shake_192f "SLH_DSA_PURE_SHAKE_192F" -/** Algorithm identifier for slh_dsa_pure_shake_256s */ -#define OQS_SIG_alg_slh_dsa_pure_shake_256s "SLH_DSA_PURE_SHAKE_256S" -/** Algorithm identifier for slh_dsa_pure_shake_256f */ -#define OQS_SIG_alg_slh_dsa_pure_shake_256f "SLH_DSA_PURE_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_128s "SLH_DSA_SHA2_224_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_128f "SLH_DSA_SHA2_224_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_192s "SLH_DSA_SHA2_224_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_192f "SLH_DSA_SHA2_224_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_256s "SLH_DSA_SHA2_224_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_sha2_256f "SLH_DSA_SHA2_224_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_128s "SLH_DSA_SHA2_224_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_128f "SLH_DSA_SHA2_224_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_192s "SLH_DSA_SHA2_224_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_192f "SLH_DSA_SHA2_224_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_256s "SLH_DSA_SHA2_224_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_224_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_224_prehash_shake_256f "SLH_DSA_SHA2_224_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_128s "SLH_DSA_SHA2_256_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_128f "SLH_DSA_SHA2_256_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_192s "SLH_DSA_SHA2_256_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_192f "SLH_DSA_SHA2_256_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_256s "SLH_DSA_SHA2_256_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_sha2_256f "SLH_DSA_SHA2_256_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_128s "SLH_DSA_SHA2_256_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_128f "SLH_DSA_SHA2_256_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_192s "SLH_DSA_SHA2_256_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_192f "SLH_DSA_SHA2_256_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_256s "SLH_DSA_SHA2_256_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_256_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_256_prehash_shake_256f "SLH_DSA_SHA2_256_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_128s "SLH_DSA_SHA2_384_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_128f "SLH_DSA_SHA2_384_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_192s "SLH_DSA_SHA2_384_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_192f "SLH_DSA_SHA2_384_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_256s "SLH_DSA_SHA2_384_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_sha2_256f "SLH_DSA_SHA2_384_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_128s "SLH_DSA_SHA2_384_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_128f "SLH_DSA_SHA2_384_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_192s "SLH_DSA_SHA2_384_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_192f "SLH_DSA_SHA2_384_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_256s "SLH_DSA_SHA2_384_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_384_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_384_prehash_shake_256f "SLH_DSA_SHA2_384_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_128s "SLH_DSA_SHA2_512_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_128f "SLH_DSA_SHA2_512_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_192s "SLH_DSA_SHA2_512_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_192f "SLH_DSA_SHA2_512_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_256s "SLH_DSA_SHA2_512_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_sha2_256f "SLH_DSA_SHA2_512_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_128s "SLH_DSA_SHA2_512_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_128f "SLH_DSA_SHA2_512_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_192s "SLH_DSA_SHA2_512_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_192f "SLH_DSA_SHA2_512_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_256s "SLH_DSA_SHA2_512_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_512_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_prehash_shake_256f "SLH_DSA_SHA2_512_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_128s "SLH_DSA_SHA2_512_224_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_128f "SLH_DSA_SHA2_512_224_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_192s "SLH_DSA_SHA2_512_224_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_192f "SLH_DSA_SHA2_512_224_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_256s "SLH_DSA_SHA2_512_224_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_sha2_256f "SLH_DSA_SHA2_512_224_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_128s "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_128f "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_192s "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_192f "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_256s "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_512_224_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_224_prehash_shake_256f "SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_128s "SLH_DSA_SHA2_512_256_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_128f "SLH_DSA_SHA2_512_256_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_192s "SLH_DSA_SHA2_512_256_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_192f "SLH_DSA_SHA2_512_256_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_256s "SLH_DSA_SHA2_512_256_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_sha2_256f "SLH_DSA_SHA2_512_256_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_128s "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_128f "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_192s "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_192f "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_256s "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha2_512_256_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha2_512_256_prehash_shake_256f "SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_128s "SLH_DSA_SHA3_224_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_128f "SLH_DSA_SHA3_224_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_192s "SLH_DSA_SHA3_224_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_192f "SLH_DSA_SHA3_224_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_256s "SLH_DSA_SHA3_224_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_sha2_256f "SLH_DSA_SHA3_224_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_128s "SLH_DSA_SHA3_224_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_128f "SLH_DSA_SHA3_224_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_192s "SLH_DSA_SHA3_224_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_192f "SLH_DSA_SHA3_224_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_256s "SLH_DSA_SHA3_224_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha3_224_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_224_prehash_shake_256f "SLH_DSA_SHA3_224_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_128s "SLH_DSA_SHA3_256_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_128f "SLH_DSA_SHA3_256_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_192s "SLH_DSA_SHA3_256_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_192f "SLH_DSA_SHA3_256_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_256s "SLH_DSA_SHA3_256_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_sha2_256f "SLH_DSA_SHA3_256_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_128s "SLH_DSA_SHA3_256_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_128f "SLH_DSA_SHA3_256_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_192s "SLH_DSA_SHA3_256_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_192f "SLH_DSA_SHA3_256_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_256s "SLH_DSA_SHA3_256_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha3_256_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_256_prehash_shake_256f "SLH_DSA_SHA3_256_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_128s "SLH_DSA_SHA3_384_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_128f "SLH_DSA_SHA3_384_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_192s "SLH_DSA_SHA3_384_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_192f "SLH_DSA_SHA3_384_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_256s "SLH_DSA_SHA3_384_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_sha2_256f "SLH_DSA_SHA3_384_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_128s "SLH_DSA_SHA3_384_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_128f "SLH_DSA_SHA3_384_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_192s "SLH_DSA_SHA3_384_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_192f "SLH_DSA_SHA3_384_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_256s "SLH_DSA_SHA3_384_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha3_384_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_384_prehash_shake_256f "SLH_DSA_SHA3_384_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_128s "SLH_DSA_SHA3_512_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_128f "SLH_DSA_SHA3_512_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_192s "SLH_DSA_SHA3_512_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_192f "SLH_DSA_SHA3_512_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_256s "SLH_DSA_SHA3_512_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_sha2_256f "SLH_DSA_SHA3_512_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_128s "SLH_DSA_SHA3_512_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_128f "SLH_DSA_SHA3_512_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_192s "SLH_DSA_SHA3_512_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_192f "SLH_DSA_SHA3_512_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_256s "SLH_DSA_SHA3_512_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_sha3_512_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_sha3_512_prehash_shake_256f "SLH_DSA_SHA3_512_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_128s "SLH_DSA_SHAKE_128_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_128f "SLH_DSA_SHAKE_128_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_192s "SLH_DSA_SHAKE_128_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_192f "SLH_DSA_SHAKE_128_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_256s "SLH_DSA_SHAKE_128_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_sha2_256f "SLH_DSA_SHAKE_128_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_128s "SLH_DSA_SHAKE_128_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_128f "SLH_DSA_SHAKE_128_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_192s "SLH_DSA_SHAKE_128_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_192f "SLH_DSA_SHAKE_128_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_256s "SLH_DSA_SHAKE_128_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_shake_128_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_shake_128_prehash_shake_256f "SLH_DSA_SHAKE_128_PREHASH_SHAKE_256F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_128s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_128s "SLH_DSA_SHAKE_256_PREHASH_SHA2_128S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_128f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_128f "SLH_DSA_SHAKE_256_PREHASH_SHA2_128F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_192s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_192s "SLH_DSA_SHAKE_256_PREHASH_SHA2_192S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_192f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_192f "SLH_DSA_SHAKE_256_PREHASH_SHA2_192F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_256s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_256s "SLH_DSA_SHAKE_256_PREHASH_SHA2_256S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_sha2_256f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_sha2_256f "SLH_DSA_SHAKE_256_PREHASH_SHA2_256F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_128s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_128s "SLH_DSA_SHAKE_256_PREHASH_SHAKE_128S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_128f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_128f "SLH_DSA_SHAKE_256_PREHASH_SHAKE_128F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_192s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_192s "SLH_DSA_SHAKE_256_PREHASH_SHAKE_192S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_192f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_192f "SLH_DSA_SHAKE_256_PREHASH_SHAKE_192F" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_256s */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_256s "SLH_DSA_SHAKE_256_PREHASH_SHAKE_256S" -/** Algorithm identifier for slh_dsa_shake_256_prehash_shake_256f */ -#define OQS_SIG_alg_slh_dsa_shake_256_prehash_shake_256f "SLH_DSA_SHAKE_256_PREHASH_SHAKE_256F" -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ALGID_END -// EDIT-WHEN-ADDING-SIG -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ALGS_LENGTH_START - -/** Number of algorithm identifiers above. */ -#define OQS_SIG_SLH_DSA_algs_length 156 -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_ALGS_LENGTH_END -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALGS_LENGTH_START - -/** Number of algorithm identifiers above. */ -#define OQS_SIG_algs_length 65 + OQS_SIG_SLH_DSA_algs_length -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_ALGS_LENGTH_END - -/** - * Returns identifiers for available signature schemes in liboqs. Used with OQS_SIG_new. - * - * Note that algorithm identifiers are present in this list even when the algorithm is disabled - * at compile time. - * - * @param[in] i Index of the algorithm identifier to return, 0 <= i < OQS_SIG_algs_length - * @return Algorithm identifier as a string, or NULL. - */ -OQS_API const char *OQS_SIG_alg_identifier(size_t i); - -/** - * Returns the number of signature mechanisms in liboqs. They can be enumerated with - * OQS_SIG_alg_identifier. - * - * Note that some mechanisms may be disabled at compile time. - * - * @return The number of signature mechanisms. - */ -OQS_API int OQS_SIG_alg_count(void); - -/** - * Indicates whether the specified algorithm was enabled at compile-time or not. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_SIG_algs`. - * @return 1 if enabled, 0 if disabled or not found - */ -OQS_API int OQS_SIG_alg_is_enabled(const char *method_name); - -/** - * Signature schemes object - */ -typedef struct OQS_SIG { - - /** Printable string representing the name of the signature scheme. */ - const char *method_name; - - /** - * Printable string representing the version of the cryptographic algorithm. - * - * Implementations with the same method_name and same alg_version will be interoperable. - * See README.md for information about algorithm compatibility. - */ - const char *alg_version; - - /** The NIST security level (1, 2, 3, 4, 5) claimed in this algorithm's original NIST submission. */ - uint8_t claimed_nist_level; - - /** Whether the signature offers EUF-CMA security (TRUE) or not (FALSE). */ - bool euf_cma; - - /** Whether the signature offers SUF-CMA security (TRUE) or not (FALSE). */ - bool suf_cma; - - /** Whether the signature supports signing with a context string (TRUE) or not (FALSE). */ - bool sig_with_ctx_support; - - /** The length, in bytes, of public keys for this signature scheme. */ - size_t length_public_key; - /** The length, in bytes, of secret keys for this signature scheme. */ - size_t length_secret_key; - /** The (maximum) length, in bytes, of signatures for this signature scheme. */ - size_t length_signature; - - /** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*keypair)(uint8_t *public_key, uint8_t *secret_key); - - /** - * Signature generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `signature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[out] signature The signature on the message represented as a byte string. - * @param[out] signature_len The actual length of the signature. May be smaller than `length_signature` for some algorithms since some algorithms have variable length signatures. - * @param[in] message The message to sign represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*sign)(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); - - /** - * Signature generation algorithm, with custom context string. - * - * Caller is responsible for allocating sufficient memory for `signature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[out] signature The signature on the message represented as a byte string. - * @param[out] signature_len The actual length of the signature. May be smaller than `length_signature` for some algorithms since some algorithms have variable length signatures. - * @param[in] message The message to sign represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] ctx_str The context string used for the signature. This value can be set to NULL if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] ctx_str_len The context string used for the signature. This value can be set to 0 if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*sign_with_ctx_str)(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx_str, size_t ctx_str_len, const uint8_t *secret_key); - - /** - * Signature verification algorithm. - * - * @param[in] message The message represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*verify)(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); - - /** - * Signature verification algorithm, with custom context string. - * - * @param[in] message The message represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] ctx_str The context string for the signature. This value can be set to NULL if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] ctx_str_len The length of the context string. This value can be set to 0 if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*verify_with_ctx_str)(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx_str, size_t ctx_str_len, const uint8_t *public_key); - - -} OQS_SIG; - -/** - * Constructs an OQS_SIG object for a particular algorithm. - * - * Callers should always check whether the return value is `NULL`, which indicates either than an - * invalid algorithm name was provided, or that the requested algorithm was disabled at compile-time. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_SIG_algs`. - * @return An OQS_SIG for the particular algorithm, or `NULL` if the algorithm has been disabled at compile-time. - */ -OQS_API OQS_SIG *OQS_SIG_new(const char *method_name); - -/** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` and - * `secret_key`, based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[in] sig The OQS_SIG object representing the signature scheme. - * @param[out] public_key The public key represented as a byte string. - * @param[out] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_keypair(const OQS_SIG *sig, uint8_t *public_key, uint8_t *secret_key); - -/** - * Signature generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `signnature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[in] sig The OQS_SIG object representing the signature scheme. - * @param[out] signature The signature on the message represented as a byte string. - * @param[out] signature_len The length of the signature. - * @param[in] message The message to sign represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_sign(const OQS_SIG *sig, uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); - -/** - * Signature generation algorithm, with custom context string. - * - * Caller is responsible for allocating sufficient memory for `signature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_*_length_*`. - * - * @param[in] sig The OQS_SIG object representing the signature scheme. - * @param[out] signature The signature on the message represented as a byte string. - * @param[out] signature_len The actual length of the signature. May be smaller than `length_signature` for some algorithms since some algorithms have variable length signatures. - * @param[in] message The message to sign represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] ctx_str The context string used for the signature. This value can be set to NULL if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] ctx_str_len The context string used for the signature. This value can be set to 0 if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] secret_key The secret key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_sign_with_ctx_str(const OQS_SIG *sig, uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx_str, size_t ctx_str_len, const uint8_t *secret_key); - -/** - * Signature verification algorithm. - * - * @param[in] sig The OQS_SIG object representing the signature scheme. - * @param[in] message The message represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_verify(const OQS_SIG *sig, const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); - -/** - * Signature verification algorithm, with custom context string. - * - * @param[in] sig The OQS_SIG object representing the signature scheme. - * @param[in] message The message represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] ctx_str The context string used for the signature. This value can be set to NULL if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] ctx_str_len The context string used for the signature. This value can be set to 0 if a context string is not needed (i.e., for algorithms that do not support context strings or if an empty context string is used). - * @param[in] public_key The public key represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_verify_with_ctx_str(const OQS_SIG *sig, const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx_str, size_t ctx_str_len, const uint8_t *public_key); - -/** - * Frees an OQS_SIG object that was constructed by OQS_SIG_new. - * - * @param[in] sig The OQS_SIG object to free. - */ -OQS_API void OQS_SIG_free(OQS_SIG *sig); - -/** - * Indicates whether the specified signature algorithm supports signing with a context string. - * - * @param[in] alg_name Name of the desired algorithm; one of the names in `OQS_SIG_algs`. - * @return true if the algorithm supports context string signing, false otherwise. - */ -OQS_API bool OQS_SIG_supports_ctx_str(const char *alg_name); - -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_INCLUDE_START -#ifdef OQS_ENABLE_SIG_ML_DSA -#include -#endif /* OQS_ENABLE_SIG_ML_DSA */ -#ifdef OQS_ENABLE_SIG_FALCON -#include -#endif /* OQS_ENABLE_SIG_FALCON */ -#ifdef OQS_ENABLE_SIG_SPHINCS -#include -#endif /* OQS_ENABLE_SIG_SPHINCS */ -#ifdef OQS_ENABLE_SIG_MAYO -#include -#endif /* OQS_ENABLE_SIG_MAYO */ -#ifdef OQS_ENABLE_SIG_CROSS -#include -#endif /* OQS_ENABLE_SIG_CROSS */ -#ifdef OQS_ENABLE_SIG_UOV -#include -#endif /* OQS_ENABLE_SIG_UOV */ -#ifdef OQS_ENABLE_SIG_SNOVA -#include -#endif /* OQS_ENABLE_SIG_SNOVA */ -///// OQS_COPY_FROM_UPSTREAM_FRAGMENT_INCLUDE_END -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_INCLUDE_START -#ifdef OQS_ENABLE_SIG_SLH_DSA -#include -#endif /* OQS_ENABLE_SIG_SLH_DSA */ -///// OQS_COPY_FROM_SLH_DSA_FRAGMENT_INCLUDE_END -// EDIT-WHEN-ADDING-SIG - -#if defined(__cplusplus) -} // extern "C" -#endif - -#endif // OQS_SIG_H diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_cross.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_cross.h deleted file mode 100644 index 2832622..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_cross.h +++ /dev/null @@ -1,242 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_CROSS_H -#define OQS_SIG_CROSS_H - -#include - -#if defined(OQS_ENABLE_SIG_cross_rsdp_128_balanced) -#define OQS_SIG_cross_rsdp_128_balanced_length_public_key 77 -#define OQS_SIG_cross_rsdp_128_balanced_length_secret_key 32 -#define OQS_SIG_cross_rsdp_128_balanced_length_signature 13152 - -OQS_SIG *OQS_SIG_cross_rsdp_128_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_128_fast) -#define OQS_SIG_cross_rsdp_128_fast_length_public_key 77 -#define OQS_SIG_cross_rsdp_128_fast_length_secret_key 32 -#define OQS_SIG_cross_rsdp_128_fast_length_signature 18432 - -OQS_SIG *OQS_SIG_cross_rsdp_128_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_128_small) -#define OQS_SIG_cross_rsdp_128_small_length_public_key 77 -#define OQS_SIG_cross_rsdp_128_small_length_secret_key 32 -#define OQS_SIG_cross_rsdp_128_small_length_signature 12432 - -OQS_SIG *OQS_SIG_cross_rsdp_128_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_128_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_192_balanced) -#define OQS_SIG_cross_rsdp_192_balanced_length_public_key 115 -#define OQS_SIG_cross_rsdp_192_balanced_length_secret_key 48 -#define OQS_SIG_cross_rsdp_192_balanced_length_signature 29853 - -OQS_SIG *OQS_SIG_cross_rsdp_192_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_192_fast) -#define OQS_SIG_cross_rsdp_192_fast_length_public_key 115 -#define OQS_SIG_cross_rsdp_192_fast_length_secret_key 48 -#define OQS_SIG_cross_rsdp_192_fast_length_signature 41406 - -OQS_SIG *OQS_SIG_cross_rsdp_192_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_192_small) -#define OQS_SIG_cross_rsdp_192_small_length_public_key 115 -#define OQS_SIG_cross_rsdp_192_small_length_secret_key 48 -#define OQS_SIG_cross_rsdp_192_small_length_signature 28391 - -OQS_SIG *OQS_SIG_cross_rsdp_192_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_192_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_256_balanced) -#define OQS_SIG_cross_rsdp_256_balanced_length_public_key 153 -#define OQS_SIG_cross_rsdp_256_balanced_length_secret_key 64 -#define OQS_SIG_cross_rsdp_256_balanced_length_signature 53527 - -OQS_SIG *OQS_SIG_cross_rsdp_256_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_256_fast) -#define OQS_SIG_cross_rsdp_256_fast_length_public_key 153 -#define OQS_SIG_cross_rsdp_256_fast_length_secret_key 64 -#define OQS_SIG_cross_rsdp_256_fast_length_signature 74590 - -OQS_SIG *OQS_SIG_cross_rsdp_256_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdp_256_small) -#define OQS_SIG_cross_rsdp_256_small_length_public_key 153 -#define OQS_SIG_cross_rsdp_256_small_length_secret_key 64 -#define OQS_SIG_cross_rsdp_256_small_length_signature 50818 - -OQS_SIG *OQS_SIG_cross_rsdp_256_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdp_256_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_128_balanced) -#define OQS_SIG_cross_rsdpg_128_balanced_length_public_key 54 -#define OQS_SIG_cross_rsdpg_128_balanced_length_secret_key 32 -#define OQS_SIG_cross_rsdpg_128_balanced_length_signature 9120 - -OQS_SIG *OQS_SIG_cross_rsdpg_128_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_128_fast) -#define OQS_SIG_cross_rsdpg_128_fast_length_public_key 54 -#define OQS_SIG_cross_rsdpg_128_fast_length_secret_key 32 -#define OQS_SIG_cross_rsdpg_128_fast_length_signature 11980 - -OQS_SIG *OQS_SIG_cross_rsdpg_128_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_128_small) -#define OQS_SIG_cross_rsdpg_128_small_length_public_key 54 -#define OQS_SIG_cross_rsdpg_128_small_length_secret_key 32 -#define OQS_SIG_cross_rsdpg_128_small_length_signature 8960 - -OQS_SIG *OQS_SIG_cross_rsdpg_128_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_128_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_192_balanced) -#define OQS_SIG_cross_rsdpg_192_balanced_length_public_key 83 -#define OQS_SIG_cross_rsdpg_192_balanced_length_secret_key 48 -#define OQS_SIG_cross_rsdpg_192_balanced_length_signature 22464 - -OQS_SIG *OQS_SIG_cross_rsdpg_192_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_192_fast) -#define OQS_SIG_cross_rsdpg_192_fast_length_public_key 83 -#define OQS_SIG_cross_rsdpg_192_fast_length_secret_key 48 -#define OQS_SIG_cross_rsdpg_192_fast_length_signature 26772 - -OQS_SIG *OQS_SIG_cross_rsdpg_192_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_192_small) -#define OQS_SIG_cross_rsdpg_192_small_length_public_key 83 -#define OQS_SIG_cross_rsdpg_192_small_length_secret_key 48 -#define OQS_SIG_cross_rsdpg_192_small_length_signature 20452 - -OQS_SIG *OQS_SIG_cross_rsdpg_192_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_192_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_256_balanced) -#define OQS_SIG_cross_rsdpg_256_balanced_length_public_key 106 -#define OQS_SIG_cross_rsdpg_256_balanced_length_secret_key 64 -#define OQS_SIG_cross_rsdpg_256_balanced_length_signature 40100 - -OQS_SIG *OQS_SIG_cross_rsdpg_256_balanced_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_balanced_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_balanced_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_balanced_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_balanced_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_balanced_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_256_fast) -#define OQS_SIG_cross_rsdpg_256_fast_length_public_key 106 -#define OQS_SIG_cross_rsdpg_256_fast_length_secret_key 64 -#define OQS_SIG_cross_rsdpg_256_fast_length_signature 48102 - -OQS_SIG *OQS_SIG_cross_rsdpg_256_fast_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_fast_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_fast_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_fast_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_fast_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_fast_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_cross_rsdpg_256_small) -#define OQS_SIG_cross_rsdpg_256_small_length_public_key 106 -#define OQS_SIG_cross_rsdpg_256_small_length_secret_key 64 -#define OQS_SIG_cross_rsdpg_256_small_length_signature 36454 - -OQS_SIG *OQS_SIG_cross_rsdpg_256_small_new(void); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_small_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_small_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_small_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_small_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_cross_rsdpg_256_small_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_falcon.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_falcon.h deleted file mode 100644 index 1721fe1..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_falcon.h +++ /dev/null @@ -1,60 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_FALCON_H -#define OQS_SIG_FALCON_H - -#include - -#if defined(OQS_ENABLE_SIG_falcon_512) -#define OQS_SIG_falcon_512_length_public_key 897 -#define OQS_SIG_falcon_512_length_secret_key 1281 -#define OQS_SIG_falcon_512_length_signature 752 - -OQS_SIG *OQS_SIG_falcon_512_new(void); -OQS_API OQS_STATUS OQS_SIG_falcon_512_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_512_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_512_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_falcon_512_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_512_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_falcon_1024) -#define OQS_SIG_falcon_1024_length_public_key 1793 -#define OQS_SIG_falcon_1024_length_secret_key 2305 -#define OQS_SIG_falcon_1024_length_signature 1462 - -OQS_SIG *OQS_SIG_falcon_1024_new(void); -OQS_API OQS_STATUS OQS_SIG_falcon_1024_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_1024_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_1024_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_falcon_1024_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_1024_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_falcon_padded_512) -#define OQS_SIG_falcon_padded_512_length_public_key 897 -#define OQS_SIG_falcon_padded_512_length_secret_key 1281 -#define OQS_SIG_falcon_padded_512_length_signature 666 - -OQS_SIG *OQS_SIG_falcon_padded_512_new(void); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_512_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_512_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_512_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_512_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_512_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_falcon_padded_1024) -#define OQS_SIG_falcon_padded_1024_length_public_key 1793 -#define OQS_SIG_falcon_padded_1024_length_secret_key 2305 -#define OQS_SIG_falcon_padded_1024_length_signature 1280 - -OQS_SIG *OQS_SIG_falcon_padded_1024_new(void); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_1024_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_1024_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_1024_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_1024_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_falcon_padded_1024_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_mayo.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_mayo.h deleted file mode 100644 index 237492e..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_mayo.h +++ /dev/null @@ -1,60 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_MAYO_H -#define OQS_SIG_MAYO_H - -#include - -#if defined(OQS_ENABLE_SIG_mayo_1) -#define OQS_SIG_mayo_1_length_public_key 1420 -#define OQS_SIG_mayo_1_length_secret_key 24 -#define OQS_SIG_mayo_1_length_signature 454 - -OQS_SIG *OQS_SIG_mayo_1_new(void); -OQS_API OQS_STATUS OQS_SIG_mayo_1_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_1_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_1_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_mayo_1_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_1_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_mayo_2) -#define OQS_SIG_mayo_2_length_public_key 4912 -#define OQS_SIG_mayo_2_length_secret_key 24 -#define OQS_SIG_mayo_2_length_signature 186 - -OQS_SIG *OQS_SIG_mayo_2_new(void); -OQS_API OQS_STATUS OQS_SIG_mayo_2_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_2_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_2_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_mayo_2_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_2_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_mayo_3) -#define OQS_SIG_mayo_3_length_public_key 2986 -#define OQS_SIG_mayo_3_length_secret_key 32 -#define OQS_SIG_mayo_3_length_signature 681 - -OQS_SIG *OQS_SIG_mayo_3_new(void); -OQS_API OQS_STATUS OQS_SIG_mayo_3_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_3_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_3_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_mayo_3_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_3_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_mayo_5) -#define OQS_SIG_mayo_5_length_public_key 5554 -#define OQS_SIG_mayo_5_length_secret_key 40 -#define OQS_SIG_mayo_5_length_signature 964 - -OQS_SIG *OQS_SIG_mayo_5_new(void); -OQS_API OQS_STATUS OQS_SIG_mayo_5_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_5_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_5_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_mayo_5_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_mayo_5_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_ml_dsa.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_ml_dsa.h deleted file mode 100644 index e5f00f4..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_ml_dsa.h +++ /dev/null @@ -1,47 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_ML_DSA_H -#define OQS_SIG_ML_DSA_H - -#include - -#if defined(OQS_ENABLE_SIG_ml_dsa_44) -#define OQS_SIG_ml_dsa_44_length_public_key 1312 -#define OQS_SIG_ml_dsa_44_length_secret_key 2560 -#define OQS_SIG_ml_dsa_44_length_signature 2420 - -OQS_SIG *OQS_SIG_ml_dsa_44_new(void); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_44_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_44_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_44_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_44_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_44_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_ml_dsa_65) -#define OQS_SIG_ml_dsa_65_length_public_key 1952 -#define OQS_SIG_ml_dsa_65_length_secret_key 4032 -#define OQS_SIG_ml_dsa_65_length_signature 3309 - -OQS_SIG *OQS_SIG_ml_dsa_65_new(void); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_65_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_65_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_65_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_65_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_65_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_ml_dsa_87) -#define OQS_SIG_ml_dsa_87_length_public_key 2592 -#define OQS_SIG_ml_dsa_87_length_secret_key 4896 -#define OQS_SIG_ml_dsa_87_length_signature 4627 - -OQS_SIG *OQS_SIG_ml_dsa_87_new(void); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_87_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_87_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_87_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_87_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_ml_dsa_87_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_slh_dsa.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_slh_dsa.h deleted file mode 100644 index f56ee2e..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_slh_dsa.h +++ /dev/null @@ -1,2192 +0,0 @@ - -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_SLH_DSA_H -#define OQS_SIG_SLH_DSA_H - -#include - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_128s) -#define OQS_SIG_slh_dsa_pure_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_pure_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_pure_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_128s) -#define OQS_SIG_slh_dsa_pure_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_pure_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_pure_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_128f) -#define OQS_SIG_slh_dsa_pure_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_pure_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_pure_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_128f) -#define OQS_SIG_slh_dsa_pure_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_pure_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_pure_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_192s) -#define OQS_SIG_slh_dsa_pure_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_pure_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_pure_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_192s) -#define OQS_SIG_slh_dsa_pure_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_pure_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_pure_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_192f) -#define OQS_SIG_slh_dsa_pure_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_pure_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_pure_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_192f) -#define OQS_SIG_slh_dsa_pure_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_pure_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_pure_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_256s) -#define OQS_SIG_slh_dsa_pure_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_pure_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_pure_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_256s) -#define OQS_SIG_slh_dsa_pure_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_pure_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_pure_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_sha2_256f) -#define OQS_SIG_slh_dsa_pure_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_pure_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_pure_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_pure_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_pure_shake_256f) -#define OQS_SIG_slh_dsa_pure_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_pure_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_pure_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_pure_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_pure_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_128s) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_128s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_128s) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_128s) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_length_signature 7856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_128f) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_128f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_128f) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_128f) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_length_public_key 32 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_length_secret_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_length_signature 17088 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_128f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_192s) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_192s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_192s) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_192s) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_length_signature 16224 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_192f) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_192f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_192f) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_192f) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_length_public_key 48 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_length_secret_key 96 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_length_signature 35664 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_192f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_256s) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_256s) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_256s) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_256s) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_length_signature 29792 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256s_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_sha2_256f) -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_sha2_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_224_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_224_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_256_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_256_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_384_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_384_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_224_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_224_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha2_512_256_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha2_512_256_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_224_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_224_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_256_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_256_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_384_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_384_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_sha3_512_prehash_shake_256f) -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_sha3_512_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_128_prehash_shake_256f) -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_128_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - - -#if defined(OQS_ENABLE_SIG_slh_dsa_shake_256_prehash_shake_256f) -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_length_public_key 64 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_length_secret_key 128 -#define OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_length_signature 49856 - -OQS_SIG *OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_new(void); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_slh_dsa_shake_256_prehash_shake_256f_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_snova.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_snova.h deleted file mode 100644 index 55243ed..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_snova.h +++ /dev/null @@ -1,164 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_SNOVA_H -#define OQS_SIG_SNOVA_H - -#include - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_24_5_4) -#define OQS_SIG_snova_SNOVA_24_5_4_length_public_key 1016 -#define OQS_SIG_snova_SNOVA_24_5_4_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_24_5_4_length_signature 248 - -OQS_SIG *OQS_SIG_snova_SNOVA_24_5_4_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE) -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_length_public_key 1016 -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_length_signature 248 - -OQS_SIG *OQS_SIG_snova_SNOVA_24_5_4_SHAKE_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_24_5_4_esk) -#define OQS_SIG_snova_SNOVA_24_5_4_esk_length_public_key 1016 -#define OQS_SIG_snova_SNOVA_24_5_4_esk_length_secret_key 36848 -#define OQS_SIG_snova_SNOVA_24_5_4_esk_length_signature 248 - -OQS_SIG *OQS_SIG_snova_SNOVA_24_5_4_esk_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_esk_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_esk_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_esk_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_esk_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_esk_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_24_5_4_SHAKE_esk) -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_length_public_key 1016 -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_length_secret_key 36848 -#define OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_length_signature 248 - -OQS_SIG *OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_4_SHAKE_esk_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_37_17_2) -#define OQS_SIG_snova_SNOVA_37_17_2_length_public_key 9842 -#define OQS_SIG_snova_SNOVA_37_17_2_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_37_17_2_length_signature 124 - -OQS_SIG *OQS_SIG_snova_SNOVA_37_17_2_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_17_2_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_17_2_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_17_2_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_17_2_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_17_2_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_25_8_3) -#define OQS_SIG_snova_SNOVA_25_8_3_length_public_key 2320 -#define OQS_SIG_snova_SNOVA_25_8_3_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_25_8_3_length_signature 165 - -OQS_SIG *OQS_SIG_snova_SNOVA_25_8_3_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_25_8_3_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_25_8_3_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_25_8_3_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_25_8_3_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_25_8_3_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_56_25_2) -#define OQS_SIG_snova_SNOVA_56_25_2_length_public_key 31266 -#define OQS_SIG_snova_SNOVA_56_25_2_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_56_25_2_length_signature 178 - -OQS_SIG *OQS_SIG_snova_SNOVA_56_25_2_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_56_25_2_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_56_25_2_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_56_25_2_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_56_25_2_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_56_25_2_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_49_11_3) -#define OQS_SIG_snova_SNOVA_49_11_3_length_public_key 6006 -#define OQS_SIG_snova_SNOVA_49_11_3_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_49_11_3_length_signature 286 - -OQS_SIG *OQS_SIG_snova_SNOVA_49_11_3_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_49_11_3_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_49_11_3_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_49_11_3_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_49_11_3_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_49_11_3_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_37_8_4) -#define OQS_SIG_snova_SNOVA_37_8_4_length_public_key 4112 -#define OQS_SIG_snova_SNOVA_37_8_4_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_37_8_4_length_signature 376 - -OQS_SIG *OQS_SIG_snova_SNOVA_37_8_4_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_8_4_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_8_4_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_8_4_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_8_4_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_37_8_4_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_24_5_5) -#define OQS_SIG_snova_SNOVA_24_5_5_length_public_key 1579 -#define OQS_SIG_snova_SNOVA_24_5_5_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_24_5_5_length_signature 379 - -OQS_SIG *OQS_SIG_snova_SNOVA_24_5_5_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_5_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_5_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_5_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_5_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_24_5_5_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_60_10_4) -#define OQS_SIG_snova_SNOVA_60_10_4_length_public_key 8016 -#define OQS_SIG_snova_SNOVA_60_10_4_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_60_10_4_length_signature 576 - -OQS_SIG *OQS_SIG_snova_SNOVA_60_10_4_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_60_10_4_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_60_10_4_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_60_10_4_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_60_10_4_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_60_10_4_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_snova_SNOVA_29_6_5) -#define OQS_SIG_snova_SNOVA_29_6_5_length_public_key 2716 -#define OQS_SIG_snova_SNOVA_29_6_5_length_secret_key 48 -#define OQS_SIG_snova_SNOVA_29_6_5_length_signature 454 - -OQS_SIG *OQS_SIG_snova_SNOVA_29_6_5_new(void); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_29_6_5_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_29_6_5_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_29_6_5_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_29_6_5_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_snova_SNOVA_29_6_5_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_sphincs.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_sphincs.h deleted file mode 100644 index 5b3e4f9..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_sphincs.h +++ /dev/null @@ -1,164 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_SPHINCS_H -#define OQS_SIG_SPHINCS_H - -#include - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_128f_simple) -#define OQS_SIG_sphincs_sha2_128f_simple_length_public_key 32 -#define OQS_SIG_sphincs_sha2_128f_simple_length_secret_key 64 -#define OQS_SIG_sphincs_sha2_128f_simple_length_signature 17088 - -OQS_SIG *OQS_SIG_sphincs_sha2_128f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_128s_simple) -#define OQS_SIG_sphincs_sha2_128s_simple_length_public_key 32 -#define OQS_SIG_sphincs_sha2_128s_simple_length_secret_key 64 -#define OQS_SIG_sphincs_sha2_128s_simple_length_signature 7856 - -OQS_SIG *OQS_SIG_sphincs_sha2_128s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_128s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_192f_simple) -#define OQS_SIG_sphincs_sha2_192f_simple_length_public_key 48 -#define OQS_SIG_sphincs_sha2_192f_simple_length_secret_key 96 -#define OQS_SIG_sphincs_sha2_192f_simple_length_signature 35664 - -OQS_SIG *OQS_SIG_sphincs_sha2_192f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_192s_simple) -#define OQS_SIG_sphincs_sha2_192s_simple_length_public_key 48 -#define OQS_SIG_sphincs_sha2_192s_simple_length_secret_key 96 -#define OQS_SIG_sphincs_sha2_192s_simple_length_signature 16224 - -OQS_SIG *OQS_SIG_sphincs_sha2_192s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_192s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_256f_simple) -#define OQS_SIG_sphincs_sha2_256f_simple_length_public_key 64 -#define OQS_SIG_sphincs_sha2_256f_simple_length_secret_key 128 -#define OQS_SIG_sphincs_sha2_256f_simple_length_signature 49856 - -OQS_SIG *OQS_SIG_sphincs_sha2_256f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_sha2_256s_simple) -#define OQS_SIG_sphincs_sha2_256s_simple_length_public_key 64 -#define OQS_SIG_sphincs_sha2_256s_simple_length_secret_key 128 -#define OQS_SIG_sphincs_sha2_256s_simple_length_signature 29792 - -OQS_SIG *OQS_SIG_sphincs_sha2_256s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_sha2_256s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_128f_simple) -#define OQS_SIG_sphincs_shake_128f_simple_length_public_key 32 -#define OQS_SIG_sphincs_shake_128f_simple_length_secret_key 64 -#define OQS_SIG_sphincs_shake_128f_simple_length_signature 17088 - -OQS_SIG *OQS_SIG_sphincs_shake_128f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_128s_simple) -#define OQS_SIG_sphincs_shake_128s_simple_length_public_key 32 -#define OQS_SIG_sphincs_shake_128s_simple_length_secret_key 64 -#define OQS_SIG_sphincs_shake_128s_simple_length_signature 7856 - -OQS_SIG *OQS_SIG_sphincs_shake_128s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_128s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_192f_simple) -#define OQS_SIG_sphincs_shake_192f_simple_length_public_key 48 -#define OQS_SIG_sphincs_shake_192f_simple_length_secret_key 96 -#define OQS_SIG_sphincs_shake_192f_simple_length_signature 35664 - -OQS_SIG *OQS_SIG_sphincs_shake_192f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_192s_simple) -#define OQS_SIG_sphincs_shake_192s_simple_length_public_key 48 -#define OQS_SIG_sphincs_shake_192s_simple_length_secret_key 96 -#define OQS_SIG_sphincs_shake_192s_simple_length_signature 16224 - -OQS_SIG *OQS_SIG_sphincs_shake_192s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_192s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_256f_simple) -#define OQS_SIG_sphincs_shake_256f_simple_length_public_key 64 -#define OQS_SIG_sphincs_shake_256f_simple_length_secret_key 128 -#define OQS_SIG_sphincs_shake_256f_simple_length_signature 49856 - -OQS_SIG *OQS_SIG_sphincs_shake_256f_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256f_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256f_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256f_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256f_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256f_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_sphincs_shake_256s_simple) -#define OQS_SIG_sphincs_shake_256s_simple_length_public_key 64 -#define OQS_SIG_sphincs_shake_256s_simple_length_secret_key 128 -#define OQS_SIG_sphincs_shake_256s_simple_length_signature 29792 - -OQS_SIG *OQS_SIG_sphincs_shake_256s_simple_new(void); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256s_simple_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256s_simple_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256s_simple_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256s_simple_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_sphincs_shake_256s_simple_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_stfl.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_stfl.h deleted file mode 100644 index 8e81df4..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_stfl.h +++ /dev/null @@ -1,740 +0,0 @@ -/** - * \file sig_stfl.h - * \brief Stateful Signature schemes - * - * The file `tests/example_sig_stfl.c` contains an example on using the OQS_SIG_STFL API. - * - * SPDX-License-Identifier: MIT - */ - -#ifndef OQS_SIG_STATEFUL_H -#define OQS_SIG_STATEFUL_H - -#include -#include -#include - -#include - -/* - * Developer's Notes: - * Stateful signatures are based on the one-time use of a secret key. A pool of secret keys is created for this purpose. - * The state of these keys is tracked to ensure that they are used only once to generate a signature. - * - * As such, product-specific environments do play a role in ensuring the safety of the keys. - * Secret keys must be stored securely. - * The key index/counter must be updated after each signature generation. - * The secret key must be protected in a thread-safe manner. - * - * Applications therefore are required to provide environment-specific callback functions to - * - store private key - * - lock/unlock private key - * - * See below for details - * OQS_SIG_STFL_SECRET_KEY_SET_lock - * OQS_SIG_STFL_SECRET_KEY_SET_unlock - * OQS_SIG_STFL_SECRET_KEY_SET_mutex - * OQS_SIG_STFL_SECRET_KEY_SET_store_cb - * - */ - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/** Algorithm identifier for XMSS-SHA2_10_256 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h10 "XMSS-SHA2_10_256" -/** Algorithm identifier for XMSS-SHA2_16_256 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h16 "XMSS-SHA2_16_256" -/** Algorithm identifier for XMSS-SHA2_20_256 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h20 "XMSS-SHA2_20_256" -/** Algorithm identifier for XMSS-SHAKE_10_256 */ -#define OQS_SIG_STFL_alg_xmss_shake128_h10 "XMSS-SHAKE_10_256" -/** Algorithm identifier for XMSS-SHAKE_16_256 */ -#define OQS_SIG_STFL_alg_xmss_shake128_h16 "XMSS-SHAKE_16_256" -/** Algorithm identifier for XMSS-SHAKE_20_256 */ -#define OQS_SIG_STFL_alg_xmss_shake128_h20 "XMSS-SHAKE_20_256" -/** Algorithm identifier for XMSS-SHA2_10_512 */ -#define OQS_SIG_STFL_alg_xmss_sha512_h10 "XMSS-SHA2_10_512" -/** Algorithm identifier for XMSS-SHA2_16_512 */ -#define OQS_SIG_STFL_alg_xmss_sha512_h16 "XMSS-SHA2_16_512" -/** Algorithm identifier for XMSS-SHA2_20_512 */ -#define OQS_SIG_STFL_alg_xmss_sha512_h20 "XMSS-SHA2_20_512" -/** Algorithm identifier for XMSS-SHAKE_10_512 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h10 "XMSS-SHAKE_10_512" -/** Algorithm identifier for XMSS-SHAKE_16_512 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h16 "XMSS-SHAKE_16_512" -/** Algorithm identifier for XMSS-SHAKE_20_512 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h20 "XMSS-SHAKE_20_512" -/** Algorithm identifier for XMSS-SHA2_10_192 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h10_192 "XMSS-SHA2_10_192" -/** Algorithm identifier for XMSS-SHA2_16_192 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h16_192 "XMSS-SHA2_16_192" -/** Algorithm identifier for XMSS-SHA2_20_192 */ -#define OQS_SIG_STFL_alg_xmss_sha256_h20_192 "XMSS-SHA2_20_192" -/** Algorithm identifier for XMSS-SHAKE256_10_192 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h10_192 "XMSS-SHAKE256_10_192" -/** Algorithm identifier for XMSS-SHAKE256_16_192 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h16_192 "XMSS-SHAKE256_16_192" -/** Algorithm identifier for XMSS-SHAKE256_20_192 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h20_192 "XMSS-SHAKE256_20_192" -/** Algorithm identifier for XMSS-SHAKE256_10_256 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h10_256 "XMSS-SHAKE256_10_256" -/** Algorithm identifier for XMSS-SHAKE256_16_256 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h16_256 "XMSS-SHAKE256_16_256" -/** Algorithm identifier for XMSS-SHAKE256_20_256 */ -#define OQS_SIG_STFL_alg_xmss_shake256_h20_256 "XMSS-SHAKE256_20_256" - -/** Algorithm identifier for XMSSMT-SHA2_20/2_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h20_2 "XMSSMT-SHA2_20/2_256" -/** Algorithm identifier for XMSSMT-SHA2_20/4_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h20_4 "XMSSMT-SHA2_20/4_256" -/** Algorithm identifier for XMSSMT-SHA2_40/2_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h40_2 "XMSSMT-SHA2_40/2_256" -/** Algorithm identifier for XMSSMT-SHA2_40/4_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h40_4 "XMSSMT-SHA2_40/4_256" -/** Algorithm identifier for XMSSMT-SHA2_40/8_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h40_8 "XMSSMT-SHA2_40/8_256" -/** Algorithm identifier for XMSSMT-SHA2_60/3_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h60_3 "XMSSMT-SHA2_60/3_256" -/** Algorithm identifier for XMSSMT-SHA2_60/6_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h60_6 "XMSSMT-SHA2_60/6_256" -/** Algorithm identifier for XMSSMT-SHA2_60/12_256 */ -#define OQS_SIG_STFL_alg_xmssmt_sha256_h60_12 "XMSSMT-SHA2_60/12_256" -/** Algorithm identifier for XMSSMT-SHAKE_20/2_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h20_2 "XMSSMT-SHAKE_20/2_256" -/** Algorithm identifier for XMSSMT-SHAKE_20/4_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h20_4 "XMSSMT-SHAKE_20/4_256" -/** Algorithm identifier for XMSSMT-SHAKE_40/2_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h40_2 "XMSSMT-SHAKE_40/2_256" -/** Algorithm identifier for XMSSMT-SHAKE_40/4_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h40_4 "XMSSMT-SHAKE_40/4_256" -/** Algorithm identifier for XMSSMT-SHAKE_40/8_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h40_8 "XMSSMT-SHAKE_40/8_256" -/** Algorithm identifier for XMSSMT-SHAKE_60/3_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h60_3 "XMSSMT-SHAKE_60/3_256" -/** Algorithm identifier for XMSSMT-SHAKE_60/6_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h60_6 "XMSSMT-SHAKE_60/6_256" -/** Algorithm identifier for XMSSMT-SHAKE_60/12_256 */ -#define OQS_SIG_STFL_alg_xmssmt_shake128_h60_12 "XMSSMT-SHAKE_60/12_256" - -/* Defined LMS parameter identifiers */ -/** Algorithm identifier for LMS-SHA256_H5_W1 */ -#define OQS_SIG_STFL_alg_lms_sha256_h5_w1 "LMS_SHA256_H5_W1" //"5/1" -/** Algorithm identifier for LMS-SHA256_H5_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h5_w2 "LMS_SHA256_H5_W2" //"5/2" -/** Algorithm identifier for LMS-SHA256_H5_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h5_w4 "LMS_SHA256_H5_W4" //"5/4" -/** Algorithm identifier for LMS-SHA256_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h5_w8 "LMS_SHA256_H5_W8" //"5/8" - -/** Algorithm identifier for LMS-SHA256_H10_W1 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w1 "LMS_SHA256_H10_W1" //"10/1" -/** Algorithm identifier for LMS-SHA256_H10_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w2 "LMS_SHA256_H10_W2" //"10/2" -/** Algorithm identifier for LMS-SHA256_H10_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w4 "LMS_SHA256_H10_W4" //"10/4" -/** Algorithm identifier for LMS-SHA256_H10_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w8 "LMS_SHA256_H10_W8" //"10/8" - -/** Algorithm identifier for LMS-SHA256_H15_W1 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w1 "LMS_SHA256_H15_W1" //"15/1" -/** Algorithm identifier for LMS-SHA256_H15_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w2 "LMS_SHA256_H15_W2" //"15/2" -/** Algorithm identifier for LMS-SHA256_H15_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w4 "LMS_SHA256_H15_W4" //"15/4" -/** Algorithm identifier for LMS-SHA256_H15_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w8 "LMS_SHA256_H15_W8" //"15/8" - -/** Algorithm identifier for LMS-SHA256_H20_W1 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w1 "LMS_SHA256_H20_W1" //"20/1" -/** Algorithm identifier for LMS-SHA256_H20_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w2 "LMS_SHA256_H20_W2" //"20/2" -/** Algorithm identifier for LMS-SHA256_H20_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w4 "LMS_SHA256_H20_W4" //"20/4" -/** Algorithm identifier for LMS-SHA256_H20_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w8 "LMS_SHA256_H20_W8" //"20/8" - -/** Algorithm identifier for LMS-SHA256_H25_W1 */ -#define OQS_SIG_STFL_alg_lms_sha256_h25_w1 "LMS_SHA256_H25_W1" //"25/1" -/** Algorithm identifier for LMS-SHA256_H25_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h25_w2 "LMS_SHA256_H25_W2" //"25/2" -/** Algorithm identifier for LMS-SHA256_H25_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h25_w4 "LMS_SHA256_H25_W4" //"25/4" -/** Algorithm identifier for LMS-SHA256_H25_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h25_w8 "LMS_SHA256_H25_W8" //"25/8" - -// 2-Level LMS -/** Algorithm identifier for LMS-SHA256_H5_W8_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h5_w8_h5_w8 "LMS_SHA256_H5_W8_H5_W8" //"5/8, 5/8" - -// RFC 6554 -/** Algorithm identifier for LMS-SHA256_H10_W4_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w4_h5_w8 "LMS_SHA256_H10_W4_H5_W8" //"10/4, 5/8" - -/** Algorithm identifier for LMS-SHA256_H10_W8_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w8_h5_w8 "LMS_SHA256_H10_W8_H5_W8" //"10/8, 5/8" -/** Algorithm identifier for LMS-SHA256_H10_W2_H10_W2 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w2_h10_w2 "LMS_SHA256_H10_W2_H10_W2" //"10/2, 10/2" -/** Algorithm identifier for LMS-SHA256_H10_W4_H10_W4 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w4_h10_w4 "LMS_SHA256_H10_W4_H10_W4" //"10/4, 10/4" -/** Algorithm identifier for LMS-SHA256_H10_W8_H10_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h10_w8_h10_w8 "LMS_SHA256_H10_W8_H10_W8" //"10/8, 10/8" - -/** Algorithm identifier for LMS-SHA256_H15_W8_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w8_h5_w8 "LMS_SHA256_H15_W8_H5_W8" //"15/8, 5/8" -/** Algorithm identifier for LMS-SHA256_H15_W8_H10_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w8_h10_w8 "LMS_SHA256_H15_W8_H10_W8" //"15/8, 10/8" -/** Algorithm identifier for LMS-SHA256_H15_W8_H15_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h15_w8_h15_w8 "LMS_SHA256_H15_W8_H15_W8" //"15/8, 15/8" - -/** Algorithm identifier for LMS-SHA256_H20_W8_H5_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w8_h5_w8 "LMS_SHA256_H20_W8_H5_W8" //"20/8, 5/8" -/** Algorithm identifier for LMS-SHA256_H20_W8_H10_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w8_h10_w8 "LMS_SHA256_H20_W8_H10_W8" //"20/8, 10/8" -/** Algorithm identifier for LMS-SHA256_H20_W8_H15_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w8_h15_w8 "LMS_SHA256_H20_W8_H15_W8" //"20/8, 15/8" -/** Algorithm identifier for LMS-SHA256_H20_W8_H20_W8 */ -#define OQS_SIG_STFL_alg_lms_sha256_h20_w8_h20_w8 "LMS_SHA256_H20_W8_H20_W8" //"20/8, 20/8" - -/** Total number of stateful variants defined above, used to create the tracking array */ -#define OQS_SIG_STFL_algs_length 70 - -typedef struct OQS_SIG_STFL_SECRET_KEY OQS_SIG_STFL_SECRET_KEY; - -/** - * Application provided function to securely store data - * @param[in] sk_buf pointer to the data to be saved - * @param[in] buf_len length of the data to be stored - * @param[out] context pass back application data related to secret key data storage. - * return OQS_SUCCESS if successful, otherwise OQS_ERROR - */ -typedef OQS_STATUS (*secure_store_sk)(uint8_t *sk_buf, size_t buf_len, void *context); - -/** - * Application provided function to lock secret key object serialize access - * @param[in] mutex pointer to mutex struct - * return OQS_SUCCESS if successful, otherwise OQS_ERROR - */ -typedef OQS_STATUS (*lock_key)(void *mutex); - -/** - * Application provided function to unlock secret key object - * @param[in] mutex pointer to mutex struct - * return OQS_SUCCESS if successful, otherwise OQS_ERROR - */ -typedef OQS_STATUS (*unlock_key)(void *mutex); - -/** - * Returns identifiers for available signature schemes in liboqs. Used with `OQS_SIG_STFL_new`. - * - * Note that algorithm identifiers are present in this list even when the algorithm is disabled - * at compile time. - * - * @param[in] i Index of the algorithm identifier to return, 0 <= i < OQS_SIG_algs_length - * @return Algorithm identifier as a string, or NULL. - */ -OQS_API const char *OQS_SIG_STFL_alg_identifier(size_t i); - -/** - * Returns the number of stateful signature mechanisms in liboqs. They can be enumerated with - * OQS_SIG_STFL_alg_identifier. - * - * Note that some mechanisms may be disabled at compile time. - * - * @return The number of stateful signature mechanisms. - */ -OQS_API int OQS_SIG_STFL_alg_count(void); - -/** - * Indicates whether the specified algorithm was enabled at compile-time or not. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_SIG_STFL_algs`. - * @return 1 if enabled, 0 if disabled or not found - */ -OQS_API int OQS_SIG_STFL_alg_is_enabled(const char *method_name); - -#ifndef OQS_ALLOW_STFL_KEY_AND_SIG_GEN - -/** Signature schemes object */ -typedef struct OQS_SIG OQS_SIG; - -/** Stateful signature scheme object */ -#define OQS_SIG_STFL OQS_SIG -#else - -/** Stateful signature scheme object */ -typedef struct OQS_SIG_STFL { - - /** - * A local ordinal representing the LMS/XMSS OID parameter of the signature scheme. - * This OID is unrelated to ASN.1 OID, it's only for LMS/XMSS internal usage. - */ - uint32_t oid; - - /** Printable string representing the name of the signature scheme. */ - const char *method_name; - - /** - * Printable string representing the version of the cryptographic algorithm. - * - * Implementations with the same method_name and same alg_version will be interoperable. - * See README.md for information about algorithm compatibility. - */ - const char *alg_version; - - /** Whether the signature offers EUF-CMA security (TRUE) or not (FALSE). */ - bool euf_cma; - - /** Whether the signature offers SUF-CMA security (TRUE) or not (FALSE). */ - bool suf_cma; - - /** The (maximum) length, in bytes, of public keys for this signature scheme. */ - size_t length_public_key; - /** The (maximum) length, in bytes, of secret keys for this signature scheme. */ - size_t length_secret_key; - /** The (maximum) length, in bytes, of signatures for this signature scheme. */ - size_t length_signature; - - /** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_STFL_*_length_*`. - * - * @param[out] public_key The public key is represented as a byte string. - * @param[out] secret_key The secret key object - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*keypair)(uint8_t *public_key, OQS_SIG_STFL_SECRET_KEY *secret_key); - - /** - * Signature generation algorithm. - * - * For stateful signatures, there is always a limited number of signatures that can be used, - * The private key signature counter is increased by one once a signature is successfully generated, - * When the signature counter reaches the maximum number of available signatures, the signature generation always fails. - * - * Caller is responsible for allocating sufficient memory for `signature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_STFL_*_length_*`. - * - * @param[out] signature The signature on the message is represented as a byte string. - * @param[out] signature_len The length of the signature. - * @param[in] message The message to sign is represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] secret_key The secret key object pointer. - * @return OQS_SUCCESS or OQS_ERROR - * - * @note Internally, if `lock/unlock` functions and `mutex` are set, it will attempt to lock the private key and unlock - * the private key after the Signing operation is completed. - */ - OQS_STATUS (*sign)(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, OQS_SIG_STFL_SECRET_KEY *secret_key); - - /** - * Signature verification algorithm. - * - * @param[in] message The message is represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message is represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] public_key The public key is represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*verify)(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); - - /** - * Query the number of remaining signatures. - * - * The remaining signatures are the number of signatures available before the private key runs out of its total signature and expires. - * - * @param[out] remain The number of remaining signatures - * @param[in] secret_key The secret key object pointer. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*sigs_remaining)(unsigned long long *remain, const OQS_SIG_STFL_SECRET_KEY *secret_key); - - /** - * Query the total number of signatures. - * - * The total number of signatures is the constant number present in how many signatures can be generated from a private key. - * - * @param[out] total The total number of signatures - * @param[in] secret_key The secret key key object pointer. - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*sigs_total)(unsigned long long *total, const OQS_SIG_STFL_SECRET_KEY *secret_key); - -} OQS_SIG_STFL; -#endif //OQS_ALLOW_STFL_KEY_AND_SIG_GEN - -/** - * @brief OQS_SIG_STFL_SECRET_KEY object for stateful signature schemes - */ - -typedef struct OQS_SIG_STFL_SECRET_KEY { - - /** The (maximum) length, in bytes, of secret keys for this signature scheme. */ - size_t length_secret_key; - - /** The variant-specific secret key data must be allocated at the initialization. */ - void *secret_key_data; - - /** The mutual exclusion struct */ - void *mutex; - - /** Application-managed data related to secure storage of secret key data */ - void *context; - - /** - * Serialize the stateful secret key. - * - * This function encodes the stateful secret key represented by `sk` into a byte stream - * for storage or transfer. The `sk_buf_ptr` will point to the allocated memory containing - * the byte stream. Users must free the `sk_buf_ptr` using `OQS_MEM_secure_free` after use. - * The `sk_len` will contain the length of the byte stream. - * - * @param[out] sk_buf_ptr Pointer to the byte stream representing the serialized secret key. - * @param[out] sk_buf_len Pointer to the length of the serialized byte stream. - * @param[in] sk Pointer to the `OQS_SIG_STFL_SECRET_KEY` object to serialize. - * @return The number of bytes in the serialized byte stream upon success, or an OQS error code on failure. - * - * @attention The caller is responsible for ensuring that `sk` is a valid object before calling this function. - */ - OQS_STATUS (*serialize_key)(uint8_t **sk_buf_ptr, size_t *sk_buf_len, const OQS_SIG_STFL_SECRET_KEY *sk); - - /** - * Deserialize a byte stream into the internal representation of a stateful secret key. - * - * This function takes a series of bytes representing a stateful secret key and initializes - * the internal `OQS_SIG_STFL_SECRET_KEY` object with the key material. This is particularly - * useful for reconstructing key objects from persisted or transmitted state. - * - * @param[out] sk Pointer to an uninitialized `OQS_SIG_STFL_SECRET_KEY` object to hold the secret key. - * @param[in] sk_buf Pointer to the byte stream containing the serialized secret key data. - * @param[in] sk_buf_len The length of the secret key byte stream. - * @param[in] context Pointer to application-specific data, handled externally, associated with the key. - * @returns OQS_SUCCESS if the deserialization succeeds, with the `sk` object populated with the key material. - * - * @attention The caller is responsible for ensuring that `sk_buf` is securely deallocated when it's no longer needed. - */ - OQS_STATUS (*deserialize_key)(OQS_SIG_STFL_SECRET_KEY *sk, const uint8_t *sk_buf, const size_t sk_buf_len, void *context); - - /** - * Secret Key Locking Function - * - * @param[in] mutex application defined mutex - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*lock_key)(void *mutex); - - /** - * Secret Key Unlocking / Releasing Function - * - * @param[in] mutex application defined mutex - * @return OQS_SUCCESS or OQS_ERROR - */ - OQS_STATUS (*unlock_key)(void *mutex); - - /** - * Store Secret Key Function - * - * Callback function used to securely store key data after a signature generation. - * When populated, this pointer points to the application-supplied secure storage function. - * @param[in] sk_buf The serialized secret key data to secure store - * @param[in] sk_buf_len length of data to secure - * @param[in] context application supplied data used to locate where this secret key - * is stored (passed in at the time the function pointer was set). - * - * @return OQS_SUCCESS or OQS_ERROR - * Ideally written to a secure device. - */ - OQS_STATUS (*secure_store_scrt_key)(uint8_t *sk_buf, size_t sk_buf_len, void *context); - - /** - * Free internal variant-specific data - * - * @param[in] sk The secret key represented as OQS_SIG_STFL_SECRET_KEY object. - * @return None. - */ - void (*free_key)(OQS_SIG_STFL_SECRET_KEY *sk); - - /** - * Set Secret Key Store Callback Function - * - * This function is used to establish a callback mechanism for secure storage - * of private keys involved in stateful signature Signing operation. The secure storage - * and the management of private keys is the responsibility of the adopting application. - * Therefore, before invoking stateful signature generation, a callback function and - * associated context data must be provided by the application to manage the storage. - * - * The `context` argument is designed to hold information requisite for private key storage, - * such as a hardware security module (HSM) context, a file path, or other relevant data. - * This context is passed to the libOQS when the callback function is registered. - * - * @param[in] sk A pointer to the secret key object that requires secure storage management - * after signature Signing operations. - * @param[in] store_cb A pointer to the callback function provided by the application - * for storing and updating the private key securely. - * @param[in] context Application-specific context information for the private key storage, - * furnished when setting the callback function via - * OQS_SIG_STFL_SECRET_KEY_set_store_cb(). - * @return None. - */ - void (*set_scrt_key_store_cb)(OQS_SIG_STFL_SECRET_KEY *sk, secure_store_sk store_cb, void *context); -} OQS_SIG_STFL_SECRET_KEY; - -/** - * Constructs an OQS_SIG_STFL object for a particular algorithm. - * - * Callers should always check whether the return value is `NULL`, which indicates either than an - * invalid algorithm name was provided, or that the requested algorithm was disabled at compile-time. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_SIG_STFL_algs`. - * @return An OQS_SIG_STFL for the particular algorithm, or `NULL` if the algorithm has been disabled at compile-time. - */ -OQS_API OQS_SIG_STFL *OQS_SIG_STFL_new(const char *method_name); - -/** - * Keypair generation algorithm. - * - * Caller is responsible for allocating sufficient memory for `public_key` based - * on the `length_*` members in this object or the per-scheme compile-time macros - * `OQS_SIG_STFL_*_length_*`. The caller is also responsible for initializing - * `secret_key` using the OQS_SIG_STFL_SECRET_KEY(*) function. - * - * @param[in] sig The OQS_SIG_STFL object representing the signature scheme. - * @param[out] public_key The public key is represented as a byte string. - * @param[out] secret_key The secret key object pointer. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_STFL_keypair(const OQS_SIG_STFL *sig, uint8_t *public_key, OQS_SIG_STFL_SECRET_KEY *secret_key); - -/** - * Signature generation algorithm. - * - * For stateful signatures, there is always a limited number of signatures that can be used, - * The private key signature counter is increased by one once a signature is successfully generated, - * When the signature counter reaches the maximum number of available signatures, the signature generation always fails. - * - * Caller is responsible for allocating sufficient memory for `signature`, - * based on the `length_*` members in this object or the per-scheme - * compile-time macros `OQS_SIG_STFL_*_length_*`. - * - * @param[in] sig The OQS_SIG_STFL object representing the signature scheme. - * @param[out] signature The signature on the message is represented as a byte string. - * @param[out] signature_len The length of the signature. - * @param[in] message The message to sign is represented as a byte string. - * @param[in] message_len The length of the message to sign. - * @param[in] secret_key The secret key object pointer. - * @return OQS_SUCCESS or OQS_ERROR - * - * @note Internally, if `lock/unlock` functions and `mutex` are set, it will attempt to lock the private key and unlock - * the private key after the Signing operation is completed. - */ -OQS_API OQS_STATUS OQS_SIG_STFL_sign(const OQS_SIG_STFL *sig, uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, OQS_SIG_STFL_SECRET_KEY *secret_key); - -/** - * Signature verification algorithm. - * - * @param[in] sig The OQS_SIG_STFL object representing the signature scheme. - * @param[in] message The message is represented as a byte string. - * @param[in] message_len The length of the message. - * @param[in] signature The signature on the message is represented as a byte string. - * @param[in] signature_len The length of the signature. - * @param[in] public_key The public key is represented as a byte string. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_STFL_verify(const OQS_SIG_STFL *sig, const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); - -/** - * Query the number of remaining signatures. - * - * The remaining signatures are the number of signatures available before the private key runs out of its total signature and expires. - * - * @param[in] sig The OQS_SIG_STFL object representing the signature scheme. - * @param[in] remain The number of remaining signatures. - * @param[in] secret_key The secret key object. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_STFL_sigs_remaining(const OQS_SIG_STFL *sig, unsigned long long *remain, const OQS_SIG_STFL_SECRET_KEY *secret_key); - -/** - * Query the total number of signatures. - * - * The total number of signatures is the constant number present in how many signatures can be generated from a private key. - * - * @param[in] sig The OQS_SIG_STFL object representing the signature scheme. - * @param[out] max The number of remaining signatures - * @param[in] secret_key The secret key object. - * @return OQS_SUCCESS or OQS_ERROR - */ -OQS_API OQS_STATUS OQS_SIG_STFL_sigs_total(const OQS_SIG_STFL *sig, unsigned long long *max, const OQS_SIG_STFL_SECRET_KEY *secret_key); - -/** - * Free an OQS_SIG_STFL object that was constructed by OQS_SIG_STFL_new. - * - */ -OQS_API void OQS_SIG_STFL_free(OQS_SIG_STFL *sig); - -/** - * Construct an OQS_SIG_STFL_SECRET_KEY object for a particular algorithm. - * - * Callers should always check whether the return value is `NULL`, which indicates either than an - * invalid algorithm name was provided, or that the requested algorithm was disabled at compile-time. - * - * @param[in] method_name Name of the desired algorithm; one of the names in `OQS_SIG_STFL_algs`. - * @return An OQS_SIG_STFL_SECRET_KEY for the particular algorithm, or `NULL` if the algorithm has been disabled at compile-time. - */ -OQS_API OQS_SIG_STFL_SECRET_KEY *OQS_SIG_STFL_SECRET_KEY_new(const char *method_name); - -/** - * Free an OQS_SIG_STFL_SECRET_KEY object that was constructed by OQS_SECRET_KEY_new. - * - * @param[in] sk The OQS_SIG_STFL_SECRET_KEY object to free. - */ -OQS_API void OQS_SIG_STFL_SECRET_KEY_free(OQS_SIG_STFL_SECRET_KEY *sk); - -/** - * Attach a locking mechanism to a secret key object. - * - * This allows for proper synchronization in a multi-threaded or multi-process environment, - * by ensuring that a secret key is not used concurrently by multiple entities, which could otherwise lead to security issues. - * - * @param[in] sk Pointer to the secret key object whose lock function is to be set. - * @param[in] lock Function pointer to the locking routine provided by the application. - * - * @note It's not required to set the lock and unlock functions in a single-threaded environment. - * - * @note Once the `lock` function is set, users must also set the `mutex` and `unlock` functions. - * - * @note By default, the internal value of `sk->lock` is NULL, which does nothing to lock the private key. - */ -OQS_API void OQS_SIG_STFL_SECRET_KEY_SET_lock(OQS_SIG_STFL_SECRET_KEY *sk, lock_key lock); - -/** - * Attach an unlock mechanism to a secret key object. - * - * This allows for proper synchronization in a multi-threaded or multi-process environment, - * by ensuring that a secret key is not used concurrently by multiple entities, which could otherwise lead to security issues. - * - * @param[in] sk Pointer to the secret key object whose unlock function is to be set. - * @param[in] unlock Function pointer to the unlock routine provided by the application. - * - * @note It's not required to set the lock and unlock functions in a single-threaded environment. - * - * @note Once the `unlock` function is set, users must also set the `mutex` and `lock` functions. - * - * @note By default, the internal value of `sk->unlock` is NULL, which does nothing to unlock the private key. - */ -OQS_API void OQS_SIG_STFL_SECRET_KEY_SET_unlock(OQS_SIG_STFL_SECRET_KEY *sk, unlock_key unlock); - -/** - * Assign a mutex function to handle concurrency control over the secret key. - * - * This is to ensure that only one process can access or modify the key at any given time. - * - * @param[in] sk A pointer to the secret key that the mutex functionality will protect. - * @param[in] mutex A function pointer to the desired concurrency control mechanism. - * - * @note It's not required to set the lock and unlock functions in a single-threaded environment. - * - * @note By default, the internal value of `sk->mutex` is NULL, it must be set to be used in `lock` or `unlock` the private key. - */ -OQS_API void OQS_SIG_STFL_SECRET_KEY_SET_mutex(OQS_SIG_STFL_SECRET_KEY *sk, void *mutex); - -/** - * Lock the secret key to ensure exclusive access in a concurrent environment. - * - * If the `mutex` is not set, this lock operation will fail. - * This lock operation is essential in multi-threaded or multi-process contexts - * to prevent simultaneous Signing operations that could compromise the stateful signature security. - * - * @warning If the `lock` function is set and `mutex` is not set, this lock operation will fail. - * - * @param[in] sk Pointer to the secret key to be locked. - * @return OQS_SUCCESS if the lock is successfully applied; OQS_ERROR otherwise. - * - * @note It's not necessary to use this function in either Keygen or Verifying operations. - * In a concurrent environment, the user is responsible for locking and unlocking the private key, - * to make sure that only one thread can access the private key during a Signing operation. - * - * @note If the `lock` function and `mutex` are both set, proceed to lock the private key. - */ -OQS_STATUS OQS_SIG_STFL_SECRET_KEY_lock(OQS_SIG_STFL_SECRET_KEY *sk); - -/** - * Unlock the secret key, making it accessible to other processes. - * - * This function is crucial in environments where multiple processes need to coordinate access to - * the secret key, as it allows a process to signal that it has finished using the key, so - * others can safely use it. - * - * @warning If the `unlock` function is set and `mutex` is not set, this unlock operation will fail. - * - * @param[in] sk Pointer to the secret key whose lock should be released. - * @return OQS_SUCCESS if the lock was successfully released; otherwise, OQS_ERROR. - * - * @note It's not necessary to use this function in either Keygen or Verifying operations. - * In a concurrent environment, the user is responsible for locking and unlocking the private key, - * to make sure that only one thread can access the private key during a Signing operation. - * - * @note If the `unlock` function and `mutex` are both set, proceed to unlock the private key. - */ -OQS_STATUS OQS_SIG_STFL_SECRET_KEY_unlock(OQS_SIG_STFL_SECRET_KEY *sk); - -/** - * Set the callback and context for securely storing a stateful secret key. - * - * This function is designed to be called after a new stateful secret key - * has been generated. It enables the library to securely store secret key - * and update it every time a Signing operation occurs. - * Without properly setting this callback and context, signature generation - * will not succeed as the updated state of the secret key cannot be preserved. - * - * @param[in] sk Pointer to the stateful secret key to be managed. - * @param[in] store_cb Callback function that handles the secure storage of the key. - * @param[in] context Application-specific context that assists in the storage of secret key data. - * This context is managed by the application, which allocates it, keeps track of it, - * and deallocates it as necessary. - */ -OQS_API void OQS_SIG_STFL_SECRET_KEY_SET_store_cb(OQS_SIG_STFL_SECRET_KEY *sk, secure_store_sk store_cb, void *context); - -/** - * Serialize the stateful secret key data into a byte array. - * - * Converts an OQS_SIG_STFL_SECRET_KEY object into a byte array for storage or transmission. - * - * @param[out] sk_buf_ptr Pointer to the allocated byte array containing the serialized key. - * @param[out] sk_buf_len Length of the serialized key byte array. - * @param[in] sk Pointer to the OQS_SIG_STFL_SECRET_KEY object to be serialized. - * @return OQS_SUCCESS on success, or an OQS error code on failure. - * - * @note The function allocates memory for the byte array, and it is the caller's responsibility to free this memory after use. - */ -OQS_API OQS_STATUS OQS_SIG_STFL_SECRET_KEY_serialize(uint8_t **sk_buf_ptr, size_t *sk_buf_len, const OQS_SIG_STFL_SECRET_KEY *sk); - -/** - * Deserialize a byte array into an OQS_SIG_STFL_SECRET_KEY object. - * - * Transforms a binary representation of a secret key into an OQS_SIG_STFL_SECRET_KEY structure. - * After deserialization, the secret key object can be used for subsequent cryptographic operations. - * - * @param[out] sk A pointer to the secret key object that will be populated from the binary data. - * @param[in] sk_buf The buffer containing the serialized secret key data. - * @param[in] sk_buf_len The length of the binary secret key data in bytes. - * @param[in] context Application-specific data used to maintain context about the secret key. - * @return OQS_SUCCESS if deserialization was successful; otherwise, OQS_ERROR. - * - * @attention The caller is responsible for freeing the `sk_buf` memory when it is no longer needed. - */ -OQS_API OQS_STATUS OQS_SIG_STFL_SECRET_KEY_deserialize(OQS_SIG_STFL_SECRET_KEY *sk, const uint8_t *sk_buf, size_t sk_buf_len, void *context); - -#if defined(__cplusplus) -// extern "C" -} -#endif - -#endif /* OQS_SIG_STATEFUL_H */ diff --git a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_uov.h b/prebuilt_liboqs/linux-aarch64/include/oqs/sig_uov.h deleted file mode 100644 index 47b829f..0000000 --- a/prebuilt_liboqs/linux-aarch64/include/oqs/sig_uov.h +++ /dev/null @@ -1,164 +0,0 @@ -// SPDX-License-Identifier: MIT - -#ifndef OQS_SIG_UOV_H -#define OQS_SIG_UOV_H - -#include - -#if defined(OQS_ENABLE_SIG_uov_ov_Is) -#define OQS_SIG_uov_ov_Is_length_public_key 412160 -#define OQS_SIG_uov_ov_Is_length_secret_key 348704 -#define OQS_SIG_uov_ov_Is_length_signature 96 - -OQS_SIG *OQS_SIG_uov_ov_Is_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_Ip) -#define OQS_SIG_uov_ov_Ip_length_public_key 278432 -#define OQS_SIG_uov_ov_Ip_length_secret_key 237896 -#define OQS_SIG_uov_ov_Ip_length_signature 128 - -OQS_SIG *OQS_SIG_uov_ov_Ip_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_III) -#define OQS_SIG_uov_ov_III_length_public_key 1225440 -#define OQS_SIG_uov_ov_III_length_secret_key 1044320 -#define OQS_SIG_uov_ov_III_length_signature 200 - -OQS_SIG *OQS_SIG_uov_ov_III_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_V) -#define OQS_SIG_uov_ov_V_length_public_key 2869440 -#define OQS_SIG_uov_ov_V_length_secret_key 2436704 -#define OQS_SIG_uov_ov_V_length_signature 260 - -OQS_SIG *OQS_SIG_uov_ov_V_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_Is_pkc) -#define OQS_SIG_uov_ov_Is_pkc_length_public_key 66576 -#define OQS_SIG_uov_ov_Is_pkc_length_secret_key 348704 -#define OQS_SIG_uov_ov_Is_pkc_length_signature 96 - -OQS_SIG *OQS_SIG_uov_ov_Is_pkc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_Ip_pkc) -#define OQS_SIG_uov_ov_Ip_pkc_length_public_key 43576 -#define OQS_SIG_uov_ov_Ip_pkc_length_secret_key 237896 -#define OQS_SIG_uov_ov_Ip_pkc_length_signature 128 - -OQS_SIG *OQS_SIG_uov_ov_Ip_pkc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_III_pkc) -#define OQS_SIG_uov_ov_III_pkc_length_public_key 189232 -#define OQS_SIG_uov_ov_III_pkc_length_secret_key 1044320 -#define OQS_SIG_uov_ov_III_pkc_length_signature 200 - -OQS_SIG *OQS_SIG_uov_ov_III_pkc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_V_pkc) -#define OQS_SIG_uov_ov_V_pkc_length_public_key 446992 -#define OQS_SIG_uov_ov_V_pkc_length_secret_key 2436704 -#define OQS_SIG_uov_ov_V_pkc_length_signature 260 - -OQS_SIG *OQS_SIG_uov_ov_V_pkc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_Is_pkc_skc) -#define OQS_SIG_uov_ov_Is_pkc_skc_length_public_key 66576 -#define OQS_SIG_uov_ov_Is_pkc_skc_length_secret_key 32 -#define OQS_SIG_uov_ov_Is_pkc_skc_length_signature 96 - -OQS_SIG *OQS_SIG_uov_ov_Is_pkc_skc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_skc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_skc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_skc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_skc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Is_pkc_skc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_Ip_pkc_skc) -#define OQS_SIG_uov_ov_Ip_pkc_skc_length_public_key 43576 -#define OQS_SIG_uov_ov_Ip_pkc_skc_length_secret_key 32 -#define OQS_SIG_uov_ov_Ip_pkc_skc_length_signature 128 - -OQS_SIG *OQS_SIG_uov_ov_Ip_pkc_skc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_skc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_skc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_skc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_skc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_Ip_pkc_skc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_III_pkc_skc) -#define OQS_SIG_uov_ov_III_pkc_skc_length_public_key 189232 -#define OQS_SIG_uov_ov_III_pkc_skc_length_secret_key 32 -#define OQS_SIG_uov_ov_III_pkc_skc_length_signature 200 - -OQS_SIG *OQS_SIG_uov_ov_III_pkc_skc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_skc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_skc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_skc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_skc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_III_pkc_skc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#if defined(OQS_ENABLE_SIG_uov_ov_V_pkc_skc) -#define OQS_SIG_uov_ov_V_pkc_skc_length_public_key 446992 -#define OQS_SIG_uov_ov_V_pkc_skc_length_secret_key 32 -#define OQS_SIG_uov_ov_V_pkc_skc_length_signature 260 - -OQS_SIG *OQS_SIG_uov_ov_V_pkc_skc_new(void); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_skc_keypair(uint8_t *public_key, uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_skc_sign(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_skc_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_skc_sign_with_ctx_str(uint8_t *signature, size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *secret_key); -OQS_API OQS_STATUS OQS_SIG_uov_ov_V_pkc_skc_verify_with_ctx_str(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx, size_t ctxlen, const uint8_t *public_key); -#endif - -#endif diff --git a/prebuilt_liboqs/linux-aarch64/lib/liboqs.so b/prebuilt_liboqs/linux-aarch64/lib/liboqs.so deleted file mode 120000 index dc983a9..0000000 --- a/prebuilt_liboqs/linux-aarch64/lib/liboqs.so +++ /dev/null @@ -1 +0,0 @@ -liboqs.so.9 \ No newline at end of file diff --git a/prebuilt_liboqs/linux-aarch64/lib/liboqs.so.0.15.0-rc1 b/prebuilt_liboqs/linux-aarch64/lib/liboqs.so.0.15.0-rc1 deleted file mode 100755 index c0e821df8dbe295b369013f34c8d256e9e83f24e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7032032 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ðSP^FyK=4G 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

4oqwGIB^G5r8%xUSnyI}}X( z_JDRMnE34h?GPKl0aiPd_@xcbCjOSim21wm!FOqc@0x9}^skdrN_~@ri7c3UsBt;AbgNC4nKJpN@J`-! z#$A#7zwvC%8^i|vJ<^pqfHi+8W)AU0MV!LQU&&tc@$sHt+_VF{JoBo<&?>wRX`H8G=FEvi5>|Zn2>WquIR$yG%(Ohy|eTeJN7G9qGB}-oYb61&b4V7on$E*2H ztT9NQNqZ-A9GT&p2<@z&*ogVtM16MLp9ea7nskEl=*C|n$IenJn}lXj$ofu z^UvepRj~4hz`g%ysK9c-MI5AlB$$VAH zOU(xV}VhiFuK-*A;wxXL)zU$G_zF^JDUO4%Zz>pDTT* z*!_a1f64Fb=aT9D{(de*uli6ce!tJ3OQ!ex{kdd%zwe(*q3?o^_sg#fK7QjleEduI zgO7)%d%Rx=A20jd$e~>39N^zacE`tqneW8MgM$}cN+3RdAPrsm3fVIh9ZT={_>2qV z<5M0w13vytID9x03!`-Iu{Rn87XD1cg|P5fWGF0rnjZ_FMZHN+yW7OVr)6XfK4M|v zR~KB_MjJ$4X8)ucV|cz;8?^SSM1QAn@Txs&_31~z!8#w@DjK5*JZYRu;E@` zs=i>&ypVifd5G7C-OgUY53kb0R@QTUohx#e{h9hm(YM;deWfAczKxfNRTpf075Mxm z;PV%=o|ipS3nL$h&#$sD)V8Vclyrom%=h_SN z1IE9sD#Ta1G~^5LBRK!Dm&Q*n{J_&_{lPW!roaz8U9h}ZTa@L(&y+91kKq5uTpB;g z@B>ey^+jvuT?Rk!bRm9L(Voka;pehT=clV*fQ(D<3jj~>HClgY&Ak5b1YZ~8>3ZQQ z7M}X|%#+pjrBAf{V2I7)ZTJhAU769VzknjYFN!ohDb~XKi_eKbtiSXzfmnahzt5$Q zv9SJmVA(wiQ%^b z;ik`78A;p5Z!o&@jc>Qn2hk_(EwhFArs!srVYXb29cfq&t{IF~9`X>qE2Ve!^4f;jqt}B=8j{57+&zHbcDd`8=3Mjt-K~sD! zdi5H?2d6(X@7XZ)PvJo!;FCLj13crwp4s#XFcY5uGw0`qt#FIJU-<-xyxy1kJU#)U zW6${n$iNO**}eLG0_^O22|fWbF76W`;}U!V_ceiID7XAka2+hf72&`Ux#d~ zsw}`Bz*ydD`UGG++p8fL(E-f)qCNrOV-Dlj3coJ^*-No}!<3>270h$)1#tcr<~i5G z`CIY%@%>%m1IPY1$LGiFcZm;d_}?6#AA{c|zSu7jpC4D>CBFV&B0fJ(zDs8w2i^Q?^!ZPtw_ojWfnNt#C%SvVubX?X zdVNc6s?zhzo_p)}Q+?2{KEe9Tar+csS_Am?4XHj^&zWnTs)Ck{ivDTGl52g(t5ba~ z%lyxCz^|`O^`$XxH;!KCZh0it=K!zNdTXjLjH~|2E_dU|b?&LbOA8vuuX8tM5=IbG z2oZ$7gaL#&LMXw$&h31Cm%Hw#OA9*gOZ6R}nd;kF_3)&QOwx=?^|cO8_3fxyI%!J_ zb62aaYBdFq@f^5kAo~UXDKu)oz}#!8{GhA;UuaefjoK41X%;|p5;=^6_jNC28z*fx z!IiI0*s2?{&)l-1#P^cm%0)KBEo+5C(5pCjC-#-aT9EN)*3t@3j&8^UZq&k)r?Mw2 zSaR!s(TUtDd_7Xa+EO!QZ%E>7*~qh!KYbU^f+26B58>>o_*QsO7;--kPKyW0tMI^8 zc=#ne_~7+_{MhkSFb{$0y1ziWU`GdZ@<<*#c~r79c{J@ui=bGTR7afKWAcH+hbGd@|j?ad9E zTq_uJ3pbw2KY`eB3s+v)3x<4&Zr>|dZ^4ci2VGNZVZ8-MUQAr9VY^_-pU{K$T3GUG z=!5)ta-r>xDK7$3F8K3cThLy?l+Pg@`NzVQ%Rg3no$2_og)NtVUiRb5drSw6 zxuo+7{|Lt1N=IC zi4MqKZ%7^GorN(M8^=866+s>oUmipIQTTFb#12gAyjiE07Tn?gS0}Dw?#;UU6|Vdr zhAUToF!c+LZ(_eGhDActQ&vg*{myH4p$z-_!KMS zE5T0q3RnIWuKbJQ%B2o{g)9FGSN<=FE6>IEAbN$sasIZiaOGd&%D=*u8=^}RU6zF_ z4-2Zs7DTI01LF-g%*2-GWb}+JXMQW#^1|Rec{@~|ns>x1#nBiQok-LU28t7PpO#&-?AbnG+Jt^->h9O7Gd zxEE~sVDuS!lA7eX+UI zjUUK6>=6U$R?EB2J>9B;RXi&jeAeQD`0{UxZ31&VWydM&e&SR3a`@SLZ-~N|%Xudj zzC4X}y5L$<+iJkkn(K1Gm|Op8;O4$37;|_OoUmyJ0A8JVb7Y^Mv^M!|7bTs7LniH} zD7W9XP&cOYZa4OeV(%ks;Z4LpRp{VP>;ptbF8IrnchHFKywGLy9Edf~B+nMsHN!6t zS(9HO_wXk7!grcH!>{!`T%O_6dUnY(X}d^QBi$kLZ2ueZ=1HQ<3Q}cn>Z>S!(p7l# z{bMOVo61LH5_rYIgaL%OD#?N1yy&;b(sa;``*@#ZPZ@ukSW z6MyJ#%KoAIW6F;;M7r21C>$Yl9}=g939SQ%;SP)AxlZ!Hi2eNZRDFXa)AR@X!RN`@i6=G4pre z!+%G;Fuw~gjhPSg?qT1-DB) zf0Qit#Nv~W{ACZ zqs_FPw^dXX^r!A69CR78BwhXy%y`if@;^&6CW<_vm$j|*8Jr|(TqW;BzR))Fjf2Du z7qq#2Q~mD!x=|vSacD#*B6YjD4^AC`Zbqi82v7RW8y-J2twT?3>&V`^#RnQT|&g&mHgbtuX*IUQGoW-RhQD;qQF+(LP#F01j0di-s9mVQdw=#FgT9(lepGyV(m)*UlG zOwzjq%=k~0T+U&}qnb_3_-##HG2>FNWj@#|W*i-HCuSTy@f<%6@Lk%j_7!Hl?#pAw z!@eA5JVxt=84m$79%B4863n>l$6N|#yt)tA@hC!HLi88JkcTnO`7z`pbl)g&%R2-^ zJ|f4&kZ% zaJhmh54$j?yzk&s-TgXrD?eTx39dYnaiSttu-TiKCvLLo1RKFl2x|Bq>1kow zm0+$EuH1(owm;q*X`G7xQLngi%NNA!ojCoz;L0Nvu6+B=nonWXk?FRZEu6kx;mR$U z)&hm+Yp807QDA$wPV103&vaU-ttY>iGugWcI0Wnbqn4* zyc^y-j(70{!FvmKym!2JMmM~7Ob>YP7=`za2Jihuw2AjF4#0cocEfwG1Mhubtcmyj z0K9iW0N(rP(xcuOFyD^UyR%+d`kuED+;y1q?yO=k-Zfyk!-w6SC7AErrOgWSZQ{KT zfdOy#x&-$v_--)UHDI;{-<<=7TjY_)J9*Z%DQAlLCYWx)a?3fDHo2X{RlJwG>k z(4m?SY3Pu;0}L3j=-~81T6S!Gg0!z%S<=kClK2=dASJG2zOu_xYIc zHv%x>xfN9f+urGhXJ)LGx%v8c1NJ?;p9|m3Cy&A>r^p)DOz+=_w}m$u_W7XdZw@t#x^)aN(>We%RX? z?O~qYapC-TgtX7Yh4W93xNz_`28YBo~7Rwo^I|gN4|+1r}}x9`)mApmHS+| zm$eV~+1y{qmgb^oPOe4vIi|lyu?w3E*1Kh*2b(tR$i8=t&rvznC}XX1Gw0R_9=z;7 znJ=Vib*0dyO`nXtX#d*A%yU?9?e17L?o>hVC^1qau_@dk|b&>aP$b0I7C71Vk zpK9-4oBF;sdVuf&PJb%Tg`4uzeqU$>I~73N-V1Gw&u`{!P0%Y|0( zQUSF4d!a2BTER*M(7w_O?KhwmtW+nS+@F8JN?EcJEc@&cw)P5a5Q_vW6%g-#5wGB+ z#BX%qIihk-x|}0ggzuY|h+obUo!z0gw{S1`^7k!VE9pr(f@>`z9l`vRQvcEk&eD_M zRF6+uL7hwn_mcwVClJ>v=R14A`N;XsIbeN~xp#8a;YH4!ji9~@uPd;<8)=VV4+TG; zI;etR&2VuQY^iFeF`hoDywkbLInRPubxewkN+*;AYgrD)yL7H4_*#^)ZzS=q#3y4a z&r@+ay?pM-36cIfDRn1V;mV~wlOB0e^0LyBy!Jwij_^F%6Vl%OWfB-Kw!-V$={aM4|$a`K8wuG!?PkQmmeP$PJZg-oLbgUJDH@xRGSQF>R}fdRC+ z0klsE?WnG_QN7S^7TU30Y3%{DMFH{tP-w5}N_$H7fc&x#q^%X&tGm*E)C+Be(0;8e zZF4WQ--dQj?D=icYKQaqF70ymw4ip@q35;5e;Z*tu$Q>AX^(;{&t81azk}e)vjf_r z;L5WD+T(jYw8w`?&uWi*XoFUJ6pVE8nU^_ByodI9rp9cK)URajom{QC~Z*MVp>2uwA$cQsb{o3=(DcqrH#1Yze{?gliUk!{~l-u^gU-$ecvlpCzLlWTV<2@>#+A9@`(XaUq)=e_th-QK@T3z<^p~y7W~pzl@{} zx@dbMBNrjC-G$Nau9Ln9S?v1@{RMrH&NwS_-NUmr$2i2?MR1tdo2)H#225)>tji@MS%(l4sJc^v?~K%QN{>&ypvex945_ob?O(Li#%M z-O90QKTToBr66TO20h(4LveHvY$3V z?C0EEiDTWsY%l6UwhWPVY|8AGqQi#WHvnr}|# zX6nom`nXE}oJ{6p;lv|2csWncD#1#v+?Zl_ix}cjbzo&6-Id&1H%0Ci*Wim zzGY2>KWXb`-Q9HW>Oa%Ik+a$F>BcIa&9!Xrej%(qxO13vX{TEKlDEO6dziB>u32N@ z(pza)%xii&n;lI0>tNE~1e5+cnDjRuq>Lr#>fN7+EeL(u%~-IsJ`2q@P3j@KAFN>BB>> z^3NgtYy9a~iBE!Q0qJ)?uRgrz^uOOj`YzIkhnnG}4-dVj?;`!-{`7N6A07nXTT2~G z1J};IoR7XYjP=Xh++NaO)xhvez2N;a1MRG@<$P#&pGz^qKL}x;T-$?fOG7_yPabnE<6XEV{h^qh;5IktSX4C zrmt1~mFY)Ad}!nn<}r`=W89zF%K1Z^N#@ZT%r>g?d~_Q;a5Q&$jv%DG=rB_rkhua%c`RXjtZ zIZTZEPR{C5{*wA8o;n-oYdh3)pd&B(fTLm!dRr6k-p}JP`h)LpOfmHWHu86p`#t|- z;@(@yhlPEg%iOk&fN$7mL^mNmTzWg3zKFB@a>z>&A&0z_+VXuzLi2sKVBoLE2SFb_ z4IeFzJ(2q5D_iUld!M9UNqI5%*|U;5RVsd4hU# z-qM-=EoS;)<}WS%LB3M3>VLoV=bGt*vA?wR(|x62(f@ww-*2W5CjZjXzuH%t{P#=$ zb=DTD{K4>FO8T$cG+$}@-!uIi%=E$hUt0RnzS6OO&-4q;^zjj3r9X=LUy7dq2W>#= z{~qc-^XYmib0=+KkIkv-eGB!!8sYXl3uH{JN8y&FDoa^(;)pn7SNT*S z?Q9PHRwZqH8*ROnwk~OGqaAmIdJOuVPQUPH#V>s5WMwDNtBtGpbMyN%C;^kn-qO?T zL+y9;%k!mu8@%S29G~n#9UsZsmOaw47ju1e^)a#swLk5~TpzSgU&Xra$;UVo#ecRy ze(4nDqgbuwS##8HiLR5l9g8OW8b@ry4t$$?+mB=GO8BpFJkObg(S(t__iDZp=2P3w zM%9(*H3i$=?pxQQtz_N8_fW!M!T>@Xp)VnVe?m0hwu)s1+oCkz?zn3H4XK;j%33F7 zoBQWe`1Uo;clV!I@7Vo)ueQA4E}mt-OYC}uPuY)>{i!>IPQ5et2fcq}|0>R;vG&Bi zDKzSxNplS}Cy@`n3|6nJvMXN(6U3JR=X{DUgKg_QzAg8E=Tzfh;vsHXiyner#lbtv zkH99W%h?K@z6|{Tiw-`OG`IZ_9hl^a_Y&u}$9NVR-pO;IFM~RG zP`(WOaX2j=B(J<{<|@7nUW5l9yms+r;QvR`4gUh^iZ6ps9+6ikk4knXkIGgVJ(6A|k=~(-$@5wzp$ojQe?%`GL-{t;7`>$vF4mowge`dCv^CSMUrL0w2tXpp; z%_GFI0-pv)PgnhJCFh0La%S_>uRZ;#%snpWyq}|M_k22?bCe(UEj~D(=jhR&efo^P zuHaL6))wvGKzX(6mQRC+_HWQWpK(yz6tjW0&iUZ_URO|VZ8CH&-djElT>E1-tV91G zehh~BeH;|xzaY=%$;y@gaqKwEe>Oa}IO)~=@3CoFk8^%}?&C2VL~kKJ4QlXhp!^u% zBO%ZSz#Qm{iO2e<`01Dp%rk4NILH1rUEiCl4V~!{zY3&L?C`9S^XHrWJX-&_o{HH} z#y{1=b`3fVkHy-Mnc|DV;!D%)>AUzx__hAY{dLTSPyD>StawYDS=^1c&E0u>A!frq zKW~pK-Ugq?o5)Vm*h2nY&&6zD-dvjtU%A?#nJIobNghm^;t4s(MoZMwJ^i%_oZU7n zm2y78+2W;hOD3eD3oMwf7WUIVp#*nYAV7Nww)GJ7(=;4u443o?D#2 zxm@gr$-G$3x+>8ed&4+qKA$j>a2MxOIoKDQ&J}&xp36DcY7YBiq91c;`rf2UtzG^V zyQeVCwl|ySUFaQ4jy<#{P0sEjL=fccF3GJ0+cP&aaPxPdQU-+Jx{8oMFHBjTl?)n_u}gINz^< zZ3(*8bAAn4u|ZS%U2HG2b-fLJ>nxFD0&7{Z%}keaLVqz5{cjj;un>Q$bMU7+U5~6S z3VvzQR`kBwto!hBaNi71{C)Gcu>U!StL%UFfo2uD4a>j5CiEGb{W|FM$gtXJ!TG-H z^?aYyqp~aCSX-v|*%Pra?Ud|yW}}396zoU>WF3z>7xk#~L_fNATc8~-lvBCPd* z*njE9*X5nxwm|4+@~rUS%>7OfSgUiUr{2IBs_WD`oj7IPE&nPX2k^6XjYIi3kh5O>9b_-{iN+m2?Ik?095q7#I}j zWi2fJ4CH+r@0VknE4HB4`zYRt&O-WGk&_D^!{i+_f{PKlV4eg09Qb&)@YyH07k*^D z{+ZmvpWI8HKapp6u%6rG8D6dD59FD&capB06@EybFX-oha|>9(lcqa*k|$Ueq@1ip#? z0I@|9zXx+9pZsIu&+W!HdG7RkFha^?zv=gYGV@exir-GZ2YhRuxW(;)|K{;q+|5F- z{2p*mnKe>oHwsVU_kg?#UrJt_Pj2}=xCh=EGn?^o(Co)lrzl<;GuQKOy*o?zO zHTBTRv(?6i$TullzYhdy-{)v;Mn8G(#9LoO8}Xp)m`oeVt2=#XE@y|nx=rn4J@Bi# z&wIj%Tq`=_5YrFBM339WpHv;LSW-Ha$~%!ew9O*>qs-%=&E=cwqd(P*`p>LB$t+tJ zG>7?bTm=3QYzYcWApO<5ypwvV`Y&WBbW$(Hhe+esx4Ro>5@u|7{{cFuJ)ze6_ki$_ z4G++nb#k0>td%mK(cx~I*`a)0sJfW9-Q9HUcK3@?U!XVZ<2d6NJS%?)5=UN#yZPD< z{2`1p%f~;DX$;-uZi?9C{;8^KjocHUmvVFM7-tAyP4KrL`&89`Nc;*vKhD_9KUV+o z@6vzpttHk2-UIB&&T$GKcRl&U7eUrM?3LuaP%qcf*e?b8G?4jmI`6P~GK9V?%loOt0zAQwx*Y{O%I!v(?|C@35P-(-G|9{ zaMLT3tn(i#*sI-)9f07}auc_Do$MnYp0?fHjJz6=S0n$3tPUgh!^q!~(`}U54tya< zAF9d@-pny_oRVj*v_@ z)G^QTV`UG}hX0j)BGh(tJhBNKuwbQILp{E1dwd)7fxT&q!Z)Zh&O^^(r)}zd_x=~e zPB+pw$ao@kwmWXQBTrXnJ_}86-_GFZ*ADHE-su zDbdNx`Rdj@yU}iAzHKK2HH;&Vo+$0g#%FDeH(=nf_dUt|T>6bu%z=E&yC=p}6uiye zj$nJNv&|Eb3AQldb9F~J=TOzt$K}ge@u_lFd@*O6lfKxscFfm(S&|00_Llj69|tMs z+2$qI+2+u6#h@qDU;aSZ3)y;P*@v9*ypsMC+tO#SC7spCnzjl4q%B*#j-*Zp`Z!2| z-z-8Cdv=m9!H*A;u`3{tV|f;T2PeqipStDkf<6nn<;_Ok3dLsuc~d?M{CTtR^{waS z?Gk+!s6580Jbw0D)ep)Zozmw>{^|qrc8L62J`1AZr_qkjf;>3~y{paY+4-{XJ*9Ks z`*gQCO-Ei_7oP?Awor9QF#nCCE17Q+Mi5d6Nrb_K0fab0UqVEsdlR~*LdsfvLM^l} zFE|0u<0_UGTv<_7aH=ZW804aCz#jzGCH4wC>(c3fx>O={DJ2dZU9?%3?zH)SEb)uH z@8oP?`=GtElY*2#gQ-?sf~IR->R%sufx6V`&j5Zce+G7VWYV>+5c?nWC&p&#hrFB4 zyOO!zo=`gXTN9+MDBLFdW+ij4oFEvIlDXq1$ofNk7p$jDrjl=qPTu`M)l*H?$M0}& z`ZI_&wvs0q=a7FFe+H)m#7qXY19sfqb)k8?dFk4U+LqU?=4I{Tvi?&GDa4 zFTM%{n;DKz0`XHY75zb=UxKrJlTK+-6$L-t*YQXN{gcQK*&cN?4KtAI(X`>i4bPjq z+>T*doya`R$-15$B&I|?@xndcniuYgs;4Yg z5%Pyw|sr{nQIRwjRN-*q|M4WlYcO&zt&!j z&N^F$i4o+|$^8v=f({>vH7&(gmVV{)BiXo-NF2@6}_b&9?O|^Ze}lgDPD+ z27RJy(+X_bwA|sp9W=(~jM%KZ!jm;yxXbz5L7xoK?k#ZsZcsk&qHVDe`ED(CCvl7= z?b)$fdl>hBV*b_`vBO=#K2#I=wf(H7pu$$+{^grsWu60vk36KFRxn=ndu~O+bG)y> z4}#RgX6WtE_m#Q`oetgO)K!`L$^B-zmwJpo;4!(Uj=K17gQ7`F??@6mKv$1;fH~M# zXFIj_|)2CjDnYGS}9Xj}`=REt&gR!I6Y@1;e=yk?;Suv7mI<#)3TVLkSrK zV_DGrHB0pQGnZ)dXVqx)Q;#lMbA;XV~h*rcHEk($9&1laux!&R4UmwNWPZ z;W*`OwI}>ts`hkbs1_SZ-S0!2`j|E){wk7a2hx_nZ?)ypjY@X=AjVYodMfc}-TJ^9@tGo+))UA_^!z8$4{8#W<0X5qx3}; z3Ftxx8g|-#D0Gds9jr$@#%^%%l7{#t(@9T_S8EP<>GVG$1Fd2ra+qig6@L!}@3@=BzT*~oG~fJ=`_NVI zxMiN^tSR&!{*QOu?|tnZ_nev{Z}TmDyZRmX`$g}#KgfN@Ep4EP_giaj^B%qfx+(9t zwdaE7zh85Q_k+3bxR2()<8Jr9<9?j)@0Gvf*7+8?^iHqzqc-lHOK9Nxo=ceTh-^*AyHe!eF4A(V1TyyRn#N6oKG0p?bAD!W!=rNu1$Lup&dm82S z7b&A+jrtg0Z`)o|(4TOc=aG9E3qp3do4M~?v+S%X@Ra?0Qq3X80x7p>83)`(f`8nQ z`J#*q@$yW+CC@S3J1J|SjpE)KYa*WhLH5G3elb`8LHje$XwOG9;lac|CnH{2c$fh zkH>cCnPqAHR;HGh$|_A%vml>SoI5<$?nL!WKSEX$?bV)W6JTNLH? z@SqCHZJ)o~<_zD*8Xz`eQ)jvD8??_~Ze_fSw#7uq9QWw`X$vYTGfD3yY>}RvJ9mQM z2&1SQ;F@`AGKdMJe9ep`$lU#J+g5S`)qBojq*O{bUL&_PR%I&!Nx(`;b){4 zS-WFQ?&;7}&FFVjH$H@ZyB^W@CUNDC@t%(QlWtt0^{K5LzHv|o^p_K_(7)1AQ!rqH zW*mjSL+{hpm***MlGhT2724rg44sapxUwUdSDpoLa)8M%e@JD z*CE!`AMA1qeTNp*7Mj66?%117_d8{-Z(sJ)U#11u3jJ`tPe`>HClq~1+hycsOU6y7 zugxRnPmZ_zYo5gqMDPD zKQ#0C$R6^!E3VzheX!w&wzns(yV=a=kM1z@xxU=Y=NkI5zIsZcCX}9v3sPZZG z_W!y(4_>r9AL_9@@3~NU;5CEP+UTih z*dluHTrJ*M%lMLnZY_>6X6Gw%?%=h|f2J@Gx`z4CWadSA*u3P{$=;9X08=$j*2o}F zmhEx-3>{r!*dp7^@I^s0@8UX-t80ken=>TXJ7-9kw{l2?ck_@wUVTUmzM-|%n$L4) zw_uxw#6i;!nt{*^hGvM@rD;(q_;uD>ce#rv&nYj)H-w#ubE<>%B0X959@0u7tvu2y zCar4H+Dck>(n=xzJmN1V{%YdiO8l%HqKb*XGwvYbjwbH-e?Z(0;!Ys$#D75Ck;LsJ z?qUCcxTA?XmAEhe2gDsu+!@3@?jI0$0&!0u?nz%h?n3H`Mm^D}gV@A-wZsay)O&@Q z$kE!jvi5O+mq>DJ?bmVd)ONUY2(spubuN2kZf6kh2%Yb!YfcC62%Yb!BhE>8&;CK zz!9byoTsSH8P>(A%r+Tu|}1PM%nMAMNM*h0zsZ1Ygd`SAT|L_Sq8|QrFTSmB(P)wLjxRvmA!pv=M;al`;cP~7r zUt^D?Jy-NJ=xanzBl{HlSm)op@SIL9+^4Kg%zX3m){Zr6P+N=Kjk z^%i%^cU#erJn2 zV_A#RX%*MpS$+GI|(+7AKI)Xhh`GhipV^PFR?_kfu8A;GC3Y%HBD0Jp3-lxg8;Gwar76s32 z;C>(BlZ8n$^Mey(%Yp~Rre^iYtXpKC`Q{>hCVS55wZRFoABK5il4(b2!Tnm>b2Ju?0J5u}T4n>2A=bmIZoW5RUnELKH`Az=`GCPDnWMqE*v$T;XJqzoky#L#?(EBUC zeE{u$!QXax-U|QJO{tfv&2a7BE<`UaZ7Pkjm-_0E`bs(PqaI#InXmM>52>dP>S=?& zoTZI8zfZeoOyXRS^m^LJUdlI>d#R84uXz?~OAE_W+u&y}eEt@GBpu;(k$kr@~AALE6|K$4(8i=~$I=JH$BM1$^@k`sWGnxB+dK;!kkgFMq^*Z3{#Ww;4f%G`v+%}G zJPV(Mr;m7^@mI>d!?RG@u(XviA@nh%xeDGt;hnVUF%N~#{DkxyNOvFUPJ`EI+VURK zTZJ4)g$#=Q1U{leVq;T3)3TQ9QRyG)(di-^k!8M=`Csuxk8OqQZKR!~4)U#HZp$Ru zN3|2uI~_?ES@ms&MR#`-$wceAc|oxnco zYHTM~U(Eie?Vq%7dBneODPwNnKJGt#-&E#a$gNuTO__hWM5bb&z&nxQ#9(}-cemrf zW<%^a>;$pt2(;(uZp+b|9f#~IhOw`BoO1qW?V(X}n^O5R-?m)r14&F$XHrkQgj*)L?CT?UeEz|T#Mmn~V;-Ad}&N(M|kD8mwyvu`M%behqZow$a+*kG~TgmH@&VQ4Q zeEttOw+LUzd+_(R$6dp93D+w8RBpxRn+M#}oW#vu!Qv+~hfF~(f`uB!9CA2vIf1M$ zWBxb-Srze52J^=;$ZBiiu=26YA2X5B;l#_z$1#7r5?Ku&no)ko(6Qwi%pb=ftDg)V zS6-C3#oJ6gTk#<&-vjp)4=4WEE8peYFy@!Tk)!!M3_qG%yf%+kp5oD2vu@$cfvr&v z>`2oHj>@U^;b(3*m{xfmzVE`*)47kxN@BjH#p2&`nqb6^gif0_l6PsmYvaDv9ySg8 zQ|4b`>B=@h&2t7C4!0JUrrMKs&+?zGSRXI-0Nbn`bDx_u^)KvqB3rfJNj>`uWhDK# z+V7;k{YjpwYv%JHJ zvnMBed9uG}XTQwa;|pRhP4@nR*&mB%e`_v#d>gTwnx>^1o5tj*y|8PE?_=3hV~ zaaI>>f#yc`@or!bY_S&CR*_+TU(DW}eMfac^O(t}gVL+(#M_tO=Fgf&DFQ!T1Lg*xwQzqYJqvOf+?j2@A$A*p#fzN?^Zk0Q+@GB@-6Z z_tCEMAsaA1=~tI5TyQHPD+1pF_W1S%#e)XRKe87lamf8Co9Aaq3nnaB6{TGz=MV62 z`oxm^7fdR>f59#MH=Fy?}q5E|NZ)6 z|Jfc=>5Yx)`rqdl{jYz$#kxfr>IT`NxnI)Sf<5^8TDB(N`)+}G2Pg#0HD@HAAcEAnn$SL~I(w|l+lUY2jP zhmN=6l)7-WHn8@uge>CBB~Gaew>`4BmpCUpIFPz#<;5!JkB^=o=LXKb`DvNtCt?H zRlh#ENW9grxo=tmlWp zi_^1kWCr|=gTD#zH|d6goTR-c*1nsgs&m$42N zzRfjod~7~z{C)6}COR>Ac#8FBK5KiK-{4or z2;eOd-fG~j0^XLx+iH0G5xhOx18=J?fwy&Ek~e1nZ^Pj2ad_JVZ`>mprAVuQuGXfcb6vbguYU%NKdhVXl+vUq`isPF3qDSwm@y`o>8< zQf&Bb1MAabAC}G;ddh}!t`@d80=vTN31VL;=NVzI*#0or2Hg?9PY(*mM@afS|G7pI zPZ<8 y1}D&!2N|Igla$3=Bz|MzAnGYn0NA|MPc0yZpBC-Rn=0Te+;1EyyqO=H=K{KXa%CBDQ&Q#V;rVl*0C+>}kS36>~`jl_zw{J!VS8ypCTX}j6o z`Qv_GyYJp}%RBGhd+zyuonVigjO%r_>LJvy3wNJJmQB6ste4(3i5u~+r}?ZBCk^%U{# z^r&NC!Y*sT-W;-Z?j5at+o?r&xL-W;_T-knP2|^4{@}EZ@DXf-xd^n5pvK%k2y=hS z`T@yE{$1kQ5%Rf&b1m{Yl0o}^y{lh+7ygIHM-jxBb~`Y}z#~fFggY5`J9r@k7(c_B zTL{v)47thopRf=qjmz*$r~bTA#tf;J1rB-Hff@3#gQAk&r?ghEjByd`WL(U887tWU zBc*W^dl`=*9g-&lWoIGJUy%PsU}aNUr?5xa@;zX0ZZ-MdTJ{Lq(Cq zDxo%Cy0cK&s@u-JK3*%l5x<>#vv>#h)`A^eA?wvt_H@2s{nIlIqjAi_@%8Ps+?JiS z+zwnH!?hO2G#qKqE$ttt^&k~|L}+|U`^)njz?Fr0U?S^fn#O94({)-SAEY&I$2?Jw zke{YC(w;~Lf%c&c!dSkFbyH2iaT?0+jH7_-88|x2oK@3xjB#2TW89B>d=O(?a|M1` z-z%Hm@W8ssMYI#@=K<6Q`DdBe17b1P*P~AncFPCixbWPlx2B&N%1&?WC!5|7BA?ze z*A6&K_E;BiKwL+x3n+k5#+n-7*BY@sOzd}L^QZnrwr|2tq`ud&em_aXio#6m=pHcaE%z?r{CV6vl3_3QLl^3YX!DQIznoZR zNH`lP+4!BBBJE`bq@U{X4%W#x??LD}7X1~+f&ZxGl8)4JzTeeybZvR=cBYo=-&D(K zFSfgXkiA+9Zp>OP7HdCwy7w`>zYVA#$(lFEM7)EFu#R```mkAdR z$c68B*$L-Y*$XG0aS)C#aTJbLD1^F3rEuA^h*RLb2CQL14>aA5dbu6-v4*~BX zZ|Dl;9&WVv9xlGe9xfKT<5Wlu=co2I^a=Jd^j7;CE=*1ke1csK7YoM-ud7uCJ#>se z{yVrQb7ZE~%ndUpjhhK=$S69rjq0ao^cprXP zaS3<(_EPQ+;7n4TuEBoka9ue!xVVA~+P;vZ^~EC>TJdl6s&=}o*K-zKX3=A$!$^OT zZX--8(r5jl%Lag#uRC3~0J`cW=&Cpzr*@;uzQY>!2hd;R@ZTq$M*58MoS8fAI^|FK zu7l26ia;{yBppU_l3e+A4m|1IC_5*f)}7t$TzM)>RC&H@es2Hk9c6wUxCUE*Yp_-K zA@@f7htR>hpo4dbI{1dXyP4)SU3wJl6prmNPTX$e9bY�Q8jOF}3FuXPC-(R*%zBkQbYVgQbmbW6%+b)D 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

w%@l@hLed^TXV~Gd#>3rh% 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 |1QR#-cn{@jT7743Gj|#v9U=Fr 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ð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

c_Z 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¯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%0Dw=5rDZ58`G{I@DUygGG)*h8kC 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%0Ai5zu=9VP^LCL|%0nt4G*Zjb|V(?1||FAo* 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%0Dgpsw87Ao_>Hbb2N8e8t~-=`>P|(+O-Lk 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

R%}>VXUgD*1WFGJ&P1ffM){tKKH&2-qIE6X; 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�J`uUQhWj!;KAe4sQuJfRnph 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 xVgD_J*c?sUTI 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

jxTB3 zkxvD2$Jxt1UE%Njn0+J3^K_lBS1TH4lXGK!$R>>Njwwys@5GIqY;xL2Bj>?>WxZ|# z`%>+anzTR4*fEy*%`w({E#PV39PBZ`){-?(GiiK*8gPcMc~u=*RA93*etd@WP~n7^ zGp6asS*8g5X5wXh`xE2Q*4%0N2L7kUjI;G8{B)MpdzAgzjpUv8@T*Gp-G$c|*1oEm zlJ*C}gJe&VdY=q#q8(!o$ERSdtu^@{VXx;rYv)t&Z{ob=^P`mQG2FfdBW+P718rW} zD<+SokG!gmQLhy6Wc^QgF>mw`TOx5b{oCsGVXrZwAj1|wSZ~H+!+<9EO~8jGPTObD zIvcvbAb+7N5Lh$XVbk-2&&!BUqnswdX39Ov_sihM6ldr-LdQz#6o#9M{tWO*asOmZ zakGKzHh^=4ddZ$>9(26N-g~Rq3?*m0tT6-B!{il0x(ImTu%x(6oL{*M`Z^On!6(@r z6)F3>R__n2VRqvD_lty|2p+6?z=>e&{RJTPjArfhGP2xkNp{}_9AgbI1l*@M<0U#d zkFdX$I8_sHH?g1Dm$R@UiwQ9q%7gqxu5ym38Satb0Bs}jS)7|W8WpMx(7HUCb3@1& z-YePn)6W~g8(AL}`8A`gqYwCLCenQZcuIz-5$u@wy@SUjyf5^AB)^~ zQqKFxWjpy@oFJkHLQi8m-_S z!tKhQ^byu~<7wyLk;fz8$yqk;e|5`wu;c8dwr;Jo=o)+{?E+|HXzsq7^WRhj7OW@~HrP~ZZ4__zC{y1%fdx?hels{yp1pM!I> z)$GU1S+U3yoCS;-!MrJ4g|nud3r&ti_ARlSIuYfgtj8@* z18c;Yal84qsjI5N)@NX&%h?Ox9M_t;*wch>R?P{QzJmWDHL)9V{-_0S>7`FoT5yjH zTUxupT6K?pwkN@TgT3$0*!SD-9HQ3Kga$b~&ybS*ULfdy7YxdF-``ud9Qk6`j~k8QhcEp^SRgbI#`|{eb9>w1L~n&&ys} z9R7{;SwgoD5CzSSQG;xGxZj~G<)en!I?(661}&5MPNC1~N}LbhqsU`7>p?Eu@PZth zv?DwjDf?xRC1-jlQ?3nyNKdHt(lJ89H zTB}95whY$3k1zAnc*mo|3Btbuj$uDug5D#6X6;DeAZ;_c(4V#Lew?Sh7ksfLLI-b= zbPyU&#F{i8od#2*E%o;vgZ3T8{naz|`Z$o!DT|s>stw`eP3T zYA4JddlmVw($D5_#)9x6(4gC9^y>)xkTaiB&jveY_MS-b*q^2x{cQ*OTB)p6 z!UNz*J^MM$`QAVsPS8h%Vy{G&>nWoE$R+%6@c`b}GdZ^q_a^+5e%Ma=Us0w5Udedm zXfw|25Fd?y4|>xN|4i~Nr<~uyYwWjE&r^Xl_H*VM`!UW;3ZJ)vrz9Sb`gJ8ucfzcE z?*hvBmVWY@l`}cSKZd_ATGq7I65opdUn#>{c84=2a&T732m9VB zI$Q1GU${x^_f6zH(lF>d6cdS!-lWXOP0p6=6AVZYyPd+fh4Z!BuemM4iF zw|ML~%>R9l1^0#Yio7RA?hNVeb5BfkRDgB2;!`@%4ru4sa2gyII=JX%9f8?swlKw%UVNGh1C%4d)mvQ4 z)tJsYXUVVN{s!&^a4&(oAKbrh%4}2U>(Ft3Bi~=i^ECL`4o~jiNy~YRk}Kd}27eFu zrxP7}{S6g5&4nial~)A^{Aq=r+)JdtK>Ev+bA@uSlO@|pqtB(Fh5zCChx*U=e*F6# zB>i^$GP3WE%j2_lT%F2))^7RF`hfnQ_5YFo!H$D%$~x;Za5UaaQXlNl|Ce6@k1ygk zcsl9zY|gw~c)h2*licf&{tL9VTFyW8u^-!yBz|m91;5@3Pk_@EZAwH&i-5~~OCHId zQ12!D^|4j7BZ*av#j5N_I^g!g?E^UR52`|^+LW9&rO7Q;^XT0xCWt3@bTY@KUnY!J-M+WBOQnQ z`ECQ~__zjh?8;ly^l6mQm5NaQj}P@GoBh1a%^}_tbCh>;xxstFoS4?iz&;pIKax7- z0gZL5AAmm#puSS?`tCp%K==SZ>RSUTfba)?T{RohpARss5&oVgza!jtVxYc9xqIXo z_kT!vRfKN^-Uc}Dk-kmvq3h1Zbb>!h5959X!mn~>Xa?U>-+JV6RO*17juHMF-xG=R zP$wfimN*F?tA~Ynjik95R-lJPffu{-W>_9!lILRFoB0dxrZtA^G?C|MiN}@ud%|>o zC;Z_%g9WcqucXep4#H29p)$9yyv#0bW5V(>c=Q0g0%C#02hbU#+^M4tb^W?l*G1Au zy-kL)+(8mXSvT*N7@&VQ-ZkOzJCoH@F`Va-$J`|TT-@3+@iL=oR~=SAH5l@HpFJn*3X_Fr$T6`ikNd5G^r z_S3b764B{;@;d^Y&NP;Y&i>Mvf3nBVdl`TI$`$s{%PH@H6|^(%a#***eq_T6d;K%G ze+Aya|LO|+jZ8zy=~`pSeehb^uH>n=Ey7bNrv_UnWu#Ju_+^7N$48* z*@BNf6ntqnx8mOozO>J1X$XM!XLf^h=1BI@e<>uL4rf`x?WJ z>fxz`rFt_7KSuno6{+4z;w7$-dhbUDH{+K69v6JCPW_?5uPjyP$<6jxkB*D3-!)6xrJ@KGih!xWBw#!+1{ewC0Zw2LFaXE``T)Iv?m!oy1JD*|4Ws~xKrGM<2nT|J zz_P|WU;a;kTK;l|o}`luu5 z-(}p@5)a;!Iv#q3|B~6@{j2^hZI%9vuw#Us$EIv=3?HJqVuwS#-&-5XD8)TO8FJTL zz}1`OG|2g-nSb;#qNmTxH+kxMfFA#qZ(VP1z>i;nOTc;HEbs$x3OELQ4}1-L0UQQC z2HpqW2I_z}fLDQ+faig~0?z>3fK9*#U>&d)cnEj^SP4`E6~Ho}6j%t%1KdCnFcp{t zj0eU5BY`}?2@C=T09imEpcl{`=mK;A+5)YC6d)0Z1)2fjKrj#pSON1*J^0Ue6 zI(Ih79j6WQ6?x}hlY0|I4v{-eZ+dbE7X7-`Q{M6S?_m|eYbKa77!xO^d74((%fc$` z`n{(kYa7SA|9bD9v9V8XxJOlFWMqFy?p!J-@1wXf{t*4?M%jgW*%5l#X~Y-mWjB0x zrfiYvk-&!XCs6i8XdqAMG5+^^__zn~>Qocsb2H;~3w8EsxD(La<9FJ0T}RhsobXHI zU5ei}>S4%DT_#?1`EA054x`vt&Y78T&A>g}5%qUK-h65i$y>k1sB`_}9on05EnFw! zTDr=avu$E-=ZQ;lZH!BHm2sY9qCSsHa&eDd+VA>X!?>MtG8`tC*`*L8m-?gOHO4YFaaF@n9Qu$yDN-vS+1Zk;pzF<;t;jBdG0 ztj?gzNbFC8jL;wELZY+WbLl-dj3b!?jO-yBVN zjLzpv_{F{)`D>Z|FTcwm#``qw;uv!31JA9{AascCi4KbXiSE7EsCy})^3HVBxqi_O zZBtx|OZ0Doz7G7fni|*ICHg12Cu_q7zJEb>H|5{lVbpbw^@Ts_+*4t7_Ki*XF9SY2 z1sykaQ0~k8PkPt}J$y&>a6)!YGoyb_cjVO2))}WDKl3}D+}+gg9aHx~lfoR@(TDci zPpsW<_v7vhsoU>u0X$<6=WF4Q*xQM58(n2_ce!-?3!lUuPxM8{Hk5H55#FsMY%TCm znZ3QP`%TjtbRY|PGdCYEbMrTKTg80k;OW+eS%2?fob`|Hrdj{&W1iKLGm_ilOzH%0 zwQY;@RXz?+?!G1_<+GqX_jO!!ZKuWPIW&#`Yo=Rx%hHcGESuEWWA`j|`8}~jP0JeK z?uEY%{^|I~;LpK71Ai(0BK$@8r&%g{Pd7Z#dxqi3-bIEDy(=w-bCa*#*mE=gN#s4B zGD^t5nEZ!xp1pJ1N7eGQ3e~RYQMF-4h5BaNA@ybIA$7Ls1O9XSKvh<|RdV%w^<=f% zl~O(5)r$Az-hJtA*YFVD^CFMWHr%bokza4#n#&;nZW#mI(_biY&0oJ%jkO%;JtvBP z(g>TxJ8qR5mZ-;;-|gx^dFx-A;OawpcM!H_`Q54#`cnv7Ouk>Hu2D-J)D8L$Ok1NW zQlC`!7Ohijrah@ri|SOHwsmTM>Zj_vX`iYVRTETT)lxNT`uA#i%}D3`{Ue=HubLK- z&Wcu%&hobFl!d&CfF#TQ-ucr$R?91kTvfcYa(mSTSKTK=od-M)=d&-|?aHIYC7^#@^sG?*Ldm_MBVp2 z=~9EC`?ab?u7DY3YH8IJRsPak*NP1;wfn`nE}vbcy~Qzj$NMXYlPcc$fnZGvVJ#_?G~W*224j${FgNl@8}yUk`PD zPMs2}7pl?layxnTtDNB)0&hPff04ze^|REAFD&Bjt7)$F&{za->xdhAXs9!wdZBAr zxx-mhDg1S*1(l1H3wJc~t1WtjH#i2kbM`E96#;Fi#}LxHfCFtGQQLXPdk!=|HT{0I zvCaJ|2>ukL)~L*BHR`Kr`_=oY`_+i*iE43Gv1?5AMAwX}Vzu&ciSyBl>CXMNBb|j` zk8(cSGSXR0eu}iED+fAP;BSczenfaIb$JnZkFaUNKi&(m@fOISss*n6ss-wE(o8!z z%2`@A(CPSOlyi`0pz}TW9}E6`>KI5`g}=11UAxGm(%?CiWU1|)Z1}#ni8dX8ZUrXQ z*cCj>gr@-=Sr7kmw)3NV3Y`mh7iI?U#RSf-u@51Rc-MP}hB-ek&v4qvH~W*>&P-3C za|HeXM~&Tt`wp~y1Z_g0czDoP%?m&l9$rxF1MUKz=dsf5w+XokjOJoC}aw5V|%Sc?}|NC*d05QRw4n z^lTvd@jg8M2!3axX9eh)$meRV)@2#qn!hi0?Q*Gh-_T=|U zQ*v7OWPcwz>%-U!>PuTGWAj!l@7>>WSq(Po=ttxv+*aqc!4cy zAoBWrdd|-K^K%BF^MOO`$wiA7=&keEi!+IRAxr1j{;_n9ZlTT%l=H{tIVu*}c2wB( z6J_Ib=2XnK>5C`mqZUuF?fYOx&X+Pi(fb~s56u|{zhxDR^c(IUkkk6Z={fVzp#tOGqv#I+7{5y!O zR&Y<>NPF^5WOd)tMS3W5oAv(CoZ0pPIU-XfGkKo;cxj8s4cXX=kx!~2tIv>w++!#@ zC-qp-wLo;Kjpz^hlC!ixPhVPKdx1W!rEgn&HZbd8eLSdQ z7Pe`YzMFo38QseM6uYx5KW76v_8oG(iLvq&JWVD%Yq8B{!@sgW{PkkoSmDvUbh0gc z>16#l`Br2t@+hd7VY{bdhVCCgpCg-a>Rf|Be?PA%yZkx|&~b|o(>eIv3H zd5PTQStYuCC$gD~oTebNOk`J2dvxUZd-!ULOy5Qh?+~6>G1t}s*(4x`VT?m|r<7P5Mg zdyDPg!I+Xhn1_69$Vu$F=xrAGtL=T6Io8j{=8Uoz z=VZP=Up>bLiOm(gq|b&@)#aGP7PgIG`ifwo_)~>H8wCiE95Ajd+ zt)#<6pX%1ahxC41X4uZeeX9ExzNfc~eNVrKc+uk%^cb#8<_X`R7b&!N81si0mlo+^ zOY?1iU0P)8@ISS97WFO4@wSao1jX~t^H}qNB6INKRN5_`yR?0>cf13_K|C#N0H@$m9#IT6e~=5r6xL9f%7wuC7ey_Ixg ziBm@3EwSkZOXllSm&~`li+nysPFm~=J*;qr{!rng`dH>T1x26ekHkKz2R%MR58pE1 zwxg&{FNpg@&wOl#9)wI}PBn7#d|NnjPeoQOXm{)}bSrvOP`E=6r+sJQcI#H= zE8(>9YBo^bi=O5EN4*z;US|6T?a_^!nb(Y@Z|0BXTpMu0x_k8byc>xAB$Gc}($a3_ zJmeiocM)DN_IJ7&y)ENiWbLbWDY`cU`c7r72HU;C1|@TrtEo~vooyt&tNJ|Q_5xp>Fbw=B7fcimg`V_nX}TN_aNsifm(U5XwEGsecjcxx#tYhf}A>$c+52L#7GLDQ^L9 z1UrMhz&>CnF!g-uhpF86v+z;+Tcbwl3EkQUB`&o#|DbF8pwBA;nvWh4&?7u$UBGAf zEPZS22$e5+f8{*pS4Iuh--NzCu6@t~d?w8rGf=M}KAX7IA!VfwDgPGn>xlo`l7Qyk z#1|94lkj5FyomoIpYXWvr%PLej}PGEOM~B9gOADFe+KvO!~Ofpz2RXv^?yP9pTvdd zFX6>R+)Vr}@^_N|3hA#_SethyoODxk zKT*$I>I|d)`PB83k$#$Vx!=vy*M_=Ilirr{VTP_;Y5sCOW2}y|ExubQnOsw}07oD?Hxj;wpTV$|u3sEcluglvO?{Xhdm&en;sfJ-c*L zP*!O{&@kHYDr=D(5hL&kJwZP;7Juuk3F<}o+cNxamgVcOa=#nFKaIYFcI5}XNSW@) z=-im0`uR3P^`)an=r=+0RYH!wpY%&@vh`zQvh_1N@78^2%Sd<*M{YxD>m#(~B4v(H zb`515)O7$nN!m}O-4~vwKUy|l--R6JQg$I_<0(_k*?>WW?;*X0eW#Ow{xp`e#*tSLYobJkBDZwfJI0V%RKytFfAkoA z8Fl}`kXa~cZAcSYiQGKpC9)Ek(}(&G+*9Nxa=ndy5m|bBm8t%!VJ~kD-%gGr$L+NJ z2V^F)4MCQtkYfwvwhlS(L|(0s-6~}FM`Z0lz7He2T;!HeI$j@&jE5t?-lgM%&XiBo zdzDVqZz!D@^h5c?pij$f`tkB9`l<3M$jcTavZ_ahe@AvRk=Y4kFasIhjqFBpmRCz; za02~%6`c@1#dgdzRdMa!$~tR z<2G&m4@)^Ss+pSI#& zWO*f+bng~|l5dmd zm3)^pzvTO*icvB82Clcb4s!ic`CxOn-pd@J=bGE-v&?PvW12nrpjSZUafN}EKPU{U zJfX08<#JPCbuO06QrsgYo1c*F3BMXtk2G#yS zYM+9u-LCe!_;j_;)h<_in&!LsZpyEdufR&-C$?9`AEaNU-;VK2I?lZH2kpzG6O1jH zH;2&AE$C;_DOW$g!+(bci*L1w{~_p;dcXd3(z&obT&_J@RrpV_^6Zg4T7wD8e-7V* zf|59{!6sjS--50sR$u2CSOd@-d2Va0pX(5iQsWgmpr&`0UXxOhuXhL^P&2+_yl!FN zQ!3xWJEf%7yjd}sHIwYw4o|BQKayU|4`U+JYRsXgnqbb~)S%y6ai?wxHrI5B99ZKW zK9DnJER>(D?J?Jt>%Ye?8E3=Wd3-7<3LNlTDtMRdB)pVRxmu#nJLAS7u z|GLO*%5j48lIgmaHK4|1&8hhczPbeG)a<0qck*7mmojCFKCng$4}zw7jmYs@`hb5s znb*<>TEzsL^g(-kc1j;`Kb!QyhKf6Fu0EJpG0Ap-Z(W{!5L1zF+g@>(t!W=TMfshi zd-lP4$_uS$A3Q~xlg`}-ZaQ}#xar(|;HJC04_vfY>I04YwXc|LdjmdFrL7))pe>nc zbM?Un@}& z0jX!d_e@)zdNy^}z_TqFLrwh?T8{ER-|$lf3NWLrb7JpDRlBwck$|3(jxpqsfUzq6hEonl=4TP`cTXF|^=gL_> z!Sxk1<5~AOfi+kYS?eLbB`?D3MC^{N%a=8V6VD7hYbO2RgmY`eFY-Dct(UALk!Li1 z+u{nZ;yVx@X(7d9l;5^E{I1RD%5(iHe%nF{6`h}=yOQ5F;pc9#N$@KC$l4F#X$L%s z@6$c-^rXR)tZg_9?^p9p`5t_|Fy_XRA1#4#dkns=d$Rd_20$AM{}jHjF7qjBx5R+@VPo*c;3x!&aJYcB_QX?@wl5f^>Ia@^{V&&~jC z#!mcQA4c|^3l)-;UYNkSP$3!VMG2Yd#R*xQ3FPvn8t9EL(~_jF!8Uy(NQk4&{uY{h>^J4MHuwi7?WaWb!!d%D8bg(<6CVeu3EOTH_o z%%z_@${J&*?@G}>S)b(TyK)*d%1)B*X(t~?HdnHf|H8lJf0>;WJG&A6Xylb~G6+6h z>#$s7=XT~TGIpXh#-Y5Q(boRZ$vUk64L&I4EQ@?EEl19^Xpav{U(lcH|3x2^R?Z3d z%?IUwjSotZrOOAUgk3%;CG7G+DdDU6pp-oEK`H3+K`G(id{F-8gYq{Yl)w3){58Ht zfAc~4n-5B-uZ=gR$b9o+^XN00zdiT&cbr?3V$n8t<+q)@RIB%gC2JtM7obv0vSG z)^EL~O6KO)p($s5*Lzi6Y&PJG+`D~iE%a-PSM>qryzJGiE(y~@U1x?$I{Vpq-?6Y) z!q+)}H|QcFw9u&@v`y(k$iFzwy+1?d|Kh9t)Dz2d=a@q)cbUt!Y71{z`&=uHb^R$@ zSGV9iTC?@IuSv_anl%5n&E~DU%-U8t$8^h{->;Igt?K#(a#i*|RW{YQuV+~cWzFio5AS*?SMGbawtl9%Z<$?{op;%N&F=e_X^rvZ?Wc9d+kQEwE3pB$&}ydW8Ye3zP;8; zJdS>frJt(lqbhS`E$>LxeTBvkn$#vVKG38(X}Sqb5Hw{?X#AilbJBDWnikOPXhIVN z%?>9`gwV8x#{9d>`Dp=-xt-!CSZLZnliGx)H8iPCnr1>11x;BKnl{jsIcYA2Lel}7 z9ZhJWpxNQ1IVCjLL1Vt-a(+5MV~$e%92J^4Xi}TdTnA06lV-orTn|lI6Ph?^%A7Qx z3r%lmb~K^69-19antGwR5gPNj%lYXIjX7HJvrB0DL6h2q=0<2zoiy8o<`!tmn$Yxv zrp!t6iqPyBSNn097P6ikl7aFBkO=y%}Icds;M(I_P_A0${ws)S; zD7|Vzqx8y2Gec;UUNxandgY`k5E_wNDstQ5Avg5ODL0ej=^v3>Dsp3AnCEyLEoGJ5 zn$)l4=B$5+&?vbzp;2;k(%dFAN^VVPl-!&&x48K10H6Cj_(X1sPx`eZ-?=!$(J`k9 zpFLcBHq{^D)6k#mT=lo0{vSN*hfh^M?Vrdu(^)(tZlL~U*rh_VeQV6Zu4}_6TYwC= z_-P^AesY&Bc(#A+EclUc6en|1+0Qkg>f*Sa#$GP(`U~@eID4fzXRrjb*E59t7VPh9 z$^KT2Z&T6LeWUHUk6{ZRE01-w;u}z98!hA&AI-7x$9q4l9Q%CjCtzVwL2XgdJ+<-t z4ypfc+A^oN<_M$i z`>Fd3G-s)E?bzztHmC3Xu%KveZDG;8T7Q#oW>=Hdzo00wwurimi~7~(U-Db~8Fg1d z^Ea-1(z+QuR6$n&-8+JptZT(C?}j$|oMpx#?kRlKk(b7IJ>jEB_{hb_7qTjupgHEk z)4Z9QyW4}mB!j;jY8x*4t$mSu9-WqQ z_HRWC;O~ao`wAB{@_1iilEGtA?V*cK9ybVmamrc0;sv#JMM+nr_b+zS{~r2SXfwDp z(p~M3B`odF^q_qJ+9}MRmY2plwwvLkct&{33`93Rh{IHxsSeT!btNpVAzM zy9HDgA&RluCGqg#D_DatTk+9Cv>pao?)B`-soPAHfgAZ`01Y`t`>SoE1U8 zK8oBv2MdbkH|f`#8~atGUnj!r`99fI(x>+o&ab_{cz$Es?kl`mwXL%F=31-KwXmhuDSj`&>zi7Ia^ITUH5SHjf?;1i`@Ko z5&F!OvvKgfo^)wLQ~GWm{I?bQ+o&J<7^4kM>7VzYZw|ey@5OcbZb;Z+j$ zt}1$p@KX}@sw#Sk@JkZ5R2A(YyhFm~s-h1F??ab9khrO8&OVc)@CU}_55${kXT=_g z&8SVqp9MN4V=|&~OwPT+m`qe-^4%8N>T^oB64m%BV(hqO=Nvc19^+EUDcm@&GoZDYxU9QGWHfQ_O5KBpZCy*oGPhmd|MjK3WsH$i*z_}&fa+zV zH`e}WvA%PUxmD#M-Zu}IrEK*xo~@ZYFAgyu`KCM^N$j)l1DF}dqujw3u>UQa6Zq&BI?Og&~*&zFt$nBDaR zU8$Zl>Pc%-kA-?Hs-AZn>#?}&Vczs}evps3X}gdQ@24W4KfCH7zRm3Aln?*Be_jvm zGB@RicJaO`^=xdcNBD8pV;#G>R_ZxPU(KPfZl{W zjqeB2SMtt2e9`LMf}+i}@{QpEX!48t);hm21Rs}mfG2Z?G3U!=?l+V<;1K45Iqdb< zt1el*)jC7hI-agt3g-!G)pCY}Rnro?dZi>`8Vm!3HNlUGhUjdp4sHbH=yQGXXM4q%R4OylevP?H*nQq83-H>IvA+MN0uT-Im4z~0P>RcAFP$@s=_gZ z{W#uT(t8qa-YCbI0Fh(6Gp@5vTsnEm;={Qn-sq;+|6$$qR=Qb$ep&5WVu9#X1t>bT z3>2MO4vJ2#1VyJ-gQ8Q9f}&H8fud9ELD8vaK+&mKpy<>lP;_cDC^}UOicY-- zicZymqEl~xqEov-(W!Sq(W&=A(W#F>(Wy^C(Wx&$(WwSdbm{;oI&}yXojMANP8|b9 zr%r;RQ)fWYsqf=Zj|8RtF`%@+6DaNP z3QGIqL1}+aP}<)Yl=dfp(*7h++MfbS`v-#3{&Y~?3|tN_2UmhC!PVeu@KNwl z@G4El zd>{M>{0RIM{1p5G`~qwM8^8nL0q_ub2s{cN1&@Kpz?0xf@Cw+i!epX_j`T#Q$=;wM$D$Jb}$Rh0XdAn;!fKyMkT8crYI93HAj0f_=dR zFab;glfV=(1sn(t1k=HEFbm8Ahk!%CJTMO&1&#u52X6=S!F+HMI0-BO3&1Jh6mU8? z9h?o$21~#aZ~?eLo&#RhyX+~9UD7H*k-;)hWUw3*8LR|F2CG4l!K0wa;4x5SupSf{ zJOhdhHi9C97eJB0CQxLs859}Rf+B<0K#@TmC^C2h6dCLSMF#JJB7^rqk-ptQd$DD962rTslYX@6f(+MfVQ`;$Ove+nq=9|%hO z(?Mx}7AWl>0!sVyKxzLdP}+YxDDBS&rTvpYX@3DI?Vkcl`=^7_{@I|kzXX)_F94}KDflV)1^5Nn05*UJzyshR@DO+u zJPIBIkAWw_li(Tf40s+quO)8BZk^_gygD@(vN%qvFmoYn*Krk=xsZ?JJHq2x$1CeK zj}Tt3=zSfmS0pU-{*JFySm*;dH&W<>pbxEHE^|{wAL_VIg@wMYV~Gk2eS79wZo6fd zd8={Wq0F_M|1O>90sr<6pgEQyxBN2ab7Qdzw@}ZGG8JyCo*Rn@%bLJ%co*ZlYFuGi zC&!|hzFYIhlqKhn;L7FFxiZRkjgY!3>BoW{ofDgunKHMib~$AN8p{NDl!mMdqq4jg%IO~H=IiO~a0GY+FGF&bw%=Qz*nJHvT>7n==K>l&7s zwZ4UAlX$k+bC=DFtu2u<{;VrzjVo)XtBX0?zi9C!4z`?>IL_o>{5Jn(mW_$4jYSWI zmNm!dWB8Gsd{2<`C}j=)!|0yt%vj;SJ-poW*5pLt;Zmw;#xAw?JFIvaI0t=CRr?CU z<6_DGTTwwm)x5Y`KkAh-<4j>kQdu|cx44s|8TD7q>sFh&uv5K^1Ib?``S6-m+Nr*{ zs3>8b$$I24yi76sRW8R5>>^V@aRKo<#>Ktn3NBWDYOh z#lJ)+PhmgfN$91$SK~?Y7fJp#@U#}5Rx@{W^AuYBF+3IRcJefizANC{d$h%`xGOlJ ziJW9j`hCbs=ofKT<^&Hp-G`jA3^^5(zs}@;O+3v}_Jeir+`9v9IArmQdz(J-{qE8Y z>>uDc5gmt49UsrPp()Tx{7QP|`kvuh&yrs>yY?dQ?4IA3qz>0N5a;?H=Qj|~GC%%8 z8Q$gI5&wlxhsyp|^E=TCwc~>cr?79ey)}isr%&qRE1pvOQ&R%iH)$Q`M*EA}z}!4Nq=wXrN7$pUoJ zWKXV3E_jCv$RRDqBds}ULr5FqkrqtaP|}8aq=k@{OIof+8lHp#hLJYRBdsNAd8Fle zq~U!iU^r>RJSyTc#sY_t-tOxxBj}*-1_TI zbL+1=&8@%gG`Ie`)7<*&PIK$8JI$@X?lialy3^eH>rQj)uRG1HzwR`*{<_oL`s+?} z>#sY_t-tOxxBj}*-1_TIbL+1=&8@%gG`Ie`)7<*&PIK$8JI$@X?lialy3^eH>rQj) zuRHDM`fKb@|C#>E83AVOs#hpBG_QM3d#+TjiCi1FWKX&sGzD`WKmguIL(Mhi#LdCj zQ!qusp@V8FgeJgJGXQ*ArC~#Zy=qJW=p^xHR2nuk*vEq=oqTk$F(2C*Z1u>`ARirU z%*SR1`+4MNk&o^*=3^^^13dC|^3l1*d~9TJkVpOy^3k=%d~9QIut$C_`RG_ zMX#`)+AX9TI#uMjjp?GoH5TgI?nB9ebacZ>=-OGf(|EUlR*8N3sXj**7I|a71vQ{-)64GWe?Izh~i?8~A7G7iSIR8Q3cDcme7B z&zv!l`S~{1e;vY)^c?n1TB-Lm^^RZFj5Xx3tRa&O7pV8HEWw*f;uZ#?*xO+6TscmoY8jJ=(R+XqOJn z)X{OZ-≶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

=axIaUkFLD1h_s^Ej(F)+no{ViR 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%0A^+@TtZq-;q2)b%2>RcJTr+z6FTx+v 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%0D1Jr7Ht%Gr5@;a)TjUurpvn3j zwt2Jn4m@-bT`Dtee`1i%XQZB|Z?FZH>J6ssU1zDm6>l&Qsx)x zs*AT>%00Y&*V2J+-ir+}G#m1-t3Q2%64>EXrW;S)e|VpQ&RoJTC$*#RH9nzt{W4Q^ zvF^bK4i{P#&tJAK8)!K7z)HE3>uc}Dr)FJH<}Z!JPW^Mz$1fcim8T@6>Z7WP26G?y zAcs%r8~7e&P|mruznk!84!*E?-c6_^a4DR#{U%%BCHlk``ozohiL(!?gM9Rf_=nU% zV+mlQSj#y_>SCOqsWHx%=o4G$6TTjOBF_0D{Q`Xz=ey8)4_b#bS}|Jxihn2uTJj#F z(K@RpX#MMKxBhjI{`EL{W9VZ~kXP*K9)r#b%EJGo6aV3Z=99jFxECLc)##Ogt0KJ^ z+WcomZFw*r9&yep-WB#ArebIPjv5ayMJu%_3MsPkx9p)083DcY_s7n=L1!cg< zC6RfM^8n8&l%bw?Cp=z&_lxlM!E?ofra@q$4)XL7SXY3HaY|pUg8pQo3q5DTBxiky zo-IaoDSy1yt)kP}rl>ACcW$dZWl?!=tMpn1^Nl-|*t`DCOWbqM-j&3sb6;XP->!80 z`@Z?6(xJr}tF8MOU+FQ#EegfOR9lBh9R2;xiJ>_9_)@+->3y24_zQET^{KX=nrI8G zSY%sOsT*`?(nMwYqwEDdhHn7oW%ZBa8{i4uL$7%72_XL^Qa+`3wRP6@YR7hPPVBf_ zPF|Y%ic>k1mQlEKmM;2CdU$@e@?Q0Av+%))4QiAUeRUlx_^!A8{tL_Os?(M?C#qT< z?4nav)o2;UH>B8e*d{eXSh;-EzMAEEyV7$?e}Mc zd69!Ix?A38((yCY_WN@dUHlc9XnEt2DR_74I(2KOyw!Te zSw@-Vj4AECn%ku8iekuW)u&~t)H5e(om;2qT(dbxpG{r%ai{g*pQpK{E=Q#Yuw+8(nhVuBUE=-0^vYx`l=6COE+au^}AwG;l9=kmgy7w09Ww{85_J zxqz|S1tVQ+!@dRP`{J@po!dXHB{|EBjk$cwk+|?dMUuvs-FnbtsWgg=h zi~jmVWNJ{C-j=FFojIu=mZkgn(o7ruYA~1@kCL>{EHaj^8ELb9+!5T)Hy~tZ zo|Q~{jFVS{N!O}zQomn;ZA97PC9^ixeH4rL@~!2t|l>8iE6B}b06lT!8w-9 zt!zp7WT3B<@}Hc>`z+>6s!hRn^g1S}cm1iVW)gWOHQxPQ;bHD&$YMNcbFdP=XF^|S zMlla7NmgC;+#7;S4%F*S^`)V?7&K#Lt|PRB_7CaF{H%z4>|GvMhHiOQXnrQ}D`&&QdMOhoGQT{NDD(CKS^kF}Jp8Ht`bHzR+3zr~j>WEZczWM8%OaIS!&Os# z81=uzoQyKp4^L2Lo@H*&Jm=6DykOt;-Jq)YSJn)aI|WnK_%kbLrw(L( ziFw-oXzDk=?;5$ETkaXumzQQgx2wb~_ihi_KR^3|KB;k0*Io8irP*c5xTrZwcoh4z z&fKc>>|;u5;!#CO)}^FX3xE+3T*~5qhp3+^?}K zZndL-HUcJ6wbS>B4qt_PvHa?|gZCU>{rT^%ikG~vQJ*h#y`9@Cug`v-Z}4o+4kjw` zXS6#Vb-FAQ-_I3{N4fJ_`n??=+p{YcWN+A2V!np@)m#{RX;e%-Jq6Mp?`JulfhyvxiRK zS}kSxKD1^%d(&%kKO3*&Lqa$ARED1W@50z~4`=T^f<5?1`~n!fm)6KSDe+L?$as(F zCy3s{m#ja04JQr&xdc>Cf>kOS|-e$3@@7*YO&oyk~ z9lYGlC-ZHkdZI_}TYdk((PhAXuWh-_cal7szJ;a>HIe&If;K>6k0Z7@m+x9#Zug0e zOgMHi-O~#3G0?U=Xsc9MclBMXh5FE4tIKmVJDb9~t8JCAk<)B(+Li}xm9Y7`%3h~X zAG&LGdC*p=u6u2{bYyZgYQ|iV!}0aD?+Wz>&yu9{*u~fb74UTMZ05O#CwHk%#+JkL zTy~hNJzM8W&yH|ix=q~~*73MSd{Ug86Y04VdOCie+>Grr&%!!`=Tf5*2qW);wdkX4 z>gIQ#DGa{@<1hOi_yg&!q~FJL813A3_i7aOuO{qcSw|jH^+BHlV&89i>X$nzYoaut z15qKL1FUzpuol{Kntq_L=1FHQgiWGHd{>>CSG&^L9EOdzawr;FpYeU0-E5nJz2~7a zo|E_-U+!%^;Jn0<`0 zomy%-(1U8jlD9p7yYQ%tS`CB~Jn7+sGgr@KBS#PO~Y z=i$x?y%OsRSE89eM!8NV4|7iiKaDtRlGSY|o^v7BKa(u(MM)Fg$K!H*eYkT%IlbHZ z-$^&S2Xbe~QSQ75Cr<>}Bgq-=vy{6Z<C`t}2U7prH74a{*CVNKxK62nAjkJ^dYH$Moaw&AmW{ur#qv<{&F&)7hExB$$$ud?dfqRS zt)%U;?0Zo0eZrXhS51xOUp0FznWX>%~me*5;x&Pjl>-%N$2=_m0>MY-;X1af$e53or znx&RUz%NFYeYoGHFL$hb{A-=>p989`wz0|(^B#xh`!(-a*7JO?G|aPmN|W_IXkSO# z;hGhe?9>~%BZ)N$>0?u_cTYC3U+;de=26RF#{FH~DYGGIq`Mtl^OS1q-T{$5y{_8Y z)_!TG+-E1_S#*~((d|3U_}0cS`>~(#-zwu+#_Z>e@9yJR#&*{@mT@WLSjMc3<*soo z<9iT6#;%OxuCaTxm(JHUevigc4pX&t8vDC4294uvz5wkcV>hn0SsT|fCfjEy+IW?5 zn8nzZaXpf8D&tzl>b=NV#^))1%Q%s77)Sr_8pASXZ=}z@OdHAg4~|=-i}O2=jL#!+ zO;#Dhe`LJMIF>Pdl<)PCUQJdR%Yzt;GIl>e_HvI+KC~T-KN-t1hO-%$Dse|2SA9qN zHCbi6%DCzp+mDd8oHEH6zk$9gWA)Y~vo@Ax%pU1it&MLP%U=y@V&B5pZ5$h2GH%UD z*So)X#O519J*G2G4kg{_-juT4CFA+4)F$gp#&bJ9o@8tv=Uej|@MVnaJjSt}z9ZxM z(d3cZ*bdyT_t|A!Ul+Yb#LC)-0$>}r`ftaCENWzh!kgJ>{=NgLidicGx>h#yw_fa*$_mTxY}V zFi%m3+G!--#{Qndn!g-fw?^#hE7s#%jrdCR8(wl21`x@ILJi~}@soiTSBrTnIJNYWm1#HCLes=Lv zi=<1M=n_hLvu>)dkhq4y22T%O=qWa|7_@R|e9&tQ@|o^yoNd(j^x%QcWckf%paFXk z!B_GW`c1X_EZ+6#zrtgf#G|)aQoPKPPPx1e)8+UI^gV<0Z}CYP8`@2tN_0krhSXik z)`0D^(3ZMapnt02b-xJW2gi6S(P!0o;?F?vvs>ydI^^BZ5~J0l0)1G?U(&MN;y~6d z58qB*VlUTaFmZMx@Ztw zw=I{;hu*N1uPF*YSrO<_YjpyL{&CMbC3t3!dsNHUa&wbas~bAaTHX}$4h-cToam`U zPr655?7(NQfBXth^sKdfS9_a^CmkRW_8`t;tl>bIYTlEgf3!g@k z*3!#U64l$+l;3P^LH}FwYI)EtFLBgh|A&5|)Wgxo)7aieljZE2Ypg=Q={9)Y(rm3j zPrWN&7vFO7l!AF-LuhR}W<{}A-sQiRHS8uWJ~fNAFY9X2>n~(IT)?_GpY?Gbz87=7 zr!sO_H#=BA+vlFWX}{)!@$5}Id#^2@Ulk7UtFI<7eeR3tz|k-Ilkd4 z(3_O?u&jf7vu3^y9m?3(L+jx>zootIfaN6Lj#Ha;o;KF`k}rL2Uu`|wecdZQJlg8s z2LFyl){x!(ShUq0v^3zuL)MS&b?;jAtmOpLz+Px~T!SvSHkS00LlxG4?^+sagX`mP ziJPNnc%8)K&!hXA^yKC)d~mI-;ZJnOhxNn{#aF*ZKe%oV(hrs=NI$$MesdQ-xP}hW z?~ae?i66@MQ==dB{SlW6*qWv_1YGa~pI< z&$UTIV(%dgWnJBN*7n_eo|n$3J2Qy8bU_Iq*U>g)98sf0H#m$Q@uk7~I~rYop~KUl z`N;UsKeDF&$QiWpU`;PR{ElD?A~qf^q_vW^mS;KrBxvJ-Z@K@Ue*9QdKf#*%iPO;U zT2n7gxlvnBn+C9!PEZbov#!2Ow3a*#O@?6dD?Su~r7YVX1mUZ(4*2VoJqUV_j*ReLf zUg_&{FmE2G^mEDjdA!o!wV40=3CaN1M%K-H_)nI#a~Yw4`Ms>6@8NDn5C7Y;hL->6 zBg`Gc$Rl?UYHNJf(s!_yzB9CzF2`4i$VB$$#J{zHHFQx8XHCtjr)sw1c^h5h80O%y ztflW`U-oQz?3yO#hAQ)=cIH2;nA7N)vmIydCi<+Lbst*G9Hxf3#0Si22J`-vsma=l zIn>cUHeUyEyNEl^{N_CCuD;AS&XU&3I;1)&&ApEG-cjar$5@BSy^Kd$bG7nKZ%yVr zm37x*)`c6HQ?@gAyTF_{EhWv}P94)(!`3lZI?DR#Ip#P8%uA24-fA`Ke66g%+F6IS zv2JQ(&6dIZ@fpf-?3r9&I&;%6KhD8#@o4vE;=f@2T|zm2Nty6tJg<%Q*)Hna&RVRU zHP&{@+sc|NEtR_>Swq!<`75-VrL3&ST9<_RT4i5_GIjjf;gh=^k9!JyM_4xSBk6jxY{7=W?Ux9bpY7>)tzmfM{5FK(^Cm9JH?2pLahU|N^>f^M%64?upHI=NdTJh5)54I@UC@){-?=xV9%@ zbRActT_@Bi*Eu!Tbv4<7{jfTI6a{P(4(*(-&8haDR=&Q2l zu`g+uJ2hpZJAwU`(ew@ctGm+@TV9a0%|g~-$EaTy?+AE4LOE9Oe3X5N;C_sWdKpucw9=1dFRqogZmZY(YRGpAKe+AmMPo`P>+e@w z3+M~$!7NA~?;gXvyPY;@t8@4q$?5LuWcmp0(9Ak&H*2R$W7+FqFJwBhT*^GW>pV%? zLgJ)dq>aX~Z!T+PX*+2{X-{cat&R1nPug4By;ZOC$=X}%545rL4e2MXgQ~64XQU6M zjfz=gL598f7M$c;@aItb4&pmu9}rjnJ#v-(u#Xr^gLR1qUS+-bB;Stdy6E~N^bMu@ zUlz6c6U(_titiQrh&kEoissumlJGUM)-7(a{3Z3jSYu|mvIyVNZ_*Y&? z{#M$0Flp(e^`=c_jk<<*m9_Uv@YzmZ z8J%Kvr=;BM{u}+pLffS+UgVp_8vO#_pmas`{E~0X*VOBWJjcR=gHhKM+D&+NFT)hZ z=6U*n@c#5Ahfnw~Anpi#ArtupUbp+Cf5`Vk`o@Tq5pL-NlahwJcd}0ZoHh3O$MwE* zlkk)JlFk=+UG)_wkJI`@Gw0c@$o@HG`#myyhQ63edz906q@RBvYkJzCH)n;izxO-( zIp=2mWIiSHugrBa7i7*SXDM}knDga(zr&9C`&;vVFxT4~n(MvVbFRnP$+z>unIA?l zPmE-~XkgxF^nS;A#Hn4jLzy*$4^2FE|H{^>=(w>44B$t+&7|{w&GQ?6U*P!#LGE(U z{378~TzoH!u2Ls@gl1D;&uuf}JooG4JYP=C_S{=Lz_WU=-qVkA%QvjO&P=|(jf-+P zzpcZ65M!i7Uv2${_}ji?ok<>a8aQ|9kIr7d#$WGXZjliYj*gcy+Jh( zKjAQsF32$t`*ZMq3@7o!o>$G~V8=|&F=uX8%@u-81+$gAGtM~7V{gqdXT1cSvkvpP zSzunfa^FVg>%sdrY@8nsdoxHg>!QOvY!`ViILyV|50|<33O)`0k(mdAd4|0k!e0V^ z82mSs^P?-+arl(X{5XXDB!rEmTt~p_DaVN`*vvB_+}RK=4%`KBCU6(K;l2ssE`@OY z!0C17VZFdbUh(yqX@d74(&9qC9z{;Qz#%7*WmZ3(xsvxPi62CK1~SUfnX~Y(nwffq z&hVl5%N$PJaC}FC*W^7~r^!2Wye=r~@#MWhXI@VF3ZZvXD1Blm{U*|Lbmm6VeWZ^l z(3$V%eb^*${2rb|+uy1)kDLUbsXFt1(hd@zHKSV@XX(rh#AlZ2%wEz)&d4#3xLs%d zl(@5ktqRf~K2K+UUea&RF^~SO&ioST!gJXD)Uk}XH9GU-&nljgf7Y4jMn3pTZ{~BO z=IG3^w0}Hp{n?ua?>yE7AFN^UO^N^JFeUu5)tCV;<3&xFPC{&SDp6S%tDTEb@Dwn*@u_ zd|%(+{P+FizH)Q#x#v00^PJ~A>-ijKSKjrTuQ&CBuR(acA6&hvgL1m}T;yJ>H$}>~ z^D|8qjN|0_VAAeWM)~u+?`j`LX#iudwoS2G!M@kv^?K8wH}s~|xAms3@90gntkb5w zPZ}RWzngDAMz;Or^9$b5Mx}j991Mw#kwzOmzrT_P`s+NGvh2GpF?~#w+0^eqVtW7P#B`}k zp}#$jXS$^HzHv$Euk!3Qc?Q0C-_)e^G3|IaIO#g=fV#x=ewL(kq3JupM}K=NwE55` zLObtg+I|i{ozqX(8@dh9b%$}EI?tq_eFm!d$^@pyx6`d~Gmu_6LCg<%Ykuf=a z%rKEL`MQk#EPlEPemaZD2c0VNwW4$Q>70JL(IOvoBSpSebZ$T00YBXYkq^4tMZQ*a zoG;bNC0H>@Io^I3bYaBCx&yi>MQb}!-u>eIbnX0f`OtNO?sw27wxUb*({=aL&4R8s zbkm{h-->RqpKh3+ZXR?d=;lDDwxYB6=|=kL7C<)|x`&~=y%pUAKiwUEItO%jLAMyX z-?gI4_tQ=H)2)DR7Ie#?o70MJo}cbvKb;f01<+n@N|${DUa zo=xWdZ(M5)ZEWidZEeJ$w|V*BIV5uKbB6Y|)TC7VdP4`>^M;PL2|P1eblYSez1Gml zR?NI{ouM;hrEc~;%#DS2Ds$#~=G!63J?t{4p5dQUKf|0_aB?>Atb5WByOpuoZtf2; z=hKmfxziJB1<$OBPpDa`PpFpePpIbJPjG%YY->K}VPtRXN5&wsuO)j`GUh%;xrXv9 zW9;M5$v9f}re$m{V{zG+mNAWt#bpdGV{aLE|8gHon}Zp`ToJs}#^i=@S0wiwW@6kP zp^e*XbBfhZIahTkvsnENW74I}ubY#DU9$gkYIumNnDy1h4xz3_#^JAVE^b+;z3OVp z(V4hcjpkS8YBFBWrTmK6r_v?#u$g(D$!`f)C1dNG^wG9gILEn#GmLL4itR1VWo}kt zY(w=rnlsa72eXsf##_KZ9eWv$b zwQ*vx+Bl|0-Nttc>1RVPa_LF0sodyl{CloT$hP^ zE?GNrv*uC2RV-<+_tl;?jX{)oSNPw>ewnNpjb(o)YGqcxK z%O3S}q?yS+n3cJiFU_0nW7zvTn>ofsv?A5Y-d9)V`>ZX3J?2)&vd1NRk_xhIM22DT zp1@vL1La!7HJASr*;9+=_ZfJnQhtKtH5I!dWtqudn1#KsRQBA=?0-#VUbcxnwrTL+ zh`kt--^*!XKg>bfF|#LD%v?8=Aa*XB?e ztMioNPR`F?ytp3hMdz^`-#F+L_WUR|D1x&xu|taU#P*0?5}z2cQDTQqV)w;9$-05q zAhB0so5UuGZIU$vu}QLK5ZGH6dlaxm0XrmX2ek&Hs}?&|i+vKiR6Bz49cN|^4KD_# zFtV(%Lx^U7HgbmM70$`*!3K%#Ifb2){qnD{MPif0W_?Hd{&zM=Y}7Z{6k(L}#J%Ekt)#GXx}&5J$C!UhEF(MW7X4(+@z_GcUKW&Zsp-@OIRBJ9`8tN|Pv zQKJ$wN3%ySVRN>_Z;z}2X4a@X_*VLc!)rrbhr5h+9l~Dqr0s{$*L;MH`V!kD=bivu z!nWx(+axxralO%X7~A&*wq-i+#U2gjd`{E)FxTOGYSbtFwrUyg+WP13?|(%Xo$AXO5B7~8#y*|GJ~a)jQDwdB53DI1!cNKhv8WduL8SInT9(*#>Eg5?d9pQzx)D zt4wBBDfUQgRvGKNt62YijkbQ3cK$T$zZKXax8GKkvUVZ%sf_hsIlI%_qH`9@-X86B z7W?|U`EHfY>MFr*l`x-p2_E^huQs%$6|4bU>02)D9_2D}&Oq8vDQm!gJelQsiZ$U9 z)`7+TEZ6B>DZF#ACS1z;a4PG7R(PC&M=@)>VjBwRZ>~}&>sjk{uoj$8{hy^SreX7l zSvR+ob>ZJ*N6P!xs12;^Ci1PE19Gega@Dg&xa;p6jb@(>+K#{c~>R}o0^`!S3)|(ux8*iZf7qdoO%lg!B;E^YJ z$4-=3iZx8o4cGujR1Ry}L+o$SCRVXVT+I4$1>ebddYm6`<6oNPriHZj~CY)S#LR7=!^e$w9p^_%`rra|8{}7UlVIC z#C+>>CZ~AK`L~sw!R%+?>Sf=h7Kt9W*RdyR%)H&-C8oRz(-qwgzT!C4nSjODSKZ`y$(o$df} z(&mBPaG;=VY3C-x^3GF~_QzM?2T`!dy!J3>zpvqgv0dr!JcPgA{YFDs*&t<7Nwmea zmsoF0t!8kijkX=SkTRnY8S#(Ufn1@w&@o>Z>z&KY276XkM|&eQGYZdVd~DV^yJmN^ zf1nF36JMb}o?U#uNySq`@t>rBnIfm;)uFIzFR; z=qe+H##etP{m=RI)gN`&(U;Hr$mgcEyVYQ&ZP{kzl)999l=_qUXkC9&XZIC0`kz&5 z^%kNeP%cdwQVv2J$j{GpwneM6>4k^s1AeZnX@#4$dJ0xV{>BVRyLCNHE3DM&C`1w2 z4{Q8=-*-a~HuFyOvoT|ureBpAHFeh}?TI6P54fwlR#{v#$M!1U8&;zp9G&IbV%FQ8 z{`R+ryh;9o=@)kla;xur=~j0>uuJ`NmDRN?u|_>dnLfvrPWd;H#(P|Y(XB4lHumv+ zx0!d_>9@a0y2buijkeC-G1+9_NuAthj<*+3ZcutuIU$qICw% z;~#EyQ@TUlgzoL4-d_0|d`Wj1-^6=h z@}xP|p2hFR$4b;T{BG)4s&0&&=-T{lsk(=>rR<*}tu@?V;Ibm?whXsAm1paaS@JIR z+MV&!wne+tJmlM~(ryC>NxHf&TTh)_)g|e1@eRGCGt^9{W z-MFZPb%s)P!w03Roqd~+=?Cyf^6q$Lr1v!Y9y_Z>df$I-q_;(hD!YQc|A~H}BQ|lp zA*!qq8+{R*yRPd;FMQAcZ=so0_*l!`yx+mIZ+SPf@X?muy0)Hk*l$zXM=#7S{C&%; z!t|C|+#7Z6JP#K>((*ihNteNGpILZIOVyhry&d>|rLL2wS|8>)uXHJ!U3hDYF;%{O zwB_CHBfZj({K3$Lv~F&xes`qzX6TpejGjn%K34c}%lEwN4gCUmYdk*~>75Ksq#@EX zyKq>`H}LFj2=iR$S>xxa_w)Sd*E}yNU^KMm`N@qupT+;^2A-e#cz(xoP0lZW&GY+T z^8DJz^D@}-0a>5b|AOz|e0;s+LF4<6U-Nz8m-(-~QPywdee3)m^2-|FdF0>lq-<`; z|A`xUo+rlZ4Lnc#%hV9(lk?oKd4A8k8+f+d$n%?D^1R~bNu2b{ubRDD{*~-s)&C`_ z-_~^%lzl_}Kl{u48?!Z?`i|!s&&Xf%{Qj3bV}HR@%BOXiw)OG!DvFP1$6xb&!JynI zXTpsf8L<;$vG(7+uq-v zUZV{^TsWiUJKjloJ{D+CH)VTof#x;6w5OgeVXb7`OB(C&ZQPQc?UnviE6CQoWMzr0r^XPL?NEa+AQyDQ}y2J z3WK+ra{LrrDY08(1752Q@_w3_SzQTUnAocA_gSF{@k%xfM^;xI3i2KSPo)yPv8rw%-cJ&< ztEDW3_dalwDrZ`~B11J8V*B7FLULn4;W?Q{gV0?X&IQqu4Ud!~QH5=Zo(|XN7TDjGg=t9+rAn$f`K+6x< zVOm=KLVRgGVD+aprn(BOFfCtiQZ^6hNo(wlX`RmUrS&GfTc>q8h_r66t^{waYEX!G zJNRN+S`S%$X@MiAmErbGe_FQcs)zKxw9Zi$+YO{O?#8sxN39Ic!Mk-@H-(Va`0C2X zC=W2nwl6|{DeHGLeQ77_i;MI0 zBQ8uH&-#xvSMQFC_vC`pI3&(e-My2wdO)n%Gcf*k&y%rvp3gr6kBjT;*pVJ3Hrn$} zT#Tm~?6EK6@9>=bR9W+6>UfV^r}N~+gA)jj)JbUPrdmBu!+Sf=HuKG1+S3kQd(V$A z!t0O9n$VO?k2NLQ6V)}wGbkn3^SLgCW3>t-NL)UCiQ`d0M<`l)V626ncaqGkL2hCQ`;I5G#2eN#W67G4;oa4!6 z+>m>lvgRA>?H;DTo^>jCWZ-6%nkRUy=5Ws$b6d|-;L~k}rpaRSv@=ik6l5U3CD@a0 zHF&lu?LCM2KL?DiP0)PAbGxE=YRnc-6Yt*upDfrq#*_KDc}=?|<~0SyR*wSxj*>~9 z&HSdC70)AlV=Xp#B52#iCG9+Kg1dKkk$FuIuFb_+o(I7k>#EDBt|`9Lvk?r_(&Avx zkT9j%y4bwts}jZY3cuFkvB8qo_N(?WF^bG7hqWUSyy?<{5_D=8Ibn@DyrbOjU zudGqfSDjSMrsG^kxsGxD$aR8i;KNB1oB1tTkUVkxyu^uTxL?Wrso;e8!H*gOVBD!dDng!pw)*4%o&bw!!iT#3re6~3QypUHQ^ zHx+)Fd@J86k>)k$k!`s?G4D0q;;&{P+h;oSSJC?9yn*_pyzxAbQ_NqjQIhj&l%%{P z#E`4vo1?7J93gJpu}zBic)8*|u~zZ^Sf+SSmMY$+g^Ksee8sz$^ROQ;$~yQp^xvlI z4jkrO`Zqsi9W-**pvf2-@oltuO&x1f@7!-JPi0-If%B71vlFPB_^mw+p=C`<+pRNx zKcnS>zCC{A%2pY7UjeV~JlK58mqeAn2PWG+OTx;ZUlLhE;}6V)tzPhEo4^m8 zv?LnL-`K6g!0Bz`yPc1RmmggeTmI!Bu=N*3l<&VucVN!dtb;|A%{z}PgW_o^AXb>t#bYugdA2?tQ?4kTJSj78Zt>zvymU!ic^vtPB_FTqBDQ|k zPj_H1XX}c63$GvA>YGz$7PUN*7FK?Q`M|g(@#SZV%-$9BhhX)1jxa7h zvnak?ux0z`W5Jd)dX6kKdz)GJdwxmB@+!khgh3D|F(JOxAEE984@s;x5_!RrL0NHSV+#(Z0=B+SJ|mFZ%dcb zymu2z^L8ee=B)-d>@>J=&8z_`UrkBZ)lW%3ql+ukpP7E>{ zhc)D3qdyOC{V(&dYfAdB@<3VqDi7pU%L8TfKjwk5``_gu4gJ5Bhfde?@Pk)r{+w~2(bCrG(uF(0%yEJn$i7!NwkF(J zP|F+$`?!xhg7wh+^2}c8MsS1#4`)=DY}4rEY|{zs3HZm(+_Y?y#9xWvERLN0lzome z9p`iSFXt7P2P?#t&NekbQx^8~nVl6;%JsO_D>^Br(S5T`VxyjFrA-v@T`RhLKizac-DK!yaX%5dIj!jC`RN|^(@lYH0r&Snx40FZ!%w%&Pd5X) z72FpwsO+vca+;ip>y-A?Wo zLiguZbZ$T09zWfa(Cy>C6uQq^(H-#9edDKF4c&L#mqGW>R&;fKy2F0D_0S#Vel2t- zThTT9>CXGBW7h51N<%`cIQm4k#)J0e?5aS~>oq*?EFC z`6Jg)+{^jViJaj&$5}3E-?{T*Y5O|oO3uoCh8&+eIywKvS@+n*VdYs1W?qSdpZHWw z;F~>qv$}@0u)*}dX7(KSgqWlDgmXo6#dEdi>dcj7j>?8MB#0<&;J$?z`33VWB$D5F zeq;Fs2QH*7zn$5;Oya&H-|*e$gdPJb6H=nLB&0^anb0+Qb3$75-se-IoBr4>I`*Y* z(VO{wBH{k%(4?LNgchHc0hRdZy_KPh-k1>@y(uFs`jw1`=*<~X(G?kn=nWac(Ulo7 z(I12Vb;sj|iN7IsL>^~*7x4Q6*ZW*e#W|k#{NBQ)Fdix3TFTYL+;20#|KRyves_Q= z*)bwH-o$k`*FvsTo?E%T<=sWD3cZqRFc@;rUm11q4963@8G>?08iI50H-zN6_26Xc z^|^V_Oa-TF6If7xgh!sfU2dwP&jmX#mvP%O?B#NwkSk*~p?z@H!1Pm`OSonN@AK@n zNzdqF%l33J&k0I0&xtWbm4BIInG@I5V)`o0Vp4ioOzxf*(<=$x2JB7fIbc^`iz(P< znKMBjm;3P;>zw#L7So|l${fx@3}|b$&gqskbU-t@J6KV2o6+3~$o$nnizz#4(10(; zWzLDq&79MeaMOUpak@Fm5O@!@n3~b+xB(W^u3IdoprpYArY8*<(9}t%#zUI21mhnn#?rGY>p;YB+{t57K(bLmh zvNvu-7h}WQJLMd-;`m{#-eDdq@8xXtsWxV>ypQmVH${Fv-V}xohdXr6sISJGx;`}!!Is~(zd z3GdmSNqE;*8?1M6-eR03;ZL?p@aw9j8RE?1H{5|wXTk@zA=)!y+9y}q>MRDAPfnxr zPNC67IGc4ru5_Vs7@ZHmBSoVRb8g{&9%;oQ`+NLqyd7cA%iJGA)(p}e%(+P)|8VEX z9Rqb7* zQO}Q-Nf7oBfoA&Zs7Z&DP zny}Mmj0@`%wrjj8<&Ma48xr2P^^ObgQy3T7XHUYPZPR%6YFu=mhPZH-l2Bz!yE8K8 z$c7Np(aj+y$oe#G#Wmh^y0kQut?X` zgg2v)Yzr|R*%{(Ix+BCCCO$C-l&cE$uH!?4?!dWmqwzZ$h5u0wen{E)BmFyHb&ux1B_25S;82T+vGLn!${XYD*m%wWY-wa;Bsi zA6R2u$brxKooiIKi*MyA=JL(Vug`D^COTNHZ4KbvZK&O?Rvg-`PUE+L-^veiyfe5O z48$+y{HBHdzr(CsN!*R@869mQTq~RRt?k{se{ELtM{A3kJ!`|U&po;DojmXZzLR<2 zQ4HRwIA2vFJhCR-U;xuX7v?#}8k(f7aK@yRy~AbyeCVLOtJIlITe!dv&#h#QWjE_6 zds#=>q$CbqcJ(3f{j+l$c~=k{k_)|Q6SN<45hDPI<+w7j`313AxecL;=>hMx9h;E9 z5&0!wlD`7vKLAc&uXLUB*c%G#rTXJX-_}*{1M_ke&o~Ejd=~dorfn#fBjD?47+=ig zb=a;3LydZ0LW-?`^M6YzkCAeY0bhR|?VO5DJ{ zN_bg6;)xsiKc{($=Hnsw#x|aRh95!^`6-HH9f~^31rP0Id?@$p6jLU+lIVg{Fy*hI zUq7{q&2%35&LQhX)^SoghBC%5fO8+TReaXY@;d>&tWQ&%rJX~;KIs59ep~9k&DO*0 z)eb&$ZT*o@vp2a@C|!s$X(lwpp!7=YAJJur|ML^^e@IhHTMwqIUmg=8EGc`>3fb99mU5`wMkof}g$AOPnqbN81 zyKmfDKH8GUHd{IS=-3vOYkqqYV^UFW1<$X`bv(a~ zyjOT%%_S=V-wZ(wNY4Pq}wM6uZ zan)hDwxj^TPx@@i*mAd7DFrVU#m-T0tD|Zd^FZM%MrGfS&J@Y_;sYssi~b(tTxm&hR$IdQp#M7^ z;DN~d8e&Yk!5R_XxlLi-rzFeCf;6^rPP-^H+9`a6*PIWt7ieiE z+e{7U{ODInOT$?)yRN5Gdb?>QF(-xpey~|Y_Sr>IS{f_ikxzalo!s?d-l8ueomx7? zos={z&=xk0HAz~dOW_Uv%bc|A1yV-W`HvZET1m`FjX$_C!e5g=Ci6OP;h8%(%)7O& zi?e8bgmcc5BYnKz7~?CWd*BTQjihq}?>1vhD~UO&@dn36ll^k|uVv3c_9@{$*@-)O zUG_(FeXqfB$gWi6Nr-`?=| zfcaBYW^}#=f8il{wZMP$MWeTxc$0J9&RkIFh}>Fq%7<+M`(G^@UrA&17e=qhU0v7SS@cebPwp?WeSF`CFL*}6 zSNH{Z&*_l4;3?uw&K{b5op)iE5RJFA7fIhuyvfm9j9zIQDx9}aaX%0B4Qr7#x zVoc`l55+6ZOc_V?*-z}rPl+x08L=fTju%}b^L}DX)(~TID?05a&g7@W zk{tbxkN0Q9iqzUIF(!Kxds5>|j7c{!CN+MP1PmD>amm1UU7|@80!6?3f!FcLbQ19_4EY_XS0oA?Eg%SaR&U;Yu|UM zM;02q+n_ZzWSYX7GEFl63O}A{$`3cY0_&6K=>H-%`TTTceKO)z{dGS=;}*Ticq-E* z_(5U#>k6ilU?YX&vm54L-wZzsZ+v$JgUN{h?z;HfG`VDLQq~y5FK3#J`1BetW}3hR zafadBtF7CdbL0hhMBoP;wjaN2=#BXN%D3T$ER*pd-(7?MUw=+7?C*ZMAN+I?&^168 znnfO4(H-~Go$}MQf$l7HG0H0#K23=3+dbXnL>!%y&ryC00Q0N9icS|d};eNUie!Ah%WkPog zbUCf)#`x*R`ROvDn+V+q=q9(KyT?yA#ZNZ|x&r8OpqtT(uEl&U=?HDZ7=(vrWN%oH1z&(k4Xrm*a1cAMV5FUJm}4v>ACPv_iMsk3p6n?!)I^ z?#Cayk;aG5ogePQ=U!g&YkcnIdLKS_KG=JLXSTfL*ZADa!8{b1^22@j+{;UTjnBPY z@5ATL56|)Q@!^TxC=cr{8lO>qn$UlfFQcDkw4cWKZ)n2&G`W77uzy1n?xz{!rwRWz zG!cH9u^Nq(@$!-g4c81Tq8KS_&WLGvW-~Wtn+m=%Uk%t8&fG>b*Bsb8Gs-lpGTYQE zC+d1#r=}Zhy~ado?Yj3k-oMWKiTuYN75*vPlzI?fM$+mv`R8wX-4kV+`Bt_`@XvZr ziMnnldKW}#cB0n|AHQBjQKseKDfXTlWm1r@ZuQ0WM|Okx%_Zv&#sh7gy`62GQ}Bmc zSy-4JF?hub#_r2sm@-V)%tYMT``HyQ%x2Cy<-_08R-+kxK{qMf( zH1^+qCu?t7zxnAi+I)5#dUOmO;>?5Q^O=ht6*-6n-%0t>sJqQM)?_i=&iaR~ntpe| ziHxzGvQ4@LCo^teG0LQ0@MDHSp3SqG6xKC^p4=t8}XmtfdBj}_|I41KW|~3 zN_1c34re__bic?E?d-jQb9cIX)B8Jqmp(u@C0%6hhx{UQe~bCL%>5kqrUzv1?=WAN zxu0W7dO+s>spji4_sci`4>E^qGUEg9WM9`=5q6tPxX^v73XpMZR7B_?Z^6si}L@Ryu{#p8_W8ItTl=ct;8M_A6maJ|5owi z7e89@p%qL3@x|5f)z&*y!2%FG>)J;hs`%V$SY1y#R1K$VEq>7pxt4I1a?R&@mFo?z zEnJ(pUglcORnArBP@5R@>A>L%0*5OYysZty-^jD-wxwXVO1OG-+^Y^v*sBgp*{h}{ z^t7$!+Q9Qy`284P*01noeH5SAJ@}~}!1wea{AIr+?f~bE!96zFe~a(rTfCp453+rT z|NgD`*G|V*whKP2g0Xc!KCq|D-0C*ID*~HJ!->NWG=X*XzX^6#xnLX*(tK?%;Pd?s zd`=_x1Ni2?4WA3-qdl}OtHDX;+0*#rzYE{PFS}Lo!QX?7dQj*jxz1u zZLfM0ax_xbjiqjN3uW>q^DvWwsFNqmnRsh>*9Y%}GQM&47A zy?KdSjRgBEH;FKU_#X>S!r_H(^#J}Q)5%A}TDRIv-5Sur+9%!WVd|QGhv(EKI#Bzl z8=vzOyXZ#kdbgS)_vlRBX?(*ugVjh~Gv6pXM|r1E=c&|rcfk;(&M(Y$s8{(ujk*<_ z${4PogdVo8TpPH0v^BfX3(kOtH!Bsi1@iVG`TUsQcgX9P+#lfgEAn)ZJnaR`@=x3g z&YIvh)KYex@Kx$*wz$N{`W$t5j=H@x!=c`dj{JiogGCGIf(nazdojkzaLOGqIzR#fpDfr-eDXXt}e_^iM z*Cr_EZ_$lL>irz`Uzs3v>8sl~@yVvndl1V@>i00Z^EGnpB7MPS8%h1gQ(wE0<#{k1 z4x=xJ(U*JiBVK^MOWjR}rVaJ!M!pv6M)dBt=$Dr|x~_NV(_!@G(hSzzsB0CUo$VvaL-eMCIyDkIK>X3Ao!4mjcc>lk+rH?p>v&5{xta9x z(eG*KxzzV*%IqxVeTFh=Cf_OeBn$4tUHB2}`CWuh@?+d*wKuym!M@K1i~BtCnY#u# zEnsKM8hS40#YDe0VABP!K(IGIBF`c0=ZyrboBf9a;1tK4{(KorLMqN{Q5FW_GXL(Yfaj2R!K=l)^k~|9KFwX z+XAk(wKMpDq}xQ*=MQqUHCc+F6J3@&rXb|w3nQsxG}842FF<*6W72{;{= zlKmOIC^H9TVIIKv56o$+@U_;cPw`wK4~^)VrKF5lgEe3{bhUrP-lz13=8}~e6<|l~ z0ej;WzLB^IR%oKVu=oQb%R#=<89FFN$6?MerdEzf!4e+*qJ#EAMZOU zOQBB$t3-Iz2RjeJJC$cvY>$+!c}C9)`8D6wHFOu_j#Ahs%{#^R;m)PssLrjGq@x{M_4Y*93NTK|tKIRZ(vj_LT<$fzz z0o7n@?4f+>(b=i|N?A2gH~T5C%F$-mD#~O4WnE5LT|~EE2V0 zz-I6U{z6(ysn=}es{yxQE0_bD!Du{&uC0boZ!j%Zf*YJoTDklmf{m((V-Fh~f>*#B z*bD~2W-te&U7R7ErL_4G%l_WTxD1QpI8R}C1ouUKl-k-U?B?kzA3mV(KWM;{ssF63dp zuLO6X65N3ba0O~u8=4G{S1iT&fsU}()1E}%4`VMX!5esmI;dfvw-&nB!4%lb?|sO% ziElPf$Z_ojSK=*j2E=YH)%+KUTS1#{qTRCJK6i6msH<79Z{bnl9PQf6Z#K5cKv}-A zA=o(>n%DC=BLK$AQZP>I;G4}e!6mRt*?>_{0j_|gzZqQ=`;a;7NXAF#ab><1L(#q& zJOZ&9AHmx)t182231NS6NVBB5F~3+%S*%R@EIO?0{zS7Y+1H@-W^|5Lng=KeH&jBiX7Y-^@(X{1kRgtn1BsuB7ocr;?W?~kido9N#@;av^S zzvo*Sx7EPQ4KEqT)j+F_=?-6;R6!eg1)V*Bu2=HysTmG+C^{#7cYE^jB)`k}Jy+mR zKjMBb_YZwzbxEHPj=o)*0zYifWyU?HCp*+X(C<92Z*O}+A8dO`A8LD9A7Wc4{SSIm z#q(rG_vTH|^d+9gPTuFCkDn#?xBp0=yB=TVhrF4t_xR>G{Ze0I6vibEwoCu}BYjyI z@ok=l@5#9i^<{Xif{z0pXXxW<>Eml@AefxV%mnZvEPCz)O?SFv0aeudqW82 z=T@&W?pX}}#&?ELn>L=sCPXIpvx`0XAaS_;>u?mI?+JApQf&xsN;IZ1{>HPKKv+tm1?Cn`}=Vitf65Hc9 ziCc;9qO`5&c^&omCf`&nv$_N?S8QV?_D8U>WjvB>Np2nnR(U#Opj*+)+msO2s$y&=^e`2jd|4lFlk%0Z!m#9F_CHXE zw=fo|CvWxie;4pe7aWuG)bq2{>+_6-MW-%Kl=ob7-D)-CAFJR=&B}H~pj(fbYSg3X z=4kR&kG|AX4*f}Q0O|KbjuFVP3;NrTOJul%dXu`VN6+dhtE0qp`jYa#mwJ?X)f0P0 z>a>?&PoqC8v8AVJEA{A6eHr6x>aHvN?lOQG#wGPpk1o|?*GtITBzOou@IZ7&^g#Nf zjqt30*#U<0CfhFJRLR&p4clZf#M|!HbShrcAsL%XpCo!wH`%S0(uY1o`xBkeF&3yr zm$u9JmilZ!7evR3vA>z<%_Z!n=$N#3(H+qdv8|#%4ZIg!X+URm#P$@Oc$qpAof(hq zPp2RKaiUv&99{IHv!X*M(9e^U_i^gw4E1%CdQQcsT(Foc=$}M)Hqbv^L2uThH=-kz zv>(x(%Y1j0??s2=6Vm*8lV;05kmJ{zG+P7w9w0sGZ>3L6)^)nBJEAY5JEB8UXQD%* zJDVsE(VcsehuZ`CBRbQ7{xl$`fqec_cN)-}2J-o5uyCY(#ZuQ#G46isc4CF2H&@AT z1G>;a{!bUtuBc3Aa+mML^|^#(VKuS2+n^%Z_Z&0>d}dMbYeU9S9D7BMD(McZ$*z}t}Juk zW^}9GZ(l^8>aZ_TSE4VXC#~&_=*cnkTy$y)G!LNTqEBd>u#E#PH zpR$m$)astHm%5j_ls+hte&ICruh}~4`+fSJX7sNayD4?q6&o+QBXu5!jS(Gsj4{h) z^rN17uBV=*{+rR!W^`0^NbHT+GSQpCd?R`$_C)MbKu_wWF3}z7ivs$w4jmJH3Ft{c zN47J!mcB^JMf4+}F9AIf9ce~KB#)ver_oET4?0c8=e6`~_zE2M7}ozdF1)I0i7Pq|5bh`f(IT%(nFpw8>j1?iKz@-EOHX?+pp zUe7bp5vg~n(}3QI+yT4N+MWb-ETAKzTcRg7_B|O|y$5tk^ubCx0X+)zJpsK5*p`5f z1jZ==8xqhD(TRY5h)#%Zh#e_yHBOQF+JS+-6y}#IV@)XdGfL@3V zk@dEKUYw?0c0nh)@h0&dAI=}|3h2g%@c#?^caoNr<4syW5o3Fg^j{}U!T*!KM)KG| z{RQ+#rTzC|9$rWNN#EbPU#SE4Z4Bcb4u#re43b2f?@U_{^eYQifY~`8TfG*2L7oQM zsf;C3px?kcfXLbo-4edt`Q_}qtp_}0JSu%q9X3XXed&nK1p1pH{5SDm`lKuLIog=x z4e38_()3Yc9!P&P4*e1x5M9|s-|1ki@;!Y^Ko729EA;4{j9(hwU=GhXU-}o(7YBVy zpzjddA$^PJM?g13FGL^aFoq{4w>EBlojJMK390J}`f(R?&CT44&1j;oWq#IyOXe(6 z|M~kSxMKL-$W_5}S&Ndf$sZYen5gez#Lr2mj&5ZRbrZII6zh7a=tIDk-AjFrrS7Is zcRg8mdYyG+nWHRY?e3v(@>~gw5oOF~p61S~GCuA)755^JF zmn2c=9l=GGSR5D7A+aGc_8P&QU+Vi#*49Pm#f}I14ymKSm{aVHLLE!rC2>+p(TQv5 z!1u&Lyg+{>F(#zWW$Y~NUDiBhY}$ZsN&Smn$eisbbSjf?MP~xz(BjL)qmcb8)`&Dr zK+a>zSxqbFLC*919A`v#uwSxHAM3mltgKUpex&MhK2pQxt18`haZpUIOn zlv_ShqfF1_MHfAj7xUsXd9n{9b7*DwM=E$lWn016dsQD%1~y8W?1v~LK2lxa8@;ZN zE_(wkADK@onICEUBgzT<$|$x|g}% zB=^BC-4^a&mHQxc~INeq_Qgf!bt{3=h6b={oM%{GBc=DnXKbhpX+ zg|x+oxjOOuF)lN4pEHSjl12O~3o)(kCI+;OOXur4*p}$p*&f$*w9Oje|B1+6wxnk8sZ{iS54hs>!|9`GTeY{4KDgqSb7UP8 zd||$oxGZ(FdAF1S?OkCVH4FK^B<(Zf9O_r#m0!wqs4uW)@;P~weVZEEW#jxB)_pp$ z?$p6{X@o<)HIep4JIRFRTjaY`K;DWRtj!J3%HV7ABV|@Q139q`wNrS5F5 zs(U2g-RwccAFRc$)?!oQsjpi4yOr`gk#s4;dAfMpO!~CrV2*m}GiA@P7#p~Ue4m_K zqw4bRa@Ee|dvs)nE)jb>z@ETf{zWfPSr# zXv^2Nx7GKg%y_;9eGrV_&Pju9A0!O69iTrlFjoGlpoX=ppOV<$BKlH` z{TvK_`!rpGP4@K)mQ_7ea zxXYBzw&Ucf!GKLn#wN0FQb2ziNEZW_XwqbW&O61@`?o;xM86~ zy|jcf{3|%NLj|)>1wS&?p0AIz)!*XQ#w)T`-%Qy|N2WU3UXeb*R^KMc6+~ZCpW{|l z@}yI`5F;y$I*+!cfUn*R&aL3!UDFwCa~Zp&A^%g@?hM{Zr$C$&0kf+Tm{X7Ons8XcIiVkHPuBO;3C!>b8!)tF{9)^rsRl zZz%QBOP-gy)g{bNhg0^GCm1Nsg>_-9bpXItRyhauK^dolT?~Eb-p>J#Zr#{KH4?F6?KI}&y zE->c!X`n;>mRRkwUn2WU62JKZHbeGSPiA8Gutm?oI~m)1Y$EkMm#e4LJ$*j5R$@@s zm7_mxKL-OJpcVo#8I`HuauI@)<%ll;Hc{sOYDMAkZNM;+tRo{XoQ$XvHN)@7ir z=Cdv^nl+pk$(IrP+%(yt%DPoUX`HL}uQh7j`eMqnuf6tTei=K}VkZ>zsFpTVdrOTP zp(GJEES^|$(Y7{>6}!-mgJ|mt>(ZxX?QLj{D)YF0wBd$>@Pph`SE%F8)Y~>}PBm>) z%HuS$9P3G1n<$4bq#VHS#1=>0yGuPy42-(6wk~}_27O?S8bsPU%{HOq^d0RfhwX_O zwhqYXg?Gzw=Gc^vRj0Srpf9o?mWn*GrXn#2_o92}(`vAfx7ZVq<05&kYtzYf=&8UlD z%q=`Z-D-w>Q(mL0LKAbZYdUQ?m3`sb)xv`$W$ z!`5Nj>t2?69BMzvUP~Qzz3x@{-;Mn;;(Sw2vl4D1Zrn}ugI(>T;2+8T8S>YhImuPu zhS=)p$6e^nJ?O~2=t2kTYl>pj_GL!VM(Wet>dn}?2~r32EmqD^d{0|@oqb_xcjd{w z>~&|+C;Ax4w`Q9=$odj&oW9ZvhyRTzEa)!iE?^46q{bu`}=uijxsoI#y zu7{|@`{~EhvAK7$hxs@*_wFoWv_EKe)n6puAA5H_`9D(^WJ^YOYiZjOE2AN%M!gOC zKfzDVD%9q<)kMag`Q&Q>`+URoHEIZS>yp#$i^#96qtw!`eZ*dI`#iUFXH3#J&=0)CJ6SipLjL94OYIjm%#lfhepO){_6YsRLi(fI$m{Wl8a0}B zg75L%hoP4-K|Zl7XVMSN(8bsi@9yMk&lu_f+ReRuC+9>4GZ(*`Ilo@ce)MGBQsnO1 z20U$vRWsba5ZhZvo7WF;sJrOb9$~DMN?Vx0xchi$jXHvKWlkDPU!@z zb1`Y>p+i>aXOfQ#@Ol(kcQ8g6PJUC7;c?`;Hljwo3w`*QGL(J#5bCKTat%Y4XVA;G z^m%uX&I0t{ALK2Qymef|8Zq5uP3B*N)StuVYO0EbF>*X5%9J zAzsD+NBYt}S^pNhIe~QAKIh=96*`tFX%K6a{#2pe$=ROzh3qvkhLAb!Fc||5Wi1Dr zf8kN;Y@l21aKWKo9Kjj{W0ZEt^$259FJt#hecfsTHY1U->P5ykU9hu;OPr^}-rYu7 z-9$PC$YrIi#MO6qwqrhhGqSXlyH)QJ&i%maavA4{(7{XNkmv3awIh7JlNsM2tMIux z|8AG0wNTf^cDw_2Pz<^H{-t) zWT<_oM(v0W3%_;L?c=&6#=;8q!+z#!8P{_Dr-=2~wQjYMG9Sbxv1L07pC?I&yw$KL zx`cL7fbLGhMqDaICuyf*N8|po3tj5xyo0=6n(tO01=snqp++?^_vwNCy&HLJ=c0q; zX*%P*8O)y!p)UsP%Tz`G#oQeBv_67%=27C2IV}bf>JR$T~>{X}8<8OKnU0 z&!;U(%$7}@Nf^(X`ZmrOG@=_zX)}ghC93Sp#Gwa0xGKm;aF5-poC_F4ImAsH;w{esD?pAvu6WA8^kf(NQ=i#jUkA<&{uid0of{q0DD229EO@oK>M5(HKs#LXd z?|AasBsqtv;f1i);9GwnHau$(*5U|fZGCA*Eq*n%dYx6(vmgyOw0S&t8|q53R-u%lL*oj2pxT34Xp z&)Ei_WBt}^5z5YX__z$wFjwH9Az2ma{dH<`sb(=)uQ<=vP3F25c> zyWRh{|LP~N&pQ}Rr zSgWGLy`S`%VA{84)B^ESE5v`bm&Mp;Uv}2cB79VPIgA?ZzDHu6RhPoNpF9ob0cnWe zVSxWA=!JhS{;C0b&-XFTsz&I~j5F=KkfZs%PQ`CEAOBV1KTG^p@lj0`U$Wa`oTEsm z>MQ8)9QU93Wp&ycM+Sfi))AxLQRz+uKiN7j7 zsiOk2KOXF?S_AEKBmXmRd{zUz3-MR2dK~&oS*CrzxBAPRwh8Zjw<0$_sR7!3*+I^# zLTK;J`p>-aSq;z^;-^}5C-l2AP5b_ZpQYFU{8TmG8*T4OSzf2bU$x2#Z4YQ49Q&9? z>xlQ!4jFqREk3JN1E77%YT9S@^Tk(H?T;4hP>zo;eySR6Ue1kt zyFwcRZ636h_*;s+_^E2N^;tL4;-gx1Ce-`MpUl*^)yEe)H zp~atd7XGaH_^xVn__GSGML-v-@U*JYx`kS6=$Df#Tmgl(_s2>iB)z2p9_g+Ch-+d65C8-mAB!N_-5iqA^sHNHz6_5 z#cx9VDP#-~h;J`G8RCo4I+mIET8J-3t-(MnvmmZut`N?4{wre>@yl$S{XCnaxDK}4 ztNxw&g6whUbKRHF({?6P$DF;V?OWoTHFnUuWM6A<++OuX=Cg7x{8l+93hgFn_ORaZ zF>@k0FL;1+e-AN+?IivU%yZ>z{a*I4-eF$%Ictj3*)v*cAwDDPdowtb?&92|i}~^c z>@hve9#e15^WM)n^p&hhU*lZpVdisR@jRD(=>zaR$oKzZ9QZXf#zcun(Zl`?e7@!T z!(EEi!_1E>8ABarjbJl#jK=i_SL0C5#j`%KmwDtC=EQr5(RP6NYi}a&Tgclulvs+4 z+r`&Gd>ZyL&U+iV#mAwkJjm5}OAS5}F+9J?uK7*e0{uYYH_U#XJW7o6bjsr{%H;*h z=L7bR8V5@3MLm823jc4mKf;_-{3*n*!o*s}Bb-BQ-fwnwWc}rC;&`4ex46zScHP0) z^DyJ>i_8l}U-DT0n9tsAEc1oEj0*=dSJ=$ltqu&>$gqg=8s?fCI3FkHyX8#eKbfz~ zxp(nBlJmzFuKk=_?aHsjITLKIQsTi#OvY6kLYz-y-=@M(;+;9PF>acD>8i1=V*J)C zsB<^`exfXwvL;o)+L^>Lt0$dn6Ej^YoORT}w~D#&(p8bJtCWfCY1T6rTf(yn9dWec z?sBc7{Yf0Oml)g2I;4zkB{taQiP^5D{TT=GtaLDE$ih0gYIwes`R+94i!$H1b~($n z0Y0npJ2^`R6I+C`m6(vbk*h}dJKgHi{tk8Nvz&V)jSoooX~t9e+?UEchyP!5NxG7z ztm`a2?^Z1$hnF;+>>V%<{fKu~>bLY+hbrsYlBR=wnpJh(oyF(bbD@5h{%)6A;$@AS z`fh-?TWIdurA~%_4gYVJv{U;zB~D{I?qwZg6MTy)-=%-{#Y-%8@8X*h)xq3H(k%X6 z3G2Hz+a<>1M)+-{zE|ZBaXS87qFR`%F73WsEq0fvDa`8(@ZAMXN$PG@VzarKQ)Kh| z^oDe21^3;#7as>nQ|fZ*vfa!z@p)LWn{P@v&p${@)6u<@GVfuR`l(<|r({{F>R3^# zN_jf|j&E4n1niaBd%W*>Y}mLtr-s|+VAC{wpPyoqTa<|6ya$Ret~VQ$?K3+lU*-}c zd$h#QuFG&L|Fm2k#l3M4_p!>K&BJQct%=I%uoR`bn%_|!WDerU=>1}jH#ZE7{a5tW zpMYJpkIVR3j<@%OEN^&)p}GoM<1({1tRe_3Ad7|t6vSd@G?(Bmft9qimidJb%P4GX z19(;Kc(+thc1-6wWC+=6;6FYC@q&qzrBilv=lW0I3Vm=Z`g+o+)6z)Z`XY;#hr#g? zOsWRbZ2fM0yZ`(y&-kC;74hAOBl_k#aF4)*BrnONC%h#M@U3|tkbMd9)rvwnpAeJO za&DZi`T?-UXD@pEp!6l;w-CVkI%zQUiH=v|R>vvMFwQ6xVFwC=lnJ?D3C6}N2bSof zj)O~GX4J)$RRk%Mn)z06zUUwN1VgWo&S0<`^Vnxj!N0bfE-s?`*luN6{APXHt?X^Z z>?O9XcT14j`(zM!Tt>6^38UiO9BKA0i&VUEKV92C>5<3R+!Wci>{;UdysdBJ5&E?u zX73Drs7Jne5aJJ;TC!)<>u)I9-Z5?Oy&W*EFpAWTab$ukJ)0L|Wb>O1u!ACQI zlNJOnR4{YRkm{?MU}a?vI56Vq!ZqJ5>Rx`{5ZdP=^)n(=nO7F+#q_D^vr&AScCq!FdcylH+6uNd+iHhtlmLNh*(R>dhXMa|2WxK=`&>%e|48{sPA zHy=#g5jx{>a33cn2QNNT%vlkk4V$xgO`#H5cAWBBsSDe0US__sGF90&b(wNSaCGGx z1=?fm;TI`klzZ6zS?$b%?bSTGosupz?-rPMR)r|@ZVgr9j!af|djA?+UDrnOUJO;d zWk%7BPJJdWF|Yj)8slQ~+6#tuxM=$F7>WG*9$B)c@Y0fleZlY+nU>%iy)sN`UNUPa zSYhF14o!~snjF1ShnDZthwbkLtziBpLu&-DOXLv#5tQ9smX=%4t3F4E>YX0J7pENv ze%wi(*=Nm8pF4AQ`bzX_d}_XFiXrlNv_3lbOI>pO0bNr3SGvUb*vDhKe6Ca44CXga zyN?MUsE^IHLHDCBI`@mHg!nHP8zz1Z9)>G!9Pm)d@h+abbTPTQt6&lX)K-K{$+~t$ z{VAi=D?Zr@Rb^6bDQgSJp*K77vamnBGL^x-mnd<)wk_`rE^(VqlUr^{4p!z}HW>SS z@VI$xr#&xsK2h4wDYExnviP8J@#2H$xW5#mc(>|1kGZwr@ioWOz|e>9EZw5Fj+gd# zR+T2V6mfrSjI#4M>l5=ACyg-Wq;B4ctNaiM+&KiCCgdFSQCNw}s&6!q_@Olp(# zQr=DG;=IFM%-)N`&0erv`-Fq{*Cy%p2iGYZ9z0L}_EMMox$M;216;GY=5Q5peNNf? z>MuFIhB}nGlRA|8Qx?g6O!#1ZeC}XyN(WM3L%>*-y8JwDLhd;J%lBXCVsizj?lgMP zj6R&vbRoLSDfn#Act)cS@;^E}7M#*p_{HdBa+}eEQ|QB>`0=?v5|iN#z89T(6CN(U z{Ztp3`^DmzE>51W;aRbt*Gk@@H{rtb%f+!>R&uW_itgfGtm`7Oo-uUUdJ35aA#*eJ z@S{$b8>x@XEs7hj$+?;|SCaOdqKDiUkxq2HO^XY0ntE^{%WR$%k&fi+Y0_U!`kyb3 zBCW*uB3)GYDY@s8{EM7rx`^C4@GFAfYhd&h!9$+SUfi}znXXOv9IzK$QDbsnEuGR* zbVvL0H~8j6q7r|yzj5M^x5rLAHK*gmlqbwBLD89Jx+t>T z%CiD4h0D4qs=Q!PbUEibJ=7Dwde2m1j)2+dQJzp*Hqf3p6UVOa4W!vhCjw*BAHM7Ol zecuZ%t-RWHak*da{5pC1f;{~gWy1zURh?6Y9}}kp zofa?cCVo&qH^ep5{*^Ca_dkw#L&kj9f1m+3;KDp>*tEi%r_-Py$7aM?UE2wT z(6LhJS$WL0ZRK%S(qjQy%5+-l$iEre12IZe<)R3sGSR5K|5{W`rIRs|1U)iNtV*}_ zoS|D!zgJ4XTcPJ;==q$rN%#KMbcmA@lx00)>?%6zN(XLII4*z(yZ?lY%ropV)$2t6`@x$_h zs=P5NB&>2WwB=eAx3Zx4>*tJN&1&3`C<8WQtYyzdNZU4Tn~0s$xaPXH_8Gf^Csl^A zKAB<+txU$Y=w$x&T>kIzYLDhh)(Y!`6q}Je|3-h*u|ANwN_70vE(Oc6TM69_=<|mt zeJf@CaGLnZJsfGwkFCQfS9oE#zUGi|+I2p^mHb`j^T2w?)V;WdbrkEm+z>TpXs9wH zznjv!fc`&4U6U%-J(JJ>2(Gn5>DwauwVAe@LR;3bc6$7q?4u)qebm3=Xf!@qTIq`m z#*pfBCmw#ig>ftO%NlBS|9(~5ez{`f^GlsaWzF28_N&CMSLF(|S96}BUuDMp!nCCM z*QM2US7yvwX095KZv|_VT3JqiimhGlFz3m?(!jg;(YdQsshwTwm{N!>;8LDh#~;Bj zlj6QkF;zZ?P1!lv8o7>88n+oc1zTOECdDg#na_WE3_mOl_?S7t)4{)DGG$g~7Zs*W zD4Ly?VOHEbqJvZB@Whs_dxg>u_@L_5J(RR#neHcz`21oI!3^^b9D&$rF|5o zU*$@Iv=1~^CWf=FwkfUB9{8@V9z>Zbz|PUzDmx;mQr6t^KlUd6B+paGJQr!F2HFQ7 zg6@KH$CRVA(?RNdUFl9c1%I!d3b>=+(N245n~T_oIEB69leGEAjQ7>1?v;B>KaZGq zZrR2qNz4;!_vWM-5#1bdo1-?*AN;k9_k1;~`4m2mPSU=c{p~a6m?l;}Ie%W-rulQz z4$`hmVtS-}LEE0<{W(Lw=GSRk8T0#S+rB1c%n)e%iuL8(Z`ynNSbI-~UqqZ;dh{%9 zbj}!t{p6VH^Qyzvy5QloBdo()_@7^4%)h!IIn9f{Er3I>W|1MLEZbEj`6f?#tIB5x zd;i7Ah{}7&EB{L|WAIV(Ay-t+qW+(F+Q-(xgUYZey#U@LYfBaV;au%~nD$<%y_?)B z>*E66&HOi%F{6n!X~JOslVyEklbIKii2J%Z+aqJ*AK3Q&mNCPBlQNFJk$thxcz!k7 z;g__8HOeAM-%9^|&00a=I(V4qA5}saGSpBt9{D4zy4b0>XFnQ{p+t6~?U~!QxP*p8 z-ldFuZd$Dja*z#buMpH@W)mZ*q>Z4ofLTP7^t+0C`L5kaAf(Z7k@ox+-Z8 ze3`uezA?OVmM(8mZqydam$Ibn@0KSr73~x)(Ww6O=c#7nk-(Oi=$3AFI zcjbnB+AN&^ywTV%B^;UIv@xwZlsP0aM5&F!9_=t|pQ^*We}ukb82xFYtrD1fz^QVm zMVWCPd0OV2X-4zp+R)m5sjU6S8{&#nUwgJ+D(jI1)zZ9ye>G-#pV$QE?!ytv4E3Qt zRnqPaMQZHyTq64@kPH(+r71S_3nLreY+ca`F@X&t2dViSM6CIQnh<|_o`0~y?sw{7JU=v z)5jQl`u=R_>HGb+nMXhMg>3v3|9|rRCH3yXAH!H3WlY#UHcRvw(wbR|KR~&O@Q-&g73{xHK%bF~ zULy8n25YwLvRUuRJr}X5r`Z!+ z@AL+-HW52^9chwZv$?lE!z=m4kHY|9Ld!aB3J&C3;Kipy05;PbfH7RLnb!%U+Z0@% zrNeaE6zqi2Z3?c>)?qqr3UM$-HCh{6EQ98^mI!x3xV7lorw`wplHbTp~X*LcWygL~?f_o_Yk>;{! zZEUoUR`#^_#$N;RE|c#pV=$_;G*9L(StBB!r8ItI8nq7n$mOjg+~@IE7J=ycC0`Xt46CSZ+n0fl1yZcO!T@h0Chbht1 zw*xbCMR3)#_#J$EY2T_7225wBZi0W$q?|`2KVcJTkLY;Kr2b9I`&J1Kn<#Sz;SF@TGtdEdlrfRK z&*2c!}Q%jU`{PntEAm`OWPAK{nuxOp=t?beM(3%hWVroz4gjQd=*vA zCH)clJ68?y4QB2sCjKC0OMCAI?(Zv1Reg+c^toD7w6eYI#>l_}1@$@$3CX||6 zA6a3n^5IkSBz^apu@C+*`}vkESF1i#_qli%S=_?Wop%*3_X0s z%M4W;@Yg$+_uasp{*B_pA4*R~?7<+npcow-+2>c!@u_(_)$9i;qSnY*5Q5Mfgi2IzyBTh8+7;&z5{=Q4*%hI;K%6jN4^6; zMu-3CJMd#Q_^W9htHD}ZKT2;prMRVi(CxSld`o+n)p1%|1=cKqHZqruyE1QS`R1vC zd^@}5OS?wCw5#)-((?^gyVPg9Mn2os`Q{n)`nu-3@f!JVygJ`0J>OtMm-=qHM!uV_ z&Nt7f*Vi>)`Ze;UU!Cuio^Pixi&F)}6e;D|x^UFPb zn8RnT=v8H7eyA$VZ%bp|xXe1Dw-Gt8G`{UY)+B9|d>OI6@0C$X8O&)NW%Q)}HXRqiLueN~27yNi zw0#KmOoU^_uKMK)|p+~Qrhc> z+EUv2loIEY_LQ~VPD7v_cd*9XUdnpCxqXI9WNUq1eDjz3yqg*N-%LgbJ$&NKLB#Wq8ithTHCBXp>WCBHS4!zv_dnRrXyeSq zWkZmA$ur~KoA!-xUm8Eu{T2W73*aaErv_~ww^#LZpMy`=_|_nU7xTMw*? zUZ}y?2iNXDDMcvWm#sM<2ZW)Lzc{zsDJfI&f4H4ekcXPnr?E z-ezov?i!@{{f{HlB>B?kCrxhC;7UyaIO;LNS2l;0+IRI+{4K!EKaDS!b6K`8p|$8j zmhGM!vu&T2-*m-S?=abqJZ;qcUx+UZ(dW-UXSB`#l6+qpZ6z7mwuQObwxVx4eFqeA zwswKRWV<&n+crPgWLq>d+qQUiwq{FS{8f2b=ZEu-Uw_jU~le(UHo@oGYIjdPYA$j?T~A_VlThQWwI4X zTS@!mQN|$JWF~Pbly!S&S;fCF*@{OHH=DZk{gL@|f#-ce5p@XdW64`$vaKhMb@TN3 zi}mye^z@raf7oQJCfzIP<)rhx=P{G*9#^*Q?&T)i-J}&ypq|wx+hN|12;8qtwq3k0 zc*bP&2>k7ov%VAWqOE~4i+7l8FG%_?NZ)6&`IfVn$=QR`_;a{>qsexLGFqg(*Qj@H zw(ayd(pXy;A2ivTX9N3kkf%9`XRzb7lHZwZQS@;%{d;${$u^AlRNfc9WU{?XIfDO! z-*>jp>6cBO=6Lpg;!Tuej%z~iLJ zR>v5Y|H0XVwfk?F)A=VZJ+ADzv|^a;2F7|5du1};7O{?&d3-Xu@+m=dHQsdKJ((xVUj8D_rm-Jza;?t&B9Jb-J;?t(~bl8TL z#ivyQr{#6Wr@g@Yur2XvF9JKYKk2VhUSEf8SWRacBc{ct4XX{n46P63nK}^IR$#5b zstKL-SrW9ehFTM}vZoFQE;S)-ax!qvE^yOyxLG>f7~mEGmkL~27dW>Lw?&7u3y#3q z1jjCLwK`nA4wo(X0p}F_l)!kC_F#`sXl1X>CbUnT3S1;Uy(a-@=>peNhwH1u-3DBL z;HCj*?E*JYhfCJseh%Dl;C=#JY8SXMI-E_1n**F3xLLqCyTE1ZaFcYndw`n?+ydaH zb%DE0hx>^RcRz4H2W}B?v%0{|(cu;Z;D+7<%tP$KECX&)7r6Ts+t7zdqfLZ&3|*$! zQpyxtGP+Ee*F?tD#xJ~IWIv^p^)~XW)o8BV9fckjey`053Noh>KHr!hWE+e2x3S=rNPxWm&pS@9eDXLwFeSNw*anV#lY)!%ct(_`wJe{crP#(J~~*>SDWVSAdjXfylXXL_stGt60`%lgJvemJzU?NEZ}YHGC7LzTxo)a|N@PxMeY4`PB5o1k*n^7y z*J^0)i-`K_$$rDj^5BXms-_)q7xlIFNJquPuRBdM8I0PNc z5YjgoGi{Z?M^H}V;5d(z)sg2bWN#@$^1eo%NOUWc!LM;=ACKe}-HDWUhPCMi-W&g- z_#2mnS3S=6F}@e_Jjt^q*6DBB*4GodJiKcDits8~BQ);pO&Q@;@3S^eMHjSSX?WGM zeJxTw5^B7!}o`*9Y1AFF0e-QM@8t2Du5Y7o8B$wXL!$A zW}&>Ep7(%RK-_>8ma5gnHNL6%2lKRmw*r1Syu0YHk%Y#dN`029n}JOg*h0=eP*)yx zm6Lwv(Tt?brA??b`0}4<&8^ zaWj_ns@kQReP%VzmrUFezIPk?_}VTy{9}2?)|c;y+QZk<;_zcr&esP$(i!wnyOb#3 zxqOHJ#DnmC#(v{J9R8{3prTn<%6iAFlAhr7-$&ft_>Yx!59iW+Eyd_$iQ}BB?-r%I zuVJ3U-;?)?%ay7ls=@c38trSi>8GCaPf{-bPs_Hco@~w?HB@lUgY!na6f^jccbQUU zR3m(ik2w4rlt|z4N@F11_@7%WAJm^{7oU8MlTjB6Or>b(U$#<@s)6bba z-z&VIUgPi!{b&DpyC)Z2Uvqb-|9zfOq;V$8clL3I-=l{5@SWmo%FNi4Y*8#$&Xk{- zEPd$o%i8?(boP<)-6w1A-&hq-BYoKPvSSbX-tLP22G6gos%O4MnU;@ioUDe2m-jS! zR`xY{@GRhQJA*xsjS2CTeTtrsF;Gu=^sig^trfnS!J588Db2ex5}r%EmM&{;;;p4d z(hcsPg?8b`rR5qwe&znlPn~0J!P$fq_FhvON0n}ru_3az;D?W7_vaR+)oeAmC4TP{ z>=DE3L$gZrKD0ztzGn@s>d--ZLKXKbeHHhsR^$`Lt;eFcUrXj4Uc5O~ac{BVL&mAN zA0Ann_iJ#K{jf%O^8LIw!E>8ukxVS zE&$ia7#s}TJmR+!Ht{}#`!O%pMY~s{_uYXVq)Xh{eq-}>?%z|!IQ&;cgTLVWCq?YP z4=!0lzDvCSiL?hLPhCIv&bsT|pHjy~{*#l$?PAZ!Qy1)B4gQ;;*GLe0ZzDWNFcAh4 z*9RJAa}I9+PpMz%{ep7#fCK*QOR|Z7qb|h#758!Oi*igcfbU7}`zK-3cURpA_jP=G z5-skF{BxPyUy?H4OdRB1P5g_AvF?4~Ih!(`ApUvkJSH^oTtnEI7~O9E3jU9;t-Gjm9Ja9|E&&^$?Pk@^Z4hO0K6y+QOKAQIGPF=eauXpb(h;`%h+wLg{ z3DjR;alc+L&>c)Urv#Qdq`#zpq)oo0ylK3@NeBT(`s!Z7ll0ea=pO~leFpA5QJ3^p z2xSYOpT@oQjeLtglezT4PVUI})W+ELZlOcNVRMN432@WeVY9_8`0m&o>z4L$6NHvi z@b`NS*n5M%*XstlrG2DrP7&VF@RfcX=#HMq*rZ(=A{y~?3 z(hj4+?-cjFT1k(YSYP7Ve7$=#FoMGw=CwoM5CZNy>MZU>&^&{1FZl$Q)zG<{?_Wd5 zlRRfapU}COcqw1TgwQYTu#-GO|46=<$hhEL#?Bz@E9|Pf-t9?@aSMJYpd$v{Urda1 z-wWKkeD4Q0!LK{`SqVMBZw%qr1Zn3);J0%pOzd~=NF3>&KtEgphc^<zs?(2e0L|~oG471b10NZiq1Mmv#kT*Ma^7Ez5SY;=HI#8O)akz% z>GZFIZ=Xs0?3oJSJrVG(DH;AZHe_mZ#+mE(KXZt*I?@jE{$SE)&kSKMXkzYt@q;Y? zt|&m}ho<2d zN8jMg(nHJ{n|Qy;7+ERv)3Kt9=|5BAD?Mph{%1Ku+5#OdY7qN4b=-fmmN?<5NxUB` zdOiJhHKg)b(HH4bmWe)`M-bkTNxIl4yN>UMqBqk2q(oLWP_EP?>4kcFmX=OArTyFu zlp|>q$S42w66(GQ+2JJldw}yvJ-_g~iHyfv8Dlc`PJ%~w=s2n4A?fo-59ABED&HF7 zg_p=bE%}ae52TT~za#HS?u6~sVV=-n-bjC=G}bM3OPb_;0^IJqf}7NBywV1OzY*Fx z+CpgW0d5_%%iXjAq&H|dhY%lVJBj~(o0+fVyLOw!{Xm;V2inZ=FWSuT18rvbS8XQc z2k^djd-eZ;_Og)g_4Lu;)iGwS)m}G%*R|SfG8X?KErWS+tw*T;a9CCxr*@ zf!~en=9sbv-XgqK_>1t~Khj>0&`txPuZ$pm@Fws)A#}iNPv~tRcfRLp@d4g?LZ@4c zhrbBC@THD66S@t=3+=*>>UDUre z$&bG!@Y_oGew_i_zhCE|lGQrA)Y(}d@Ethvk9NiJ3Qhc*o$y^~;@|8F-$_&S)$kfU z@j5*T8a=|NI`dvlkMO9@`a0Q^f3Olw&s8Bz|F=O6B~tB^%3LnS~LkC>BuK}I%!g_f|oi*cd0|hPzOCX z2rpng(NVtqj~!!gJO580Z-5tc)Fr&&>T#%69^@bFC_~a_ceLYo>Xk9K3EuQ|(UP{O z*<1a(=)N|8(df3L(Cz1cu43=@A4NB`jYi*ak^lHT>NmPs|&f4rb?mw}ormfGE z*V|_#7?nk5HgKK?8B=7cd(va!a7%EpJ}X_Wo<69 zXAtYx6TGiQE)@B3qR1zdxt)9UJ6O+(T)Pf=&rRAHWI$Q#4<>Gr_&?O9H1 zTyWZeym>FrRdxN`i&)=E`Ky3`l{yCTz7}~>c+z(G^E%|TLC83=jxzwWlILnO}q%+2#=Wh5ranPf_1i);b4(KgOK0Dls7AY)FiC3!N(Y%E*(%vkAHCUGnUM z2d+ha6Wfc|kzZuCW8}9W7py~`+X~F8f`RVU$X8|Lvy#4{Al7YQ%|8Gbku$Bx1Jiha zjXFe@5jjD0X#(>uaaO*a$TmGF{}s~LBA*o^7l@1?^ogvrg?iR)j&(a}w|&4!KM8)v zcwb4r4ajAy>X0*$b)En}>ATl;nykn!Ymu=ssP6)4wS+?2?-ia>w+gJ_CG~Bn8|Z$6 z_idDIrLGFnRw3*BnYcQ_y1H2R^OP$-5|c=iHd~8)T?W3#i5K}tYzkKp|6)wf$_mDc z2{^%j74pso<^^frt;ld)wd=(&v)cQbk&5T(b+yFI?DHZOE+JuYVo}sGsAcG17+hH z>#e>T^ow~hk-q2AN1g?Cp*6#Y5$}yp61SZ^2br(mK;L@qx0Lm)vN0qv)0dGL<%>+} z<{O!qiyjjlpXdllo0xRF?{QV}6(nW*qJM|ZIWfYwA#s}THml&S`c4C*5XzD!_zoq7 z`L-u2z73RnyBgz5A%3wV!?-1!Pqe~6SnC#13?%4PRp|CW=rvSgHe7bKtPpd=m-A|s3Qll@NGYbXf zJ$$by(Y_N)9UBJ`wwGr47IU{UNlo|cExpZG&KZ%4(jeccP{ot6%(3yca>e&N&y3P3 z;IH~-@jhUZ-LtWDnr|CtNH&xid;?U~vzPeP@)(~|dW$bt3G+>*kB4R7>={;itFNU@ z@uiG0cp}kvhm}Y8u1_BCk#m&8lZ~Eabb;H>w$E7GU-|eS=qJsWGSS&OY~h4ZLKq>2 z5J4DzfBf{~hZ3fDF@Q1|}&eesl|Et+tp(XR7^2hp~^fL5+)Wt=|dIsr@s+zmS92c_+T<%a}^BQ;d_xRbvwkmOX zUm6FeY$t6D=b+lm2{9g}U*1E(@uT-au^Y) z;(jLu9d;^vRos_6bIjpS<_=&n=~LK8lf9XeWl>c@l=BAXed!0^3HBk*p~F7+PQE91 zSy0sp*6D98>sHmm{Gp{A@Y@@|&*iw^%Fd9t75GDi6ddFOt>szxa{17pZqDc0$6HaNi4zd3-GTT3CxDvwu?zZ+gG@rnX}4wVwkg?r#P5 z7+8N4Q(iOWwXkM6$2vsxR;PhEBWo1i1@<($4UuK6oGWkq+~H^MhrJDhJD0G5AZPDl z;nBx9huri+hDXi|HNT#zogX?o*x{G6LzfrY19C=4?v65@pO6Q<91Vdo$16e2jtdEC zv$#_npdo_$640;_8n)^*y!In$*q5L7JsN0>@6iCQ8V$73Kc#`T`*Ab`e}{(f>Q?Sc z{=Y>-$aiQ6t8V4|*Z*5I^tnQV+{X~xmp6Xe@#nI)t$k)A~{1Q|3#9b z+6-#9O8GzX6;ty7vuYbr6{J+f=6Fs>#Bi!}8H!$CXa(+Y3ryb*aQkjaqzzo}Q-g8!|HYXZ842J^p6mYkJypF6r@pJwAi@Klifbe51#!hCrK7 zAik-$EhmU?+BzpxkIyCkn?9T+)Z;CByo-2CKU+>uJ-)9VpGW+_SX)kiJ>IIv-%h+O z&XzM!k5AU)XA(cPzb$9D9-pem|AP2g@wS{Xdb~}KpH2Mz3AP-&9`DrS=Mujz(Uy~~ z$4}DZi-`ZN)s{0=kDsQ;mk|GIk}c;pJ^m+p{9@t{46x<=T#uin$3H;)U$3*}%+cc) z=(NksiOCcy+KX=YBo@Aw9mF_?|;-Im`6;GCh7Z@yW@yoK=B%IXjxO z&S2Zcn9sMT*z%_hwdKzlX3KwQxGn$D5w`p-*W2=UkF@0u6hk&=^~O z-?6s*;p1%i&NN&8Z8lr}f*Wo5%WkseyVGs?+wHdeJvZC(KOAp+F3DzlZtRV==W=hd zJ@<=r+jEQUw&zygY2AXIP41#pY)SO2mh-(`?O)x34Jl68&EKEc8N?S~G07*7(x5qBA&#&PwPK zS|)Lhu8Fd4MXpVTzSGdzLE8xKvM@JDzCC;4u zX!~CE*z)2Ygr!)gZz}e^RN_|77CH{3p8>bkbA^tB=^LO=_B5X;3eYHfEh!dfTXLDR zP3(GBKJ9!+=vrwhOJ7;C-@e*Xo*oSS>n%ZT(q8+?yKcDRmwqh%z2PD0Q)z=$mWuS1 zmX+xpbc+qtD|D~>zeBh5t48ZEiW!;x9{n(tV+JwH7NoDEhlgiUiBvqszPwJ#IswfN5)UX zsMYBUUd^->?as6vAGIcZ{+>)*@!OfU6QkCqpJgqOYza%*i=9(1@}}7mo>E%&`IPc9 z#}p|`&KAizWGP3^B6Cj5EjC-kc1x*lw?%`c9FbS|2C3N9{d~&v{!|>4soZsIe z-({*MZ`@1XSNVRD@Brug4_m|An!0nI3Lcw-UCc40zezB}Z*_fYU7vo8_s#K}UG?$L zyRvAHeX7A*%5ygUYAWJh#V^R~u9{Gz_g&TG9il4!!n@&n;H@UIM&vwHzI;QAI)pP$ z@W7wy-&^3}3hSFY{NM&4_Y~ooh$F`x2xQ3 zm?-az*LS#w@z3r|w!f>?Uc{zhdpq|;vAZR*)CTkzV&g(=AIW`eIXe}J&8~Y{W3_iv z{9?E2W9~}HeJOL9q1F|uydmpHY;1Ag%8Wc>=8lxH8XpEdjM(ZiDVEB4=s=$&%sJ25 zIYJ$}z*&a9_IY1B{3{7!Yx1O#vv=^zmFQ-+q3=0nq^|TnuH4r5pDb=Y{A6XLaWfVSM;IK_91s`hG0vF^TX&I4b7)%$HUlA z$srC|w|N2Y(%#IQ?iB1%hKsEy@DY1PVz=%^H6nK^@z_&xzo;tMq2U~~WpZvcXTmF3 zcVA?z(wCYY*g9-OSW7>ja?H5bepg(gtB|{>E75ajquW$XhbHj0fYBleI?)pB3wBF`Pgm!E1Fz&XLw27Ea5 z=6+lc?!0y9&RehQFE6w|)fj@!nkGZ56`L>ff!SqH{9>zH#;Mro{x;uv#ZI>YJCk+f zmvzD`l>0+)-*)TY_T?Qawl)l&C$ZVO4_i2ijMFb}$pCLB_GvRUo24DN&jRlTa5@go zUxL2{J05!#<%VnJsnO`@0gc_OUkBF`@DN@W1G;4F`RN3s$4u-WB#;dM{uh0b!ghf-e}YplcgG|lZ^nwJ>V{vzi-Ya`e@ z!d_5qKKV-F$vJY5+sM5s?QT_1?pF1ve!aZQy(sWhN`q+U0E`j2xGo%heJuJ!;2I5? zwx-}rn~c-bVVSmBVGeINV_alE(d#rD405j_M%J~B!K@{tGHr5Cx;e~n<&1w*l;O(# zq^5obTT@J?P3~Nu?q#r@?v-hi`__%|o$KSqB=|UG%Dv*IK?d#a)9Lt3TVo34_sg_x zT5NYWjWB5UT%=DrWYOjr${rPfS7`Ibv4L_<4!igT)?dd4%`1tk9C3DsKfnQhr1oPXMoEC?sr|_w(4*@bhuvtR}I`u z;9lwi_nHp(dmU~raBl%O8@PY(0=G|xJE+5z0Otd)2)H9%;6BmeKGoqK0Pb(VEe7uI zUEmsYxRU|6#?!z&49vMMFc;|O<>dde%b58JIL4!S5o6<9gH5xc6Xx_5A%6vNPr0iN z02x=>`f#vpBM4+#m<#`}=)Aluqiu8W``G>*Oo1+8op08h8x#r*sSa~$ex4p0er({t(@&js#FY0xI$cFgu`3l zN~{!n@`cD+i4lsoo_r4CC7-}|q@kbn3Vg@6z_NFueT$r?VE50-IwD|)JFL3YV5uy} z4hc3r!O;nh8Mg5glvcqpkM&0%=*8ABkOwiJ)Frma~_|yJ@&E9$WxIiW!UwQ z_3~NzM*3qN>%}m_~_kW2CR%}gLV&Wq`PBG zKe2%OV9aSEyUO|)JMHKo?C3L9_v8ih(-MQ0dk0unc#)so#l6BS6ToA3PltDI|69Ed z*0Wm}kF(Vp`@5{a2KIG$k0Vdb3#zdfFqh6M!@nZ(Vq#CHS7ga~t7`1BuUKe__R3ng zp0wF&nSE|hnZ2N_%sy)s0lBY-nEwnm20@20IyQD+^+U@ zdP~dRwO5pt+bi&2U*jEKr*h|asS%BYydj6m9;wd-^euC#U zas1E-j_3@^_JiYoaNK_l91rL?9stLcU2t5f<9GlZSAydK9mkbja9jnBtH5y;IIjBd z;b;j0$AjQ_5F8JJW1CDFJagBzf zHa6*V8I!_utxB-_3%-TtZZZVB+gQgIFpkR@&zH3KXm=U&(FN_j5AmwIMSD*q-rzo? zy$>Ot`z+e~NaBs|liGV4@kaMCc@K6FZ*tf1Zg!OCl`)r4Pvw8eH}`YO*l&|>>{4zr z@0Ikx_n+ijsUSUAOaEBQ&v$v?`vWb%q=#tf?`ioZJ@CDsZ&^Ew%q+I;8h9$uY?b+j zJ%GBC>+N+7gufI1w%+dg8u?;Gj;ATb;W;yQl1J?OHx6=o9O~q+6m`m1jU%|LIV#ta zs80Q=Y3yW=qUL_ZddyQmnxann%0Yac_}lC4#2;QXGIJJd`ApXI$R+czF%*)m$q^zi ze~ayTkvGJzUVS0*HS2rvsVDyQ+L1TEn#GzNJ&0z%gf(y(dyKM17W*X$vssgq_6;y= z|B3yQwR71IVQnt!aI>23UVvRCs~T93%Q{?D-+6H@JWFH|kx9glUWfdr`J{+aX860s zwY7DT--_U~!yKJ+b2GjrHgFd;s!wR8*x?r${yhA?mAONB|GNtorbWXe?^+rWJ77v` zrOd@ku*I?J15?ZnY;euv&gp&J%Y1HLd*b2axx=>QqV#DdV=sfT=k)kPvb1q$zAo1jal>R! z*svL%D9!?0PY|2g$%G@3QPnMx-Kw7;ZUf)uCS_wXLAxKwzWrp*{=Ub)`#R#nM&9O$ zj*6~+30N<%g?j$*#2%h7Lzpi*=T6TgV5@<}ZoaSE4YzaNCCnE(q^IW$=Mm0fi}+Q- z%e-%(j3Z6PjT?d@sy~!_kMbQ9RgEoO->}ohjnP?mV0$cvb4i?8O7G)|!52mZ<76Zu zm3J2~G3K9mq?}ZNrwyg7BjiD^*RWJL8ezH|AGN{sTvm~Zh&`$)cI%E;w?7;uxw zR}F1mXk!lcwepNHPw})!oaBerRB-eLMOLQ&87xY`YWxGHsL#&XLd+4SgxJ zmB*GJ*HFa0j#zzYqjd<*Rx$S?E@opQz_GBM5*llF6s_GI8%!Hczw z@0|1{aM#lZ(|FG%KE^!3b42i>KZRzEc8%u#o)%y^r@{HNZoY2cp;u^)F;Daey)Dov zv`YRCdZUH}Yx!TJY#Dz-Gy536TXmYfU1;_)rbcQs|H9L4ScpcmnYfN|F0{&6?ndh?*ytkWABpjXDOjE^p3x#K^U{*5tD_e7r#@VE#=gzsbe zL;Cm#eIw&n#?y?vbu$_sEth-ljaQ1S^nq8 zbvlJ#rSdLkyo6T?Y;t61bt*Ipe_);MI|HBU246`=&mGM_R|{@JuZ+7Gb0+O!)W)6A z83_-Od*CIchYtzz6ay>u-NIAaM%qE(qAFhXtKkRGk^*%qG_LJ}* zPCG)rf99j>6zPgms`(fD|D%ttAGC!Tf<5ZY9<`t0n=1i(>Xo`rt^~~|S0BwM*LtPX zCs)D`_~fc|DF1DrT$T9c`e#15*0ay?Lq540@ikJ4|GCEA%AR6;8(>G@(q!zD(oTGL z?B@?5d}$0xnZ-VU=%2)g#Q&5ZE~(>ve7*Gv3i#n#z?tRKMgzK*Yy07fE}dl?ul{fP z;R-31eOxR00Kv`2zKZy|!1tcpFR}@1`VJo;9e&t;K8Jk-e2^Sxf9902CwA?{CrF>l zCi3Ls4}>$UtwY&+DpJF8!`NpMA7r8%`Eto^dm2}iZ)`Fe-9=^Pc|vnrcZ28DIAu>g zdsziRPVaDhuiRam+4hp$_jRhTzBn+Ap$=~`=g9VkD&89Qs{TP4$-R{)E{8bW z^Nl@f2dD0}%N}E60(NJJ{~El5`|h=BtQKc8GbIK(sB(xY+`{?`r5mLAO+9@vvHH!a=x*6Zu~iA~yQ+ARMCWl;`i z6xXq@m@|59zp&dBOM)@1I5`2o8nGGpZcRur!*9yLb1MDrBD`Z%TPO3JLdYd}RVBCn zCWrrJ&TPEGnT=ODZ{4y?i6y>!^l~LOmB4$Loa-2lA0T*k?#uXOdxdk?ns28oKH0kE zzNALwzQ~^7N0jw3Wz}kBiN7l;E0VJ0JyI*HMYU-D-CDZ%cRNB^;xj9fGu%&*m-VIQ zM{5K5IqRGI^0IERi%4Hg*)J`N(#k6Uu9);Z%Eneo*em$<68~D_Z%bJk8GDPtl8YQb zU5bXc;P)|gVuK|2F=)7lkc*G64eY}d6E=W@`0~P5N$&eRr-DNz@43|RB6Yt+-CpY4 zuq-?ln6M)}y#(ee;39Knj22V=6e*YTWIwc0FV7LFx|C-Jm8j^(u^Z#kbZJFR=_>E_ zMV|C>*>8>MQTfh0_=^eRt_tzipi=vL{6p5zz4mujAY)5hXsLaO#6=P}UXP39UJLxi zYT0Y&UV$so!kwV;oVi}%c(TaQqjvK3%Ctw(6F(M)uUB~4<57zH3B&T oQu;fN`< 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 hM}TI+r)f~D8h-a^ z{tW!>z#`zu%?6$=_ODri8y~3mWo9W1nJtu;qe}mbW6I!G!nkDMlWqwUXf2Cl!hi#5 zF?KL~2jPwt%$G_ zuhmGSQsHMOe#?>03GA^Wp39KdCyWnVi88J~0>jX4pT6jqE4CX)X!PYP3s~Fbc?#R5 zN+tTB3U+B9$kEq!C70oye)_ibJtIZGXnz8ZvKw2MaQNJK$~hvQa^W?q2QFhE`cDaDf);W}MU4&i%h^2@r zI1{+0AAv?KVk-~HC_x(}JILP>TbcL=0*m^2qlB&Od<=NRSYNvxw(ktc&>_FceqTr|_d{7qzPwEowi7es><%r3l8=s)#A*O=DcW;CpY`;#FpL;XA#E zx2-XLz*3*e_sj&wHNq}qeWW)O^+Dg$ls4*<4n;s^BNLht zd>-vOH(S5!p+&6$7t-{u4)7#9T@$b!YZZ|erY@CNFWMH+h4s=?IgG2v%IsQL8x{NP zJ8NPb^O;>=qd=7jYf{``&7f{}O)NKK-8r0(x zxaQ(|9G3+bVG6ea`}YVifOlh0b>`ww5!bi~cV;0yhX!OS!cCb9#xxdtsK;a9^J(BA z9}1gcnvQphe;7E#glT*ReEPxXEcj>^hs5>)TX=)WGbFZ1d=ClGD8ft{@FU#ie%OKg zun&7&_yeZX*em`P;)f_gOxwXjKwQEeJ`8MR9^tDHRwwgXiEjcM5H-rv zBzDgtHkR^wRvFvchdhl#p8Fx&(=3a9;Xx(~@Q^8=FC$IDMc$4}z%%eUO(Efhrjy9S z8PF3>@?3;jkd7OxnedwrEg~#t!etH)=)<$7A%)LuNaa`JndBg0B?p=w2VV>Lz8N;v zWC1V2S)RKnGSB`+sXNp&Pfyd#?0bCJ%!Fn7 z0hL1U!aty&?O;|ZE*sjFmyPYr<=pnfg+VRQ@vF*kF}REigImfLhO{K&%sc7}cZI!} zVeARGm}Shs2K)<7!q3Z5l2t_9cmxw30zA)9;CE_(*O`bi<)KXYU-c&;-^nOb3d)p-GKpnC*b-ccxTri!P!=Qp z8;J`wxGU}T3~M*gC6`Hn{AjQGH;TAk)Q8my+}tSqU#Jgw_lZvApT=Y-p&O`QoB_V@ zDfqqg?jMQhqtr(N(bqG6QZ?{-)UYR z%{l~{K1HzU8g$TMJhyFl33Nfdr`ulsx;BFF;R9BjR%$X#Y*=eGbU4|DBfwuDtS)?O z>NxD#j%n?uF;a7_pb2OClULOWWXnv9ODHtrD#6@Hw5_hl5$)Er<}h0s-P@0N9VqKK zMTm855NylJu+O%KXsqFoZwIS)Wuna#DFRji%i4Z+DKkKL@`N2sbxP&-K^`cdRG$Ar zS$cqLcN*oOGJL}_PrCDem<_;Q^tg;O%CTbpY1|>=-6Q`jd>FhvRR_15$P3O9DAv>p zMRFOKI)*pKB^GYMRfcjbq4F#_TDWP+vBIR6q_Wh@W$8ft^}s?7XF{w`1~JwICG*)k zA>md7+DQ`1Lv1CI30+}iG%HZ|R;v3%l;?Al=NpW>0=3Mnr{~4ZoQyrR&Ip`^I?jaB zTc zF^O@-om#X?`(16jV-(|RqC52NDO1h+Pl6Vd2D!Ybot* zXqWTRE_W)1TA{alJCc}Lr-tfXu`F|E75bDD=~Da92CJm*UTP!G zQF>SJeR@|9&R4v_GVf0D3$PZTY^Fr4(U>il*C_*f**I;8LKQSNv3^|;$<~=X*%r^n z^>z$go3+h%iZuZ1MN`RtpFey~qQBFccMcobYsEU)3Ll13BF^tn9~~G&(0`BSL?o9H zdDsJha(7|=qh+FjMW{gkiE1r~)Mw$}**_Y5NiPP1j~W=>)K0zs`5}n!{m+-iM5>5_ z-PdN(*w5t0hL6Iydv++(Z$|xhBdsZo&97pP^d$1yHVSoHje4a$LQ^5jJs4lTd?l}a z3}|0;)wXNkL!%#caTaG>P9J|^M<3cPrBCCm(%~^Jo1Uv(wRxeT-2xtcY>XBD*{!u~ zRBw?Y#%io8%Sx(B$?Aw;W|iQ~Ne=vLCx);%)5pxBy-7((gZc{LG#|ye_VPO5R@CXI zmN6_}hx^213sxDCUJ9eKl8@*Lti`3^s)OBS1Lnawi->e4Ku8u*(U-;4^}%YqobmWctqPwTQsChI8TA40vHgYF{wOoa zaSxuU-IXJcg=i0Tkjov&^B$bv8H+m)`5eI&dhCTA51>!nadP1f7I8a}=PtVd{9PfLLf6MhhzFl9^FW1BzR_kwnCOwUJ!gD;2ZVFp$I>LdpG7; z=OCvp$fp}}DsIqEZHJupBh4L51mxsXGbh~A`GL81D%^&#u4(k@ebpUsB!b}PdXC%ARJ>)Nae)g-Z2 zRdcfTL$33~BQwrJw%vGMr-m5d>WN zQ;-qie)fU)8LXA|n_tK}1T64A^ylqp^KYBevjnUaN_mLttpn!z)J5A`C|<#oe`~QT z0zP{)ILP`q;!=OHpbgTxHRc}H5~R;~GJLo?d_n?l**6^RW zU%E%{qHpobnJ4M{M%3eFj2(#1t;^hYO$qaT1Tby`S}g|VdokaM$KL|?{j*y;X8Kc&`<;D$7|r)Hx)3*|sx<33#_ObCMt=HK)_LWKR`Nx(nOXX1g{3rW z39!ajGrj>83LjI2B`Ir;B0juA!Gu>TMug8-3=jXgLSZdSVEFeG!>l`TuCW%_?_c5m zCEoue-*+YrZFPt3G)A{x4=?o!Z;->QpUc|0acJw#z0vlaT~YS;fcySFaNlmV`CcMpzH71XkM=N89zA>{%=Z!*^Ih9`Gv>P%dQ{viC1bv8 z8*j#Z*D58<_YxWNUE6pw=DSuYVZN8hnD5%gn=#+DN(uA5M8(h$Ry196EV58&F5F{lbO72$>}RU0RB zM!au8_!ivV=jo1R`4*<{({Se3Cv%E>6@`geK84x?8u2XLwK8Ux_A@+Vd}?l;%%v#n zv$cn%Z`yV_{I`?2#K8J&_>3+rK_0YUN#DhDM}NjMaOac!>a)|o(Qwyr=7TWKy6%Hb zAM=r;fqH()n`^NTmgUPjqD8E;&9LjAL-_ozXkMj5p8y@vS1mU1<{AUvGpDggofyie z@4Ay8W!67GI#a(3|MIrPdcA-#S%1=&|I%6O16x@(M^Lc8)&(w&8#st@n@$fuoZuUJ z7I?eRH#CL?=2eFCuxk8ku<58fqxmO;v3CYnF#h?c(Ffl`US7d_5&k6|_}_M7+>x9R z+(Ki}k6Ffg9Alzo_=k`_o2_N~_b-f#J;3+}oLi`xSs60PG#|EH*lbNtcQLD;xoT+t z*;QlveCX@1p|cK*R?qy?RL#sk&mA^%&ElArouK&=*Bo3sq3^$39Np5sFt)`Pel50i zF#K1=dfOW4|25G0*cV|Z8*w|sxaPw~d?SBve)GNftx*iKe^qR-&BvT+5Fgl==fl4I zG`lr|9Bph7vs%&flYfpZ0J9p&n@zz0T0;Ue>{(2H%U18ceFFHt)eaVBr9xm{;L{epPpFQJn`=_ zl_+>4=E-Wb>1}AM!Fw2fGK)QbJCrv3Pg_^e*?rij0?gG})b^>3n-;~zs$tu4z-|ki zyMVc{saeAcOyFz!7ud^kVK18qds!arXJ=u1oupu`J);-dro!jIG|c~gvB;-o>J?+V z3G*5OVJmT&aDBKauH{#Ylr3{X^CyNmswx@4J|sK#nzuwD z-W6uJeG=wjYVbYb(A)aJbC)vOuEw`VsuBm7g{qc0N?-eTun!3Ez4j*jAizhu{Y#AD z_A{~e$Er&PRT6`}Ti1!M1H!|W$MHrfs$jMk5+f3F1Z-Jth}PbjrQ zZKpDkKTk7gYZM`N0kkjSo{s#T{vB&GvB7u_usg6WS%2o*tW!I3ZKNyRdJ*lD7tkKp zp=}cORZp_f27Sw`5jHy=bM#)cQ;btOrW<9WOj#%_S? z+S*<`cQk&Y>ulVwGnY&osOp?Du%bc97cXOkuEqnplidt&eu{B9D_QWNn6$uJ;Y&m6vL|;c1{`S^+aMjiKYaB<|FigB{elYoaV{Kjkao7Y$cLY^ zw^_$7uPdTBO-3KySkDMOX-f15oIq~Fx#$5(%i@d&VTepo?E-%3lD=!kv_rM*|p zo8M9M6Ty$t&INtXR$pGs1MplaT`>=pzI@Y0f1dKt(+$3$&$}Ug;%#2x&sUpR*x~~C z>QanRz>oM+`p!zVgy9PuRVsHfm8Ue2&%-x=Id7DHm(s4QzBiDk{F%dp_|np)Vty%) zO~xQmMq)mJT`J}cn5S;}^Z+}xDJhtzy!BKD@{}%>h2)g_A|t3?gq(VU`0Dpq7x@xv z>I&hjUk%|)|5BHog6~I_pXpNN{LuHZ(q%e|)3i5K%Fk1wV)~TliJSsBWcT%2j4qKq8fA$$tn z&6mO?o~7YDrAxlZ8WB$U@Zlx?O~weG{ECsh%NkzNWk7z_N5c73o)MgBNQ3xxYec@O zcy3CHaL+;{)r!bcUDG8ios}uF3{$*h zn9MgThVbd&N$pxCwzo72@$5m~N74yGBk<43OO&96Kw7N2Qk|ohAm+A$Q ztt8JRzHBKYu#}&@qh#5pi)AeVtpREERHlnM%=}aa-;AX+hWdO9o^AV7O=vZ^7Q=76Oy zHNgMkZc!(ikKDl<@UJ&g+0yRd=^x(HJzA8vW9w+Ktdy5T(2!rj*85?{#aP;ju`=8A zYjI4Sjxlor#@L(iO|%EYwnKKFb@Yz;BkVyu>_H+%;kOS@gpDZ|HYOu%Oa|DP_HQHm z(rs-?x&CeE#I+r^wPOOqi*sC~fv?6~m+V7i7rJ;<%|~Ird*_A`{DX#2-v1%VPSm+? zkFIOqUY!GWCFeyYPw_jGC0oXgcB0OG`#}4#uIH=C;+aaa8<2g0=*aHUx$hI*HU-Of z?c1+Y;@h?ckIkra-vOQ5ma`4`Z$#g<@1RWQu^V;n`_zk0vK@8pv&(eK>vo~eeV=*J zN%o_zeZQCKJocl`eSh$xlWa&``wq!;9vf2UzQbO0k{wAZ!(bbd;~qwAo7foB*;sWeF*PtpM3qiqLhY;KMs4As0W@^p)RIh-lhoUi9R%2h5zRC z%M)Rna=h>UuHiq&w>E@JdRoJ|?O)dvjO)|063xMHrFaJ~X}E0-q5P*;HJk$Z zyZav4s{-H~k8D-wkM)?-9K{~h&6smPhHoAC#^GKC`;?RHQ?N}1z%~^K+Z3InW}%mI zV4G6FHdS38(7H#FBkWcDT4!G-*`_kcHih{*u(L&b)C$<6u$afs^Rh?1glF1If%Ohv zBijwIKPIrxhncZ619pYC+5R<{Usy0N)2A@AG_YCqW1aXc^g}1sIy!*W?cUo+wg@a9 zV(pHxWFijsCeF&i+C>7^XOvSV`_?h+O*xKrKUx!g7Iv)t3j<=mgZ;_{d&p(juohrG z%Hbk=*SD~D9e}-S0Jg4f%(J87nQ-5+>X}354V!ssVN{FXbj{4?YW-STK>ym)i)>u2 zZ_9$(p)HRp+v;UGAKJXmuS<#@2!8|w?^WtHc2XnPiEsr9M(j12C zQ8B(>3#S}zf9>hTwqf8!HihTFL*!EjKCox~cs_CVn|LrI2A+dG>&Nq;ywu(zFW>`v z){p0NtGvVyJO_K$kLNM`=JH@~>2t7Cxp~|TnMTXt3+xH&Jd-`=`?+>X!9ZR`WsZ@t?GwSn8U4{AHzu!m6_p*_h5V3(%0@j7g` zWUDUu%e7f2u44ZR#w0Y3nWdA*O1b`j)i~)2_We7*GPD8HK-{zJT5aGj;UX+&F84nE z(H&a;{8|IAy-&rT!~Hvq$sE1dU$oknzW_U_qcPS->uHzqjd^0EvDKuL;R>#$JQ8I@wuhCVkILK1LL_^ zsSv&c-2&w}e#sT!J>!}6r8T}`t<1vF*xxa<_0^g9S0o2X=_?wGGQfZRUW_L&&MUhQ zn9sg?p#yoO^qBSV>w|D3;wnSxioQj>^~)4OGk6qx)7AO&dytMu2cJOem$5<}XpUhm zvA6+q0Pst1^W#Sq`13t@HsQG{*T7Gk3EK|Nx8H?-5A4brY+Op=&+*^EzNLBCw=}hG znO;yJOo{g-`~#=#VEH7x(?8YuR%>f9QN8!e*MF;HT^W zM%o+UHq%k0Q3iapH^OYD)jmki7tb1-Dc6smvd<6Cp|<8D*vl~=WqT{cRhD}53>1VOwX#~##+8sas^mxV}9W` z*6~)L?I8A@Pr*8y<1w_Q9ihA8*!tqtcvj*$fNzQo;*0l& zTy~@>us*HlJJ8OlJ*XFr<{3TC2BAG9&ZsL&Mw>W)nB5f#AA3M*Ueg1*6R7iE+)W0Y z4}V+BpZZ4c(qoU?$zJT^+d9)mygFxNzvy-?--Y%>d){d8TQ0^kRL^?<-PyDUt`v2} z(w;a9E7_+@p?6$F?>MY?88Y=B5`6+>YAE?wM`I+ydrQK1734_rqjth*RU!0ka-078 zc&j**xuP%mL}%W>a#Q}O=O~@3Et0Q7N{_~HRW|quT#LN#fsI&Tx$9|vhO|rae|J6Y zJqM(;SAS31HiIYaJwccCdk*T%Gf?+}K}!2UrMT94J?%$OM=vAoM7z%XuS!qa2axu! zy~>^VnUuEmd(y5qdeZ(i%ANRootgFFrYto|Y5VvLPTSvyb1X;N^?%TrgMB<{??c*& z(>&#_KP08y_&sSql6yVv^(@k^hh6h+UvA33=1OVr^c|e`E?>@33p~LOeZ_R^{Plvt z-|(U1BfU#0)~i(C)K92>rExpj!vehvV{+6r8$w}|Gbdh8x7eS(QinEWE>Uw+?wTm2 zTLE9I7^`2Gw^_}>=Z32e?achR+EeC#*SqSy+F8B3oz4HAGW+LUPka62%#}K7XJG;G z0hA}DJp_JRz0-~k;2iUiHnp?i0iLwqhrFLLTyNv`?sjJRp0qnXX%|0(a#K6o6Ua?D zE~otoe8YOD{b?ZQsD!-#5GbarZ=NR9qkTDc{D8d6Zjkq`d{3GGgnE7k@_sUyoAP14 zROV;kW7a#}=Yu)N!zeSgu|>h2GQWi~cY2lC-Nt50Wv2e@u6wF$v0w9(uBUBI4CSW$ zd=gjOiL#@uRi%cC=~90d`*?aNM}EYq-pzM}a5LDo`mad?oXHp=0f)Wtr5#V z*)WCEPcwdK%A0bX5B)F9_2J^&v1)0!IG=Qvzp6Q$Grt(lksOMrDXyFh#NHwNTNMlI zifA7bQy0J|VQx77-ivFU6KJn+d@G$+3xDY2c+3r3yZl&JRib~3f4bflm}#)xf%QQ05kDRGQ?;z? z4y=umzxcidtZO=+XW$#Hfzn#-Q@CSI&E>?s7~yB1WnE8!rk=vfSXVm6=d{l1oXxtX zAdJ=;JLj{mdeAr@Lm0k0A7)+tSRc*6<(vr&LC{zc=hQsb^#|fJ9p5>e6)j+0E0D%1 z3+pl=oP62ef%l$Ctg9ODpCL|9F6+v`o$}|*fjsDbAM3Kw{T?X~0nzZsNbeI^*Qem& z7|Xg2f=?lyr{g|Dj!$c_&QYuj>w&H+JUfzE*JQfKgP!iO_(u1ktV@e>^ef>vHUeSz zAFA=6gkK-4BNXqU23NTGi7ZF0!KHZzzKd3c_ZKZ5601L?3TH9LO$gGPSZvoGkNq17 z*uRm4{Tu$|hkt>=m56;DDtex0aQQ4^S{xRG%Xg8Y#ZhT+`7L5w9AyTVn!+2A&TNBg z7=3%p;EJVh&l+4KDDJ}sR}9h2G`NP+_vr>#G<~0Ma1EjF1;FT`?~@F!2>PCDa7EGg z9D^%>zTanX1=06=46b1MKEdD$r0-)5t~mNW%HWEm?`a0t8(5nT1}gX?3Z%6?>Fc#AXH;OZWVavXe_GDU~EEjKy0-RMLjDRV~JFQ=9N3yoeE`~Rpy*8^i z5OsRZu&c|@;G(@1G&hZB11)=SuEdG(lih}0jy~+EedDJ##0{jr*9_aqNhR_EdNmsu zhmg6FZTN!YDHo-Sc#SpBM zTDIsK@&2*i2Y6h=Y8rsgR#B(q+kuBgn1}O$lhFWdt-YYB)cf#_mUFuEz|&fT@KX57 zD8qQ6!LmcwfbZvk9X1EJ@D!&~?_0A8{FYkI>-ONj5ws1KcXg$pi&Xkri4XBe#5?gJ z9$k2D7r&j?J%exUw5K26N{8eLjfnfSLWy`6bjy&}iQq}`>5Nc4u=EHk>KTO!-_PsH z6M-Eoe=Ez}on4Q(d+>dkURkqQ%+m$%@)65`{dF}JsYE03xPX23OTdHT*W+9HU7q-_ z>s2)sh);PquZR%iH{ji!hYd($h%!RV1I2I0a|ONbMM(_;B9=qj>-yDWbzn?~~ADb~;HDBn`Vqx?UE@=^Q- zS?(17yjZpiqTDIG+~A3O0p+QPHVG7GIpkX|mh-%B1McoTG=N8>SU!mdmCsXuJH`5Y z2Jxv5+J`axe(bdt>o08T_4?a~Hc4gw1ZAZ5M&&3&8+FT&>d9S?a~_fE@nf`I`d((< zoxKFKRG%d4Pf*@vVtGCFSr0m@OXB0M%Q^ol@u6?!k4yC_#aGqL5zBe&`XnAV)+e=X z@A@P@6;Dz>x}cNla=KWT)ZeL%yX#Vt;SRALD=_A3v>X*NXUmpS9c;Rx{*LMPq5qLw zr25+|#yf_7w*>Jjnk6}ib@=@5Y^ozS59%9I-5t{%MSmn7QrervKB^M?*HInGQ3{vR z-Y141(-D0F%H)nykMt7Y-=+?EOw=%8MSIn4nMSrPhhd-0jckZHrmT;NhbDsJL-~(4Ie13K5LjCH5Aax<_&o5W13O0S7{F#9BNA(Evd7`d}&b#ELq_!k}0E{~1 z^KIaWy}Nr)cGoKgVL$ZMalKyn279Tx4;qD|>fPDz*X_$DS>~av5k@~?at^E6+_5|R zXZrA(qj)yv53AX_ey@lby#;uk|A{M{aJx|!4KUx9!2e1G-ZSBUY7OwopOdknk05Mk z@yFSu6UlGY`}$9^=YxJHXvjCo+rTJ00Zi&62qR2xBjS~T*Or9+*&5*ERl+aM<_@g8 zgD>G=Z$!V^RM(ijeRqBK*7Xh9n~Rqq-%GPMCM?U|qG$LGI8zqSGQI0BT$_dSaFISg z8Pc+hRazHAw;q7(=b-EhpwHWxAS>zfXQ9uRLMKzZ+t6eXHVxAYZvF1o<69!BJ#D=~ zkDt?3LXV#ZAJXI0&q&AaMH$+aL86W#o>b49AYanW)W4s`x7Rhf0?~VP_&F~fzC+aE z5nenJ5l?C_?}|F$Jp2Q=^*i*j-w;(PSB zq*Edh?#}y`EN|T{<>4I8b5I#5F7@{fuaNG3SNDZjHcx+d>t~YrMv^(scT&79y4~3n zSCsoyN$yl99^Fm<*AVI70@+=UuM83YOJbf8zFF^y`!v378DFgc4b8?-z^);pMuCqNPZzfcX_xewyI@^ykf?~Z@0XGuund)u> z=sdcb>Mm52eK%;SjtE!Q{g3`a87kJ_>;EG06YFrUREH8Dx6Y}C&;qI~+ z@h;_8%EvhceUs{M%M;|EiRzGa_Pe@B@&9}KI^6O!^|SM$-rlstBY#ibozOLib@sYg z=lgL!W(oT4mL||rojtcZ`xENp2q&FQ<3ab>%A>cB>qu_YJ`$1l28_?BU;5Bl8_NkD zVUyCg2FvSWUp}Fra8DeO9&`qjs~$9@YxGBGy^wkG@!wt(^{)#0m(Ea4oS4#b9P?Px z!5g7>m*L;MB~CAtK~KH@u~Deiv;CwSjvNF=DD={HS^s{~v^V=4#&^q6hG+C)HT!V? zc-x-rBNk&=*XuKChB8^lP>;G?I+o7@DKSO z!b$g@g}(hty+3;i{9%z_rf&E%d>7%Q@6L?4yJr8vy6icickAPix7BAaf$sjqv0ucg zJkZpTy}zn4n=nH+LRKGZmuByqyd-rL2^5&dJb7u%i) zGuab-YHe?aO|{?oV6N?KSfO2Wh*_11%NVAyYZQTYYgm|lv?ADEgs?mE^tOFr;dT@D z`i>7X*ixg7wlNyLeQfwN`*KZ@{m>tnReiYHHF!9S@u)EXI3pw ze89ekW$i`b!S>Cp%6cu?kB)&~bddU7V%h-#P^6Z-5z@I=ukbPys4EuwLly}zN0~!WbeNz5E zu_OP+*pX?#jtqxC;sNxr?(%%s8Ai`JarNNp#nq4NB(8K|G)@ENV+WpVfc3Z%?;7AA z_9@ddiWKPq>F}Fz2)K>{VLpbbCL98GB>evtg#v$ZFYI&_Zv*a2K-a{^h2I}sWGV%A zqyboxOF(}dxRGb&v~q#>7y^Gx9pH5wIFcDb(@gb9?=XCMoC3|tpvk7gz>%c%9C+V| zd2I-tf9=8A=l0iCOFtHO(fNpER@S+Q#+X4P+r2R)GX2K4n(TBXNk*5x3 zIL-@#PuQ#sU(JIV6(M;h!opkxPeENoj2*u}2G?$)z_bsdF0?Ii4FWDDzpovjykv}LgI9asqb$L(wz zo!S3_upq(9fi=N%#nCg*Vs1`nh}M=yw-jNH-hngemEnE`?Z}It($9+XBdrmb>n~qW zNq(bRzr?@t0&H*RaSpS$9S?(UtBt^8W zvQ!TYz>e96H1@*|a}2&mzWG4WUsxN~(qCq9!A}kLx&*fFT?-VXs}?I-M1KgdtEEG)HCr+URv?`|*qJ_s zzB{Q1v-jiN`HL3I0M2{2lAVb1c^YTo({a|J*)nS26l`=;aDLW`d`^Xa?Zf$gqB{vY zTRQ1H*yo6E&jN#sg>5Omk?kLr3!IC7^8aA8O+bI_oserg0lUws`zG4RX4N-J@0vd+ zpYW(!&mT7IB75zA*n-H8Rry~_i+=W(rA5znEG>GjYiZH*$CehoaAIlEeU7C?ZNP^= zi#E^!+l=wZ?5y0b*;$D=-#YQ^>@4{A3OB;;n5v1-s=#v@J&%jeT8if-cuq=)&obg% zZ?Zlu?;I3mv$=lh@vLS1dXvt?XO+MwhE#?S>@h+aR-p_V zk5v!DZYTr%BKiNLl_C0uG6b}Cz;EO~Rz1YrPzL|j_4tPw(4URy%gNA7DbNRr z&=uw5;p6Q9MxPf7e!Y`?}x z=h9-~TPB1*gbV)6fD;x1pZy{5>m9qFe>JM3-d{a2u zaV8miC{9AJuQX_Q+Djpx!57yd^KBOFtLVZ%@hHBtamj_%!%f^VJkz>j0%$sp>RpM@ z`DFVq(`)!8+Hk%CdL3tUit4e3NpY4VU7{D)Kes+=OO(SYjMhROz1W|Dwdbm6lelNa zy-&3n`z6eYCawv4B_?A%mwX1f*CU&-UqXv8T5DZ_{Sr-YWB&xwq4mk;of76^9rj(k z&@1CEVjV$TlfWJ%{|VTeg))fm*b_zT7b=9U0q){Dh3d)9-m9|`jxnJIT<5VS*?_we z`*=^{`4r^S2YJvxZ;fIcWHyEuu%31Z|L;DmS4=^w)JjaU;hpW8%Y?Gb6$`F-p@?j1l)QWMZE|*v}C5EZ$#_O9V>?|VmAbKU-gD(}NT=8FHGa5)FQBync+ zS)Mm4LC(b&9N*aLmc!Ol#zo71UwH~jXYyLIBX-dRn5 zY%<03F5Fq8bahtX!{cow4F7;;r+i;I)gazQIOUrPU)j#(bB2uIjI`(G*VOy#I8XhW z8drH}@AwO`T6EROWc$3s?~lK5;=uR|?VpUl(8Sz4`PujjY1m5LvOXspY|25SoH_G$ zC-xiE`sw%!S<`c~^ETyVr_K)G!UQMx88k89F>grn&_TU>D)YW-9e+XU3|AtY1Mbbu zKA1Ro(CFmcc?*)S8+4*&{DnTF)p_m5$6v@?j}22zPIho|U*7i{bmG|f3%y;Yd1K;6 z&db`QW;?hSr8pgJu*^2*|!JfZ%JeL}I26_I}@tg+#5u3}`T|D^c;N>D;8yRnbco&BBHP4}Gp9ib8X z(6eUjW@79*et>*`_;```cSjd_Kg3Q~beDGaUrw17{|)BuzFYYZdawQM)tT+@tR8Ob z?&?lh+3s8IY~Q=OxP8xROZ$PbA)eq zqvF}adGj|_^Ra5;@jK}e8mHm^>%lJ<9{A{udk;vRXYjpsk?=8m?~@0TCZFobzq=`E z*qQLexHZwYIZ2a!iuaNZ|3=Q&@wv1Ee@lPD-_qYm?(6+%*rMMtQ$9 z_srw}*!jtYdk<{KSOA-K=ilH__{(s90)OiQKUxDH+a7nDb4}c2=b4a{IBajW8i=V+>j7u9nyBqnIIKufZl{MI6=6q^ms;dY&U%?oRVh^P^cD9@i8P~Gf zuJ>0|&y0@uC0z0K=pId)a?LUK#_LLFD^l35vQ^zsKoY(+7?^WCP;{Pm{^)Ei#&u3ir+5R;? z+nMWz5A=&>b^o_hRo09NAJS&8_&hpA`_A%Dow_lcZwK*79#nIN|LBukKOEeF3%N;j z8r?X5lED0pXa07rS$Yaz^P%`Us}65Z!#CP&(rn=j&X3_en($-TNPhV~`4{E>Sh{bo z@D;uqKjZa`MXG|0>;wmN=ipO4;2XP>_5$c`hNgqid1Z!-B#>coajnWOmcY{~ZELq~tEA=uM>au4oR{p_z)&!da5Jt;N8r_F>QLa?rI zrqKhfO_bkA->3BJ^~bcvY|rz|XEiHgjf1(~NWF5dNvRFSM%{GD2Tvc~+j)JBSZoip}ox_BYb73k=(g+~-?6 zVuNa6Rvx8}bnIeP>|(=S<~yDL5a*++C*lP)JFUMdS{r%V=^D>7MpJ;_-+ zIcq5ADvO|L26c%%hW?lWN6v-W>CSAQZ^D}1B3#M}MBQCbytP&FCz5+~0ztCerfo<3roWs$y-J^l**6J{x)5mS|*;*;oz z@t2>sm9t-R4yE6OewB@pcKsCRp2T00l9=XhV*g3@yH4VlCk+gsMhlpEmJ+RiGjKDM z@Q8!m?EVmJEqcd>RBfibnMy>&!%B3-N8B$^A|nnd!Fm6Q44OsgGoerACR0e>gGyAy zZ;(Z{34KLpo41xaE2yW`V%Mv=3LRCXe?p0g=sV$t%8!s={Cj$Yo&soD4;|$tJ8cyu zyV!$F$Qw3cSmhdM{xe~1kfN8AG}yMAlJnL>XK938UkujEgXRREjN3NavF19vzt4p0 zE5)uN2bm$|Rj`Nsn_hPRGZXFD>zN|3hueQMc5Nl0l(#ZhFN-MAnxO9x^nu6c`^~*} z{~G)X$=N`e16P(+UgCqcy*BB`MuVPrY~nwvS^5ne*BRlp+9~LGW?GQv!Jc;i(q;Sy zLx%%8)uUm-c+kSvo^>xExbglQ|$VKJ;6F?4Dx(P`I1i|UjuY) zB;7-bHA4I;iH*eT^x+KR>J&v^pu|S34YKRvU#S5)cAL87J;?jMjDg@Gt|z~Y?^08I z-s+8Z|2E2YP(}s&z($|0bm}rE*3{x}ll*n`#a7Dd!&oil|9$ne5Tg&o)}gMWtXk$u zBXjO8%39AD*Gc=KXZ6|;&qmU;;@ihgdkcwMz;Bb#Bi~y>V;M9p{ZD*_D@w!?Xxd5{ zLaWeXjH|_^*HR|)*SC|hHj`%tb8dBGs7LCPxl+o0ugqQk5%U(G!(N)Wj0qW)Lf15* zBh})Ox>rxLc$lX?gFecfPTVfat4PT4&!8+B+XCv4viKMENk8$A?4L$C1=1$|DZb&K zLe_2`->WNFvq#K{HBt9yRWAIn%J=Mie0!dlbMJ_C%b(CUs-M|bGN1RU)`&%FWN|F* z9&EDay}CH}+~5g=E0t)w9@o?EpM-8++M$LA>W=LhSc3|4LJenbvj)W$^IpDB#2$0% z-_>?mC&%zXn+9giN%+la=KLx4PZrb%dp?H8Y;W#`Y>PK|%MGfs2LI*lYnt&fi+_q7 zbULR@;(t?D{xtlJT+ZGu8)kOZqUcN1z?{F#I>*i>Quv%%0n|O6rn2)LWCP zVxUcYSg-kq>RB{MX|F?Pb&CI{J3|%EbDyf7sn;s)-CF|hb3VE_MgAw+$S-oPiEA@g zOI@(R>(eOHQQO6%)Gf9ts)C$X2_}92H=H|@^aSCv3Te_N_VCzgV+#BAje^m07Jmf| zSwHy?^zY#EwD;poH1r#1qWSg=oQX~_&O~?ZkNoA`Dbg&%m%;M?hTlHPFMb^4+rd)$ zv!C|)$9Iv5Z=MLogYnug-w!{8=_B|ud0mt#U(fmr{u(ZS*A}zhu3;}n=Do>AF_ zZh9vu?k#jG&v0h?x161RmUGjGt)rbw*{j=5I7?v6SM5R%wH2H4P1uxg!;bvS!uYDq z*p`n1Z$>a^wu=wg*>>+)@e7Dub@xRHRpR>e?=T zVeuK;S%*;{<#gv<=f|d=zCX^+@os-2!SE@||B>N4c01=tpFwv1`{m%L_UbY?NBRus zV*mXzgcis5Y2hsCGn||L_sjVKTJQt-4Cki*{W5xfzdiT?tbk`e!+z>-*mvDZpFYFh zYX$qRA9su+|GKMo)3@Riuwr3CmB^X}$kdsfn?4ACMNjA32!9p5l@%U!QLbSTly{B zAHn}y7XS3`kS^*klko{>@$DgRbnhJhO5R(dEHy!Qb9P`{j{g=C^f3jz4y=>OW3h zE0360nTR_c98+WE{Yo{?m(RGErsVjSs4>3Cqvll;LgH%T?6gTW`R>EMJ!GQl|26OK z6}$}cntz_-&nK^ywBpy$LH?L2s()p0WR2Bi_T>`q2r|{g(O35}rsk13{--G`Xd2`2 zbJc$@WfoGFc`WBg?pFPhe-_U|o8&9v{Yv(%WpBQMeD}7QS2YKP)|6A{QtDr+#{0^M zUqIc(^o_i4A#LdF9Dh-exu%%Dn<8yhLw&QN<7brC>-Z(&j&njqK;?C zH-o;9Uwf-p##++K`jfGaP3+~Z#?NNFjGK% zt$agHroX_`@I5X0xtIL17R{D!-U^|CH8Pw2j$fAJ59;6DD`%iAtPy8ac#U->XLRVl zWxQWa{7T8sdYsExSVsQw!AeZlyJ zuFdgJB5w_O#?#07^l|(?Cp;q5*UA_jXRPumOJ|NpKC6PS6IUbiTPM$P;#!&C;cJP< zuI&rTc$q${rjO(I<$1qQqI@!*Z}BYiLgs>usf=eU_X{MRvRW9^<9u7oxCieW=iN+w zGACl6Q~mENF}|7fyVQdm^^GQeGG#S$znE*>ws7w(((k4`^Isyo{1>h|NLum3xj87f zCVtI$?>6#3gC7Iahml_SCy+4|zoNxa5j6*)C3GV^M8=PDgh%aFB78F$pNHv#2;!|< zICF$8T?lzBCPrWVn);)c{lY8rOY+>xySTxLUQ7QZFZ;W`_d03d{rl9l z9{%|*?fnw@7jtipKWt#Kk?tkRozIxfqrc7faej_`(f6u;umF8AGOiEi_(f)JfS=A| zOb@Uo%=ZP}zt5Zr`DNg}&Y0aNYn41}C?o1YRqUC3_fdBILeek~WUj2C?fc*feMvWj zbh~9fFt_4Ma{NQ&J@GNWMApG~4pY9YK}j=2(o}HH4m#I_B-B_Jss`@g82Tr+MD>5b ze3bN?WzN#?2UrtJOeUYqcRAY?N)R8lg~Y}0b9t+&N92!;Up4bx)|HH%$ePKd3tATC z-Kb#u#CmW_UdHiW^7P?e&XR_{Gr{X5zsNvYpCV`CDpdciv`=_IW^h=|EYb;|c@f%* z$rrzGqMWhweGZ*(kxux&%o!;oXl=B&n7V~W9AKV`PhKfk*6(|KE39PxyZ|jT=%Zt- zvst7oqHkVO*l$1<#jly_okDp<^iTN481HYWyGRN3ZKj;a7p>m+D0?gA&Z9qCNFOpH z#TydDe=p^=5-;P<|FiE9>7x|YUmY1-GoQ8JLV2OIJH�T9E3$uOq+Y8$*0P`QoiP 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≻{_jNw@;Jdh! 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 z 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 z zCENz=dy!{hH)Ag%{08hK{8`wN_9DVddP(>{ExkA6#;IvG)no@GO(kxO*AX|$oBMC# z8!1m@Z!x~BBwYVktI$evNVj5dQ8K3a8Jf~r2a8V z|H+@qH&UJr=2h}((DEpG)AJ;GNhL3a5!u@^jv8FDcB%gfgG

#DXsz3X0|TzZq zgY~Jg{<+&P&Fz11eY)A)HeQ#;x!0xtm*=+xS>&HJzj@4WH_<^4j4Uc+Z5ajMR>$7c zrQnMAYMceurh+dOIoPL=1uNk-tKkc(h#z?Yzncy4`lax3;(uT+F1RDAc(>K7Q>a?p z%By7@wdf?p_MKV$D)RTMcMMM7aYt184lDlGt?GetskSoXZ~Pv0DgUFVbmgDqzr6DBJEnBSX1|_1E0LYztQq)gL{acZQ}IVr z^|b3w5xuOm6}_zJW7F}=h@|MgK`vqJWsYPnWR8ecRuE6ThdbZ_s*ppRHP|hgo9cU9 zyn^ry>_;NDLQCYqmbMiX2jwEAm78xkk}$JyCFNC0>r^ksZi8KP{&x*}*Y3}rtk(Lr zCehXV@5~Jvl`3|CPMS?X^!uZRa88@MX)~TSy|Ekg)+?sQ=R2@Rj^f>S^Q_FxXx=@V zXYY#HZlA;Trr+=|=V@;kaEKv^X`b8U!A-*p8&m*{D~L02Mt zQw8==p(WC$vA)*ewi6s`{&PEl*a$vly=ZDDaM=i4z9&s}wc>lS-tQ+}ZFi%u4Y_@+ ztT&?PlJzE(;;{?d+$PZTH`)YTa+Av@fZhvPX)5DViV|ryfc^n{Z^ZR&?U_#Fwb0Hi=N%3m)(vnU^}*e|2(~H4L;Vb@H@M1 z6S&i(pWTj4;J4{#T{eN1>_KzEn7mW^+!)s68#jWtW!R;D8QwZ;u-g>gis5nAH?j@< ze|Y=34eH+wZ%dee&F=J{4{KM}piA=Do_hV;;p{wqkQGspMe(xl0lFgbA!Ti-f<9KV z9y_rSOb~xS*3hzYpP6SVvMw9&jqX92B)w5x0mH{nu^y zM&Ib(bna>2>NP4~{9a@qhWLBOh|lw{_-A{3lqb?xdGm4G#Drs0FemfVK+uP9x z$b46`mK86I*Zgw}QkH4)5|=G-#Sux<8J!XrvxGIT@mg65Tr~C5eZ-&rCPOv({J#3Q zhaGqEeu-0ABj4jY60bvIan$lX;r*nI=&C(!*0Zj8+DQAp0*B%YrtyUx3!JRK7w`v5 z2M$FKJc!z(3m%M5*iC%FEck-8!WYbfFPIj0Y7_j>0ZKXL=e}V5;M@A)3)T;wtsi>g ze&~t&-NYA+`}luJ`-v`Ju$K6OsS{kjU@f~x>Kxs?e~P8`(|_TM<%y{Uk5vs%6>n&c zUl@CdfPeOsXz{er>1z6RiK8X{VK?v%vxv`IQyupp`V&XVq)6Wy`G#r!Y+dmUn@B9J zP_bD9moi5(9}>re{XXtkU-XN{eZ_8QO9H-{+5;~Eqrb_PL_3dfZev^0J^Y*41TXV{H?j%-c7NP|t4**F znWXRrHo>Bs*aVB*Ho<p_UL6c++f}t>t%j%-hYc;=HD~#ZhL{pcJ%+}-CXp~nD>eYTx)kIxKsw*-GXjF zbTy^GogTP5i;h723$Y)!t;G+dye-O%53 zFWzn)M65oE^Z3)g1sBeALwD01-AyFAj)~|wx@8t=eryu+uUo>U{@oKw`V))rj$6^+ z^eEn7?TP-zhOTBgdYaFuw@^OeSoAoxlqBS<7>ej`CZmrLo5LFv(cgSREqnH>cqW_k zDIA-SAEo{497{aGp;T;NXdZ53#HJ!bw{DZ=E z^fs2RZat2UV>AEMo#N5mn9CT{`=5 z*7px*|5B)1cO&y8b0qWQnH$mJ7(F^1cni_3iA}i%UR!v*ruv&t#J+n|{f#&Jo7dd> zoAqw}js7P3oAr(KH~Q=Po7PI}*t-|y`VsrsbYtDk`X;)YpWZLJ8gj73_FnY7A2GE} zqPG#ds>fH(2pkG+64+}j6AS#k@7BRAqxSe}=DTI$t=OJ#tb=jw7ilUJmmm}GZ=!=K zgIB%Lnj`yvnyxuF*U9wzC+TDg(a97x(#aGx(a9A3qE5#1Umjmg&$?q~-MNu&=7m)8 z*L1Bnjr}!$E-UYD`R${+e4G`D^O&*VO;p z{55-eWM=W#^yp?>?~LVLzvQneFevaReQgSZXWTHD{~KUX{GmkV5nZ70KR1HGQrdWY zg+uWh7TwJMMmQAy=bs6O>pgIoX4c^F;(rAUcK^4-psc+Y-D|Gw*A(51=w)=oS?`8E zCbCmMRjw)G8_xRCHQ{3a#`m=A30t)_MJIX>-d7=e(Kkls%f3vB6LA}OC~+Y!Fb3K_ zO=Lc8Unx2ne8R}{WQz6E$zDxsVeF0WCETIyAJTlJf$c*J;|rapAw?1F_l!vKix{sn zB{>a4ip=|C7mmoeHnz$_EV6{KevoZG{0_5s*A|ODKw#xBDKlpQ^Nal7$0dPdjVy>M{us`e~=lpIBvj3wMHj97F_A7YZ7zZy)Up8`vNTiuebR!*67T;mNU`zH3sy+G6+<-~yhJZ;eZ1y3}ZrQD!YmRl; zN-CLS(W~bBDSMiW-A-@>UQcXxqIbN=K1zv&F8-S}jG5?_su{B|Pm+>RMvE2k=~LH~)Bqc)8oT<~e_!^9LKnfA?IU#r05u zb?~#2{Xm8HD}BBOr@w)Q$ob9u+&8e!H}yvmotDGTXluOZTzsT|$v@f*?g~H9RHr3t zz370x6FLKahz=+S8Y4VsQ-AmW8+BXqUyb!!@^7-%|KpzXraG>m8|b)#epSbHBV9*h z9aqM0oKMeOULsaTW8IY}et^tp`VID*|8JX1kstn9b1CryWc~H%EM@JLxzOT5uqJ!< zDR=vgb9zZzb8fzeLBmnnG{w;kZXEUCr|6vp7n|beZ`+srAJaSENS~7Nvsl$dn!Z_V z1<}y)#l(k@910oi-COLA10nMEf4APbvHns28|UvQoV;-i2${d8F(Cdo%w6$s!oh!^ z%|P}MdDhGe=me`bM{4qu--5V86Y_-cjLj3K7q%e3Z6dzFZ?HeOvCqZw@U8YO+WzCl z^1N&BrR>3My#G?9RgSTVL`&yRKv-8x5PiO?R`Tzh%pKP66#(1G>v6bea-&cz|i;B7Dm2xX&CwTzV-UzlH^snVhD-&{KFqEbtG1BMKk4S za2I8J^2V0A6*)@2(4tEAe1s+3+mBeNx%>2i&UE~PDtyfK`}EjYn<-k-uDaZceR_?q#a~QWY1DPF1^qxCUhY?NA6_Uz%L`s_UYV4f`0WUTGMata zhm&ZNq*F#uM^;;?3yL83ZtM#3cZYlW~g|AQeG41%vK1yrJKbvpxHIb7t zW_iyqf@J^D4+djI;`a@Ge0BO!$a(?N&w)P}dP`qF=oYgu9U5_nxxZ2WgMOv|0sqDQ z_w-Tv|33Zp<$vzewU2p8){mRO2QZNQ27o^af5I z>waSG!@SeT`zyPhSUZt>^f6zb($OAIUWVo5`*>Vuv{fBe@C)cv&@uhHHA`uKWm>Cz ziJd0T-N!qOkF>UY!PgGo*32nzw@`|!H>tmzmhm7g|ulnGGMZUpJ>nNjMi^qM7P9GfiTGpdI6n$(a?Ghxue2Q1FE1%^C zd%`W8vu{D-e5bLmCVa<|pzh=_i(BLs9EZPi9D8%ZTe$LB{xjQT&Q}6{@q6U7j3W=Y z#D(upEJ}w#>2n@D?8$s0n?&>>PWLMOE+wbYDts^djM`+cH26lW!msj=jFl&cQG?PV zF}(G%wOIjKLE-#oPsYNPcVdIRyxW1G1Hh?_M?c0xo(bRa#~_|b@)fX~gy`#X-UUU5q$WlQZV^50s(GXnlH9kdi z7vs5nxI8m&N<&5 z%Yy#;L&KhzP3_2K6%rxuUHbm`!iwZ!v3ZJ7_CLlBU*z5gN$!YY2Bj#TSQEWI9A7Bk zHuB#_)*NHX26BMEYft69k_V~{bs9dXM)E71=Kqs+{E6?P%aH5zqYL?Xcc^DNO}4Y#`o{1?S9tb;n19mk6BO;Zy#NAN@4_|17sde z`t;GSfFHyZ3#epV4}v#G(YIA>Q;KRg4$fc6IBxFoX;9rfrQS^bpqS93YwJE^e<5pL z3vzK>z_%)&HpZ-VYX^dZ72}oqFyhlTCm%vZ&(8T_f`j02^^)NH7JTOvxLh$4+R*)> z{Hl{mePZaRYYFIaympLIKN}m~Rpxa#ekldrKV93L_pIREz7%LFI=K${;WluT+Pjsl@(qPpL*&0#oqJ);7suSlL&pUq&A)?@{W*FQ*(Y zpUeHn1Q;TKo~bEPj8 z8|gRa6*JBC>kLL`#X9y4$@%6s`4x<{cFg;_<|<>CrggSM!?#P$-K#Gs^?k^-J51L$ z*0wNYjBkEhcizOGYERz8Wqxhlc@x`ec@rNdS7I2rXiN!o!{lyzSSaVfqc86p2;3Qg zcVEe^OB)yM+HE)X$op?=(~H#xy-$VJ%C~%9u)x14C|914$>_@K) z*9F@~qMMfZH!ZkkU z5*c$~3yBlsS8#}LOT57))S?RtBmUs@G^71l{8U6HseuN4Lay~A3z7=!&~05J7K)j@ zHIa$a3-yXFmfX3fC8-&HlgR69fPTj<>gZm7cH8wWH`pWD6RKC*#*Sx=>Q1eYJ6P5$ zvtB9cx_yb3o5Y-WTj6MZuuXKp#DOH=M+;k;&QHrR@i%CW5qfiR8$Oo6RLj;%pEI^$ z`9haVpwsfNLW7)!&Jh;s>A>2Gl#W`giWMol?bCbb*_{Scgv8=`hUfPIlPidag5D-E zv9)dO($-6ZV&Ls#dB(M8aJM~{wpF2rg3t-KhL69Vi-Kpg^(0YvW5!kVc~$Z8g|1u^ zKRxftgVt7~yOIY@bjwxo_$M-F!n?||G9OLnf_BaJmf`2Ue?CkB!jS@jBlmiMM$t{9Yw=`wr@w2U_QwMb_9nIKOHa z|6KzdprRPSCxFAV=s69BEt0 z1=CT>J>md19DTRit?cFHokx!_&l00)8+8LPBDr5ACX>W!V$X5a@c2q&*Vir8lZReVF%xmJtq$0Ldm`oiAUwo`J1+LUHaspPup0_V|?4& zV)?d{n9C-e$q!%5*k@90Qk$wzo9o};+fHB&xXK-C=_GqKjEuYfhT$Gl)%c2k`5MPl}0h8|8M2$c&#t zTO?L=4ZPH8{2?Z>Z@U({qC!_1+;L4y_||^Lq4Irm{Z;0+0-6~_{w>`io!yJIUGmx( zd|TRv!LLcap$hnV;uF{+oBP`u^g3s^-h;j~lBesOJ9nGp2yK14m0u`s6i1)m_VXy_tSus1$9VdNF<$^QKh*+=Em zxq});J5NrO^*oo)`3Y*tSsJ=%3u|JYy$9|0lgllS9HTvW=2p&|QBPrC)l~LVy@r3z z2l(S;5x4twbY8EKyWvB0V%fx+C&vV_=ZTfY^>X5SZ>K&>?C%ddZMS|9|62bK+1J0G zJSidiAgBCeG5fXkdi~+026Is$PhK;MxjqeQ23chl~#^9v0{f*2Yyx4Wv*yEmCfsGT~+mq@S z91d?JaIuL!cL&KaD)TDyD|73Di{AKc_g4Qi;Ub!xB)SYr!^P@GaFM4sny!*JN8sY18!jZTpNHNEUA}gDRQ{DTbG^`>Qakal zZN$0HC-20r==>^jetZ)Zn_rF0e{mo*q%X85-dgAzKNDWVWE<4M9Bw4%U=2KvShw9;488zln($k9+wn)w9o>cJfNhb_TDxg$ck0&ASK&n}7VWT$ z{5&{yhy8tIJR|Rlrp|a3>w7!VF~?M&)V6>bFVkg4BMHZ z#R$xkHuTeO2keh=F@|FJ}icb6A`N8u)=gU0WP-;mJmeL7c8G2!<- zYfUx(BQ!;F)fvGpUrGd}7e#P;1^*>&*6CU}tJ&K)C{P)@m46z+Kkaj`H9J^qRti1Y z3?IyT{2u3GzrQ;*z%Kc@x{~rDpm|H%Iwin)Nuwp^?~1X3K92uf7`eCtpetusXD+$v z3G<-wr9itYSBJ0f_=*XjKf$Z`1)#%FKQUimB zLSOFYeso9&bu;UZXT5oo=k{>@OX`!ZssalA?P`*J>n+Oytl zWW6C@kYzIKN*3$M68t?sfUZnoT_H~x>(K`5RIVRjy^(e2{mhN5Nt>-KT*KYPH{oiV$$yocj}|9$W^qj# zI;IbZeUoczQ&;+(=K3D;c8xX!XtZSywB-^-)*Oi$Q^ouX-ICnczqFR2m#f1rU-T8a z4B^4$Iq}OB{0Ik*#)BV{=Vmx~Fc$H{*0UIR zykTx0&rj&Hrkh!=$)-!ei=J>%8nEEP*#(s&8>v@TW~@>^NcUaYS~Czm&4_Es-;N znd^U#jxC%rpan9>Y0;IXkIpl+IBaa8A~e4?`N7!Msk$)%dL^KE!OTKrvD^^! z^u)J~2~Yw|O0xjJNc1$LQ$xm}*N8PJle$D1agSNT!7rC^`WH`--{UWIltuH z+OI2p=uIE!Q*4y}ANz2TK7_ja;L!TeQtQKo5cqENdP$4#%e|6pt{(>Pj(qJ*YJnd0 z4PB8d$4mQ&{=Jv4o!8qOzQVh?Y1M*|F-!Gze4;M0X;&<>lMWSp%;GGEc18 zCG3+eMW-RU(8m@KXBD2sbN;Y)-mc*48Ku6x!Z;^`+gkg;h#jA@j~ANZI`0fT1V$uk z@FUL$M&xtf^{!69kHAY{#H8!@<(li6zqeCXl>t|tw$g4WFy%TAjQH{>`H9|$EUG$8 zt_I|d;W}e%SUY1c1$}M^G)-Zy&O&!4zLVIc4A?V{Tly&1=lC*q87;_RM9!`dat`8y z7@;sX-SG32yfmKYH0xJmvfyJ_HvL9XrXJbvCvp}Z|8pI zHQu;*bXey0Im1%IkfSFY#~y9+P4Q~eGi8`b^j#HgePRc;R%Sm8{~V8=uL9kN;Hbp2 zErowP1D!kvUwB^hAtr^n@F}=rQi|ZCijttKXP>j=lV3hUp3~?r&q!a-@voj|JnhFz zd#-E$VT&wsGFDag$Rb~z$rKi@v<457J~k?2ukw!YO-kzuaHlFUcuWkq(!l##@ z=Mp#+`Tt$kf|6u&tg=WqrWNm-+Vy0RH#!30&ByEfohPtK9!Q!}xL>b}I97bO?bczf z?GtY~6m$&U>wWIMpVXsJ`1TOJ7rA1T2tD)n{(@PB7vZgBOwzoS*(QJFq$$|(_;;a2 z@%xts8K+>=f|fKyD0L-wKezVbuNwB;Ej%cFl5r6EOYj=M4k!BUu}5mgR4x5$Jml&f$8=8)JNo~XR zF|UD+{A}EpKzmt_1jqkj+-WQ0{)z6HwK4~uvG4j%9{b{(jJ@ET{F~sFk#Q8CUZo0s zIpZk$Vu4K=N73oZI7*DtaQ8S?aV++X2*y!(`{6p@!=iWhjAIF~gRcWVHN)_I7>WR0(u0W6TR!A1?G{ZDoCtZ&zazyr?Js zLnN{w_&b6e+!FJomhXzLwFcU%z`qNP6&gPfm^6d)wZzR2K~Ahgh7exFA6_I*%U4OP zDf)g1`J-#bK*#8AN?q>^avF&bI`dw~diE;+UAv%nq2%CRr?hs;J^%T?^uFf5{62h1 z{OAAteMf+|ie&7v{oZd>4MjckElP3(pLgWBN35U%sm zViUJu9mz}Ch>pnHts8pHo)^lwraN{0Lvw75<8P5QMjugW@Q%o1j$^}=QP1K(_GyZ* zmV^FNi7k2m7A;4_vpO%$wjg=V!TsLvLyt_@yq+~Gqws%cO*Bv^zqZkyKJBGZ=cbJ2IlZn>>}Gzw%Tj>j~d$4(8e)ft6hageu}Tb zHrh(g*IL?#@QoU575-h6=l#q2=B`ZHVc!Vvx4Fl`wPoa|j_dmATG9WA+-6u9H-8X* zE^(|at{7Pb_Ce^>TE}-UTseG)y%+VMMFsXU-#0X!!60aPwB9RrA9|)C_$-aunH6-J z<5=R(esry2x8@s%Z_^LS9l-I9;Cc`^9}Mny!tV*60{VC#zUkk?^Rx+le{EWG;(BQQ z`-X^fAxcqOV;kFkn=WH@v}uxB=c-E<_;8Ww+B$7LDHT-NDypH4$T+gxa1?Pw>d}l+$nlF8Mx&!i=rt}FS`?(|+Bo%pQ^r1n zJ|hWz#yV(bcW`tEdamvGd8flu-%Y>BMSonAQJ`^x+oEF=8R=79bK4;F=MB&zS(oEX zEp1*4XBMu5mQ5k|JT{fF;zM%}?U$g>61`R&a`ek*<4gM=Xk<$%M0Vec>@K>g zFQ_}D`2}A^XYNhz>PI*}hs@rWx*6x^Iri*r_UviiRJ{I<0~C+Ws*#OE_1H+x{oF>P z>8d2IU1J-`IsAst#;@;RPQH&)=;1zHYp3*i0{c{6*EKu58NJSYO8KJK>{l1jM{upY zOP-d)<0}444ZwH#_BBCQl@2B!gHP@5}lqpLgr7}V3?W5U;_ZXWuo&2F95 z7U-haNu>{a1p?yRD7jaljSpg5tH3{m^P{r9RGd;Y_^gOh>c78Jsju0n)YtY*A0TVq z6%*?mYti?2q95NV{AYV-`d^i?KcI`M1g-?Gi|`5Y10TPMGS~Ojb=K%=Df8JO^yFIn z6`nVi-jmyD!GdpNIR6@6t4%}X@eSyFtM)4ORX*#2s*-g@OVire#U_}5-J`1xnH-;$ zl7UM7eNTV4W}l(0)6wnZ+L~ne%D{C&`wU9m3jA2M)4rz7b3rl0ZBJuOxHOP;d#_TI zn7wYTFSfj^_q52bX`?H8E~Slq1TjaerYZFRSslKoqw3%A%3qGpjL^MEWW8E^fVT5o zIQ~Hc@sp^+PeSbcmHV(yf=e->2iJOqn-|9SI2bg$$H}0s9nA~#kt3bLyThwi$baCI zSH-(t;@cG;DMd#5C^5>D#OEhOslT0nbe?ISpTs}nqh(9r`fl*xa$m+chwt#;72VDC zgZZxD#Z~w;Y4^iArTz+VQW52spND@>MNQlM@5z~Xt*5p%`o_;o&ZS!3bbxJhVQ1$MPU)EA9TLw5fEG7l8FROxM{D z8(&fR4-IR+eH$Jb`9k=|O5pr^{H-GJ6%ZfIM0Z@M5PYI0Li6f+77rlDXHf;T_*Ha= z>%qNhLx+M5*!zCT&LH0q8^bzX2d5sp<<^_o8GygD@TX3!A3ZF)oy2M)pdfzmikw6t&m}I;0tc=caZEPEPaHXz*2zr$T$DKzr}uzKaIC?3Etc{T0ui z(w;4_UrpU*7ux+fc7?fVyX->0g?3M+z5$KCZpY604fe`R>Zmkdj|Wzq(2Of#P(TvnB_@21#JHWN+_qlk##%)CIyA69E z{$iSK48NEnU!&4j>=aeNsK`b?vsEBdXtoM!kFDb3W^?^B*e6<{M-n-(7Cizy=XHBU z3HAydW2VPm(H-C7NJVFQEp3V462)M;C3Pb<&vwCL=geI6j=g)pM*AfAtnSbm_{75=e9r{Rwb(28TMXRpGqmVwh( zz(4VmxdzWoE@kxk;H|pBFmF=`%aVp5#gYJs_E`v2^81}=nZXXqq+tAgK z6D`0tP~XBSI4ySZ)8Mqv{Mm(z!RcncX~`23;qo{G0e8 zl4Gy%Io@$CS!REP62<$9a%x%x;CbGy)kwdaJiS#^}=ubFZ4SrvohyHwr3%8fzr_E;-8#tBzS0#!s;G6hSwsZSYzN5uBiDjJ9 z!0qdPkcr|8=)&y_yTGZB7>B(+eJkxQ-c@i@#zF3Rd{n{npZP@^!O`3BQI&D1VXkiG z7x|w*4z9Vo;W*F_`3FDvju_U0UmFKM=)4hF5E|$CccJf%VW8=Mi*K&yzvZ86kn?Wj z5BgvA-(riFzH9SHe-bqq`1OBJ)L_8%@Av=E5O~=zG@rPi1>Znl#op+#Ey9}?d}=`V ze-HX`Xtn3Mw2^xsajyayr}PDLeKgn7*q5eX!+0j4KZJ*_3IsOpq<=nQf8tu`p|ux# zM&<89cQO+gylm1H9fZd>wqTzJe7?k)sDci}i@XDmUCG)bYfS}w`7-t`Jk9-O@c&`D zmbQvCeE*rRYWM`{1N>EP4frYgjD7G5;-mEH$_5WFe?)lsJaAQb`71VLy3OpR!hbdo zywiC2)ovcXN&Rd5`~MWa+#@H5uXamt{ulcN{~iPXj*iyU5B_QwdxGHIBiwvWL@fHH zBsU#Nf}X|_FR9Al7txeg7^rKLIK1`pwbs_pYI}krct*ZEyvIBC2rH;GJiF<4hrjT|Aq`k#J>?J793sB$244V+&B7HfKG zbSI(;{-HU1?+W+&AoSmK&l~pJ7Qm;#J3Py`rQb8Cg%^}uoToLO5M7_Hxv4SlGv4i2 zEWA$y_KvFLm{>o>&yN@-v2Ucg_Ku28;krzt3viaAOZV`nI`oXCJxAvYE>r;bvc?7a zvY!dq-wLe$B<}?Ls=Oor=#qB=oEv^g-hu92rcXDMchdCuRe{$YdFLPes`k44G(9rU zTzwI)VR4vfHmp{G(pv*yC3<1;46~n(#^DfAV)XpLG@8>j`|Rgil%n9L!0>$I8to z{hD7@CVbMb`Bg26-_So3KFQ-(bykz>Tz*v_5O-eus`gUEuj(OWpcBYI$70^mbfga< z@4%DdSM_4hL)iE);a7E1lYv(HiEMNN*=P=aRhjTgZ^A1z_N!_PM^)%AoYQ`Sr%LGD zZwqt~=HY3s*x+YA^Xa>@5#C)y zMq=3SU$OtKjUQmuj5@@;>P}yo4N3=L8o(y z57hVQvc;eAvaXHhLw~|8qbR_jIaFGkjv z7RYLian9J+C66?2gPdM>Fd+h2+QrjeMJAGUL)Hwzy~c1{QRvgxX?OV*3x6I1f9~-o zmUhCYrXj1yz9sP~_JdEo1E1o%@F}jN@8Uc2*&>%uaS3)#*=t+D*p=Z^Y`|uOpVD<5 z#NZ}6h$y!X!odHfF{Yw}@c2+ypo18O4nl!`Rp3)xuDJe1c(BGk#UiIv(fF#?GecA1d_tUFco>sXQk#T4TAy<0~rvE&3PvZ_&SqTyi^d$(`4I zMcWsAD*F~RUr{5zHU8MGUAmVu=w61BAMw|8FCv$D{`-tu_hR6`2f1}GdQJD@`fuj+ zXTGAEd?xeu8)Oprq`C;V?nz{l82EA{JW`C(#&$c!82Z`Tb$UPNbadtE?7yj4gWg{k z>`c#y{H~JY@f?dEM0&=c@0^^k17|WaMt&D{D|zv5_37(NarW@(E4Jj27Rqd~gYAd5 z30)T&DRKL%v2UUO50Kb>>@l7*0sGcsY+D;B7qD+>wk>R2)s5_1!lQ_NYZCj#L?B^L9uaBcYFc&%>h#ojl`?edOUg;?S9f=w0@$O#HWdpl8*15B#{rzE#dM zV&B>beLH}@CzDbRJ-^D{uCs|{{mUEaVv3+ug>G6UKC1VpH4pAU=>d&fKI33hF77O`?c&sEmq?Uh5#LpGk^6+Bv zB3Sva4b!=7>9HU!qU>h$fm<8{n~9(%U|d!l{xKqGXLe&smW%JeqHXrkK|3`bb%?%Ith{6N&g>v*_dlu4t+)Hx zhw7C!l)2HjF>sAz2CdHomWxcUkD(*Ym?!GmX$agL5uE2NT)5;o%_zc$c&h-=){%=M>7E z9WeK{9Ytq&03W*7sRnBbeeT|4(r&_ZSV#yDdH>LVquF2_Ta`|G_;8Q z6#v#wQl5#}s$-2oUarO;_OQ+r5z3m?>xYK>L@$QjBVq>c5tz#Pnp5F8< zaQv5)kT#!U|7^+Hxu54wL9^1p4WaYWSFy9lf18G{m$AU(Unc!c=YG6mJS=NvDeKGE zmMHLR5Ogjwzusr?w=SO(Z+uStp?R&LeF5BSLz}kXV7q*wcV$VDMZ!;RZ#a_yevYASKSl9Q~CWtK%{n9RUO^JG6+at&)XZW`8P9C59bLh)_@C_l3LEFkW z_%-5AOs`E@S+Y%+FE;c(yn|R0MG3Vj$Di);UeE>NOZ){thkH2><9+$uztB^uU%|YH zZTmSdWz-wcCiFJ}mG^k(FXO(#`ujYzp$^*6TOW`+ntoT}oB9B{tpt4E>gi7j{w3uD zl_F=b4?cAG2y{;$P}NtdKkL&xzdBi|znp}wYoAi|%^1J@D;9jd8C%&?T(i$ybU$|Q z#_tc&c{^J&XY!q{|DudNnBuSL%j)MU_5XryahN_RHdgH2hk{)8?k4qcQ;_EC;1?eB zGh25jx2@ZylX|O>ojd3zcJBY0Hli!*tP67M%5L&aO;;AA>B{~sYYJd2S2v~_&kHGUe_J_I`Gtvc{U^KR`wd4U-20F zTkb_J`zgPb0@vLp+5>PWF7v!>mj_}3!K8jwP=UngeEm%g}-pV_N=KF!yf`g)~ z)nfOO<4W*xM4BshZ!dT3UPmjXPdYZRNX@=)C>ZoB_I>G}OW$R1vZnuoeZMZ*Trd1& zQ(m$+_InpU*+KJ{`Z+(@+$p}aUZxxKld{jaDL?rm{G{v$>I zoZ~E>d7blLv)O<68*KI;8qx=RfZhJ9DCSYy59s1MB{r(?onqTtO_>Yd`6Rh4B=*w_ z>RX!K{z-6r9qZxTovVVL)VDM3(zl6S&9#TH+wbH0D)tB-*SFF5&QYz7d@->w^i4CD_<4EFE7z(7X__d2XT^FL+hk|YRBaHp}VRL=`T>isb z^yG#D;n`%*g7^XqzY(dO@k;^2m@`}{v_HF2;YiTP! z#djwr6^@3N7|a}q&41;vx9qndBg;PJA&j|)FB_`&GOc7U(s?B)c5oVdGU3xVuHKuY8?w4oHvbmGX%S;kJ2o*7`y7=v>d-2;5$@TD$VR|{l?eVgk>6M7d}3wqlkCM3y@>FC5>x9kwvd53FU{9|=E5n&JrVztkO+Jv zB4pp&CDyN*`W80Xv!UzyQIN>v;s+PPo{vy?%BX}%g?B0b5wjG3(pa=M`QP%Fpx%o@ z+H~cfIiXu&F|c%6*UVXB2+;OyOju~u_H0PZE2B>7Bf8>Y>@RD~x1l52gTAD#+>`Mf zrfbZM=A~JD~;`j*2nCL#%8S)c##7klES_1F`c99GrXFq z>0W;79bS61v{(9o5}V$U;nh+#)276xa}X0Vx1?3^fEhYt?y4T<5$A%72UvApxraEG zHFG}oz{R?{BgY=J)KRi2n<@T(vZ}o)2VS&nl<`t`Y+mTt8c*@J`tm-Ov9|QUJ zaIQ_Gwo(6%x+Ji8KvmHMYX;BwQ(k_1g7s`j`hZN{`2_dnKhELXm&Co^l#1;6YQgFW z>L9MSpv|G21?rzyO;CH}q*{M$Q#|18nhEN@oP}xzA01oc8@vf6D`syc&mC+$n0 zi*hJA^Q;eM#j9TD;QT}GRZ^bj+`#ot)ahKWryfIjkK=jNK@>ChpP-iKX7yM%BADZ@T>Arc2<5Lm zlo5rLmnl)shOu3NTMIHlONvp^=T^2#Us(blpzR@JoL)UO-*V*3`Iac^KYl*nGLt%k zvYu;|lt&*9w9NiuzGWq47p2zV5fXy3E?Yip^Z<1Z_iU6?QwdHPoG=cN^oR8-`jPnTko58i0xR%55 zmpQZ4MOkyy*z6>02ikm}Gh6MPHCIi~PPG1>^O&qB)fLCbSr#uDW9gKgYE9rcnPUgF z$a7}uM>&6oGAldY`n&8j>(V807JbfB>YX`Hs}Jyv#gvB3d8)up`td22MMtMt-r-up z;yBAO&cC94dG<7`>DUy@+?+{j-^`in*vw?Bk@lmYCEsUFw3Z?}lmIKuGvX}E_>Vv5 zq^U=;7g+zm*k20Sr;g8BXzi96Z@uqhv&E4;-#VT5Cvw~_YohvSc8b+@*lc-@^HS;o zS+mrR*$LJ%{N~HJcJS7AmYrFt)^9VXTVsIZ6FD=~KY@GGIBv~*hVe`#$Af_PF`O6h z%o|+0M*nK~b_29!7Uv&P9_Cs%+8Jqo8|Qs!Kb+%4ij(uj$DguTXrt%&_^|NN2Xq)+{+V^2j}9<@bTj?n%k+CIXyJnn5d zHO`XAy=3maV;f`ng!8Yc1x_1ivyeI`XRa#W3_Uf)(#;lU=}6sy`Z4akLV1@GKxxl6 zXJs$4_RpSYt;?RRj>&maz54l6mhz=@E&Z5-ZoIFw^EP#D_CjlYRKy#mJ!P*TP|hJR)gusFv{wj zS=J8Oi_|+aQ-Nu8w4Gj6V|nKp=I5@Q1nU<1YG$nN%UYl=f@XGs*6pKSkdvZj1GjB~ z^J!U=)WOi%y*bI&tgIQT(8(ugm(jDGK_k9T2AwcmbP)iln1Z#9p2jyC12c_p1Ts~>fGT|GC(%klWa&()F1C)D1_ ze^pO%Uud=u?@{J|sCMU>qtKXAuBR>hoBI8NBWlLp1Z&=&L~Hd>y`#^YN!CAw{8=pt zP9NaAd%D%R@FR6g@_sd@%TDzYbAFBQ>}uA*`pw=r>zC9|@11Nlv(EeZbg%|+K6}p; zYX{caC3~h?YrE`KGg!Z0qx9t30qWh*I0tm{dD_=pj&cYO(t&k5o_8p$%eQx0ua<&W z&vE}6Yw~ce-S5@GnnfK--|H6Zb88kGa?3fF^}RRia^Z`M)K09~=`W_Lc_HtpKVBW= z=&>qI&GYVH9kMD}oxLhaJ;c587gN-iS4~$(W=*jAWhSbR<;=GRvEEP4o?_jYIaiI& zo@zaiIY+%)8zX)0r+lX`Fw_s&Dao2<_067by+3=FS_hr#%zAFiiB}^NMyk`|2dfVz zJ*J+Bk5=Qt2CMp{htZ_c%bBrZ`$^mhIcW7c z=>OHg^Z}<2M_Za5jJ62ByYb^_OXow;mU}awwq|mD7=3D=nP6Q8JS1}cGPu$JthLg6 z|+&CXnJm9aq?`4itDAQg%Q0k7?yU@h4_$@)XG&QY{yqIG|lH`QsK-%vl_n`V{oz1!KLR?&y^ zyn7<=%;dj2Q*t<-$#?Eyp7fNE>^atroi?ef_9j|S@!Vd5n8zwTl_@1xB*cwym{L$fBRzKlZ&Yob4ES-C0Fv2t~)+JWy( z0q5_hew6YK|1o(r_kD^7{O(Yc<$;4y79(ZI>PhM@t{3nPpO2#~Wrw3If1~XZzV%ne ztqb2vrtZKPgmEnE*YBx!@J|nMTn5fB<9H(9idwx$Rj6zE*K)>q1IMSiSG0PjnkwIB zY~RkDYP~mmvh~Z%De6+Lt%A1q%A8~M&Yo+HVg8>0b|y3SSK-kYWlmCkG8b4+zysWl ztZ-}21hsiqg8HhXVeCLJW%mAE_|F3?8K>ecX39j$MoRwY@s<}TUr-+WA|9SH-g1fK zLCl3h38lnQ(ip$vU&ddTjYf0+2;8(#D^$5jr%Q^2ap^ z>K`aV%O+B9qddTP*VFbbzAN99Z(U=|=Fz z*cr&Pnk?L~q#1H;JFd6qejsvfhZ#Q{#xEAx^*PG(lyKzQ3iy7>?dOXOP%V;u?cjuASq$C5Bwl$r<6VL*T1R;2FYl7FsKj z<0j@TvTg$=`a-|cau%sYIjL$1c=ECL=@IYoY}xI~2#GgZEA|n1>9JX?Ygsd_-L@(t zM!}mK;H~eH^@MM=d)+*uhIO+Z`MP!q`y}sBM$Dp(_wG3Bt-B{%yWRmV?3rbK>CLCC zKi-)>z$xLh*@nG1Q7yfvc!2OZuXNe1&f?vRxE4VB zk~@nB=yGOSFVnx7JbO0K;K)TjFJjzFUNAe(fp3C?`*NnK*T9p~sPq93aIX})v7L6s z{O23cj;Nf8R==#-*5>r@UF7kh{KuuN`RcZ8{vV#O^Z{rBd}1^Dp1^vT!g|$J#)|S7 z=O1RzQ+sE}s}JhDbH{Kmn}08R&f8JiYOtdlc>fmdDw)rAJU@Zs`d?!iUb`cpT5h@xHYb;afZL>;U;TC4nM*>qE4Y z^=cGt=TcsxyhafoRpbkiAB&Ts)%W6usvq}?Ru6{_RnPYtt(GT^R^N(vNZph8kotZ2 zD77|WlsY@&_v)g=->YrHGSpYX#;QL?Jfa4~XQ=7%W7V${A5kO2ZE8${P5m%zt@>@) zYIv%(>iPK9>VjUmY7l(II^6m3KR-@s44Xd71 zcf(6uT{Thta{hbj#Dxb{FRsr7&WFHL+ZP;DU+TO?6};KC@O|}3uE|&^$tTrs;pOk7 z?V8Lf*3FrMN3+$xEj+9~&9(lSv#h`8zCY{p0A#>YbbSZliG_}wg)W>0SAIM;!g48N zkYye8<3u*{uCs|I>?ijFD z0?*O+$aGCkUVnTMdWJccic=#jRklHvUSB+J312qa;v;bP@nB1j!-Fl`zMO7(cljhs zyHkrSA+|Y|`M~nm(8U3?d5k{#iTndBU#0H}95>?|>p4G{IZNF~yIN?(k6dq0`?=^y zh9aw$92;r*CL_vnKi4K6A89$svwsvhmuGe&6W^7Us2)Hj_!1d;R91qu9qqz^omq>$ zbMN7}dRgR`uIxU`S2|bo#>5Xonf&UX6P2}HShj;vn^M3SSa5k1_EnFAf zR41PAOhAh%W07w7ZA)B1ejj!zArl|H>JM=Qs{!Y);Xx9c|9{O&^fQxj&_f zKFWA^lfsYpqkUvfinSB% z0~!C1c($I>n(LzPc@X}j`?8UizjFQ-_|*)aa8Ax-H4}IZ`y$#hf^{|g^Kq5|OP{d# zXR{V$Kc!{>OQrCKcd}kwa(X+a@vVKp-vx&X{%Qo_8A{{mgtvL`G{(3dQ=&9J01=Kt=BSBtmEk4 z0{Sod!Uur!w(wI2c=jaE#&hjE{;3P^`zFN8A+k+7-amZ#49hy+mCm~!`ErV71v0&Z zIXnmMe}oLt3H{c)yt9O7Px21o-fgM=FC%<^X;==%&?R#n`U`q`83N~p3C6cYoE`snCRcerPI($C?kl2 zle>iL#T+l$(J*$x?~4bNLj%MXBKzm{@OwJ!7^Svm4!u_Z$9}4U4Wra#aFoC&m}y@E z{f@$Za%-pcs_u&z%Q@Ci{pT^3B^TFj z0Ip5o+V80sQ+K1?8Okf%FQN!9Z|3^HP|JH#x%MT`g>e1=WgzF@Q>6c56JEqWDIX8D zgiHRDZ_dRj!Yv7QCCtHMxH`$3ky}Mx;{7)BlJA#z^j9x~Y$TZc4<`Mp^6DI6CzKpZzi~X?q^rwD=B7F;|#89Mviw_UA zY@rw_w@{L}wvqA)$2An`i>L3>U+H%^IBKMbd@TJp(@uB|`G*Xyi{5b}*E)bFLUUf? zd@^-!&gFfgU)sR=Q`8$d7agL!_XWP&HXuL@FB5O48r|D0j ztseoiE3)TX9pFF`I%VCF7)wQVvNejjJkZOri8}M>qn5HI-i~e5B}X2$ya%nGdX#qH zvk%w8nAZe~=s#o)7MqfRIvt(2@apSX%dVjdtvej;5W3%)_4jua;hQ%B10r`fa4z~K zk-d!2`f%{cf_`&8c=5!Gv(!t-SHGjKgZ_ywDw^Y|t7oaT-HQigvS#n2+=d)(cyYE` z3*N?J-|^wtANkyfY`!WpMeU7_dKo&XZ&(8^p)YwgXR`Ha@VpIc#3!r`>ya-$%baGt zif$#coH+eQ6D@`#i59T~W^%lVax3RK#}-=lQ#`Vz{Ikcd7s~PD^sgIj=TmRwdMB#TV=31~7M3xUu}$TfM=3I{Ri@$r(&sI-k+C*1<~c7WstV;6$|lNw zN)%;0_wC%D%5eonXrDiFRT+Hr9%yGSH1s}b#~f(>c>4c6-#CswG!VT~3v93#fJ39w zGS?Rz>jj;O{CtGPK=}ZkV$&BREML%8#!C7h#g;oiznMjG?`ZbD)YeJ)(yrVPcW5IW^(~6CD7RO5| zLD<%$zZpTwSaAI)xR2e)>u41CuGw>;3qBl+y*CYBH=Q+aeda>zC#<&_$Xx%5jl(}D zPJI{s_T8+RqoDB%a;B>NvYu8iA0J`qbYz63#K+rFf~}`J$D59hunal!xMdss*$>EB zhp9VfJ*7UDHBX(4d?R+)%d8DL+K8SupYkE)3^ej<=B|XiRMV)}@?U4cC$YnhLwD4b zHqEH}qC;8^FMA)yPTG98X0jT>T!vBdIWG;2c5H^<6WLbyzP+^nD|LV5*L{?{)sxk4 z+6-~*hjyF?@1nUcdh$z@T-Ko{IUi2D4C;@mr}CY{d}G^-lhs#w<}TWKbI%7oS0v}6 z)B1q=R?eTIXtqu2D-@x1rF>iHn9#3t)Iukvz4S4gBD{{!z5N`|=Xg9NkFt#7q&$hf z%8&XK;rxq^*sO;Z|Vw9PI^uKcF7A zYJsY!T@ZEo8gIuro)_3n=h}LT!0>6{|5lC#m*1x@rwDEeO*ph>ftt#>;QrgI7if60 zoM%4Zyqf;Vx6e~VSM_I#H}LWiMezPdXy3QssL&dr0fOs-`=ZAZoc}xT7P{~wv_NQ5 z73X?%^`gsPPq~HiKE(t~MN_{5%$%p5MtKk(unbwbEp$Ne|6cHaC$!*cXh1Cg`U8Ev z44pVB{{{`H?EVP)DfUqHdKjJ6L+G-`%|M5x>9Q`i>U6F89vyltJ$fvI_-8zCM0cg= z;A4E!R|@}9iGM~FzPUzpLw8}X4bl13jiv4e9zIG5MZeYTPZQOilt(BFD1Uf)qMAne zKkU7GT$NS!`2RfTa5-?e-vtGZS2${EX-SRa0nPNF4~b4qml;7c5#)GJydY3y%E1b= zY{0@UmYk%EsmaXrN$oO~im6T0G-aTc7YKdg{$52tDUKFra)wkQ+Ct~rsjs;PkTVYa4lZ<_cS zunqPzDU*_miVmBx=}rgy01N9!(*gf}Z^jx-N@&Q3)3u==&d@SHyjxrF;Y@7^>vh)4 zox=pj&*y)X{EuBB|E7N<|KsHU1^ItT{wIEv|5WO)Q17YKKh<4-U0b8A51{K-cLn#) z)!S2Nf9$NKzFx%b2aE+~0)44(xx2noxo2>rJHJM3W+i`>yJ8c)EFFp^JD#&_9Zq_C zL2J?~UM^ZEm0&l|c-_Fat9;CLB(B)G8BBX(<&I-Byx?p}DEAfR4^;f^oFBJm!Hb`k zX$)n020Jki54KRIXRzBBex&M^DZLd-fl7H2Stk&_Cw`h`Q!I)tF=S7MhYlh$iP-SV z-HA^L?FLyUi~&MEoo@SJ-%)Mor!#D=`;KX0pWba-yKkCy?WZ$sukOpyLI(X%Zm~@? zn2;07?nl`NB0q_PK6lEG$dlZybPMjO+^MjTdKmGG`E;(W=cfy8k2f6GdNxegQa+t$ z8~N!XTYbY9+Q^0(+8v+HxBdRpdu*RHe5w7u;cji&rweSwpDwn2*Kk5BZkVaX462#1 zTHh zy5zJ5I&FkbHPC4{cr4IpIxqxycwd$#w0ed7gjR=e3$4!MzA~-e>Y|m<$Ks|{zMEEa zyU}VOej{)%_t32&OWOc+(XAm{dmZSaTf;Q%2+&2hh8(RE_$l2+yXj_uZqtCiz!=Ic zw41@VJMBh$$=#K5f7QRv=MC`rarnHUp;3#W+^@sudieZ$Lz9+5xsSl-PvG;BhNIdY zl)Do?e+QpC8;)tqDECkK{Opg)^6%5}@qG)m4g2Og%Oqv1-?vD6ecwE1nWSu=?7K%h zvTwe#Oj5S*_AS;r_bqUiNy_Famxqqiu;~{Xao7AD7oE@}-P%K6csLgxioJuh2iaqg zb|7s+&;L5wTSUWLZ9DC4c*8vHBih@o4fC~&w710#3$zI2Jxk;r`&g0pH+5I$Nq2dY ze1^DXDFmKAybm3YOun)YJ&t@H+J`QuEuY^vllELQp^saa{IpLH-Iz+*J-Tto!@Dvj z0rP=J0O<=nx-kd+(=zbC=#$j~Cq2H^yXo;`{a|v_L&_`VoZ>ELpu4L zzZ|*8_WhB?=!S(hKm2}=?3nQ{MrP6pTZODFB;5Nzq1OMv67A*#OSR<(mTA2X%+>r3 zG-n3j8Bfwu6#an0xZyKOIjKEr1EY=+JE`-_V3cUA2>^qJ8$GJ8yUO5VWHO4uvimXW<$fC(CjAk zX+Pv~Q^O*yAN1{o-we^M$mZJ(_h>gk?|A$YzR$Mxghn~t^s$cm_on`$V|2)${43N^ z`F>hgKkNK{jHJNPEn&r5w52rhY%&_B3t(P1^k(M`qfN)9#lY$+q>Q-HQ&M23>R9<@xEH zKxjD|dP#ZYKb!Y)70N4b$r!ksRUgV4178(6HPJp(W3uCW6FwUG_CoG+EP9*5zdmx; z$dV7UY-9K@vv}ErC#j^l7m#q%htq6AheXEIsUJ3JseG?EPM5J3=jDZeD(5|vL6!;L z&`8D*cK}}C>ra~;AhdS#VhlRqZrc3JeXZIQ`lChkLC->yrnW}gCiIsNym{=%blcc{ zXSH4Uy$0k3W2|;#!$tb8C5*KSwYzAyBl$0)t=~b|mCE{aIz{Bg z0PmL2PFk2-$(yXgN8z9PS+325ju1YYKAUArMK}2HpZZyzP4tN`|Jk4A+e!~C*J9*< z@O#caG2*jq+sMzR*?#|7jxFG`xwhiZrrQR8HqWMgHs6-}*#g@z+VSsbyDMm~gV5rZ?t{;=?dHHe2)P2pDtl+QN(y+g)RE?Vp{@!!;qPt z{I4eO`>8|nz6)BveM>Yy=;4k2v+nyw8@q3*W^P!j^+)IB@B0?o^Jq-NGVNyQRx^A!9KtgU=a|zW3G1Nj(OT$JLYReI~HiSZkVer-Y`#l z{K@%R{gVr{V@9R!Bi8pW0FVH;cdy#e^a69P>NxyzTk#=jpeC>uBWD@wE@_YtZYgTCa zHN{#*O|Di~GfVsRYb&&b*NU~~9l6?jJ7#HC)*kbL3ZM=+G9ZsL5&4>--)t?pUxD^M zxLSaKC$hD{fb|LRJpsNa!1u%~?Fjff!DrZ>t0iy$zxe*&rr-PUqXm8hz>mT3$fk~c5J^#y91e625bOc2Yx+ZsdhVj^Bb^CE9BeU zf4R1v@8|uCv>kj?kdIGZ%hPV$p3nOAEbZcxxyagV?V~4)wT{;cG?7t}Rgqbdz1xw| zLS%J4GPeWS6M4JpwIy9L7yMeGQ|^wjF20BLacj*If=h zYiWH8v=QUu$?GN6V+2XP%g*f(tuW;gH_-cma49=mdnH$(9QrJPrZ)}DAq>x%cWe*4g2P6?}G0n z;K660eF?r~+L*K}>re0ruH+x#%cZ@t7wg9N340HJhacau|Ih|6mTy?D{cb}M^jb{) zevps#lxqi&f_%gv8##RmXMf>3$`TDMrEYfuA3eE5O99`-C$aGY-yP_tW#}jm{XP1~ zBX`#!6Vb>Mc|lEnHFf*Y?!Wj^x-;W z>}6p1h8fzy{)O84{!1v^LT%WFyTLVA8?s@hb`AP;=#J^=+(p`g9W$Kxa<<*A-GaVN z+cs0nB>i?kaCrgOv4^s_|01mrJh%6qu0{2&nefa(S+ltbeLn`hKbn1{H1?5H=ROj; z|AQ{w@7y=iv2UcZZ>0ODeWMYKGwzbH2K`GKAbq87GD03$ zZX1fN)J*;#1u`F4VOxNGKm_NSZUe-gY6t#ei@#@Gwyi&Y>tt_|?=jr6Z~5?J**1xH z9QO&_2l>9k_Z;810Uzwg4)fJfzYz9_8nMS7&DxaowP$Yp(~s6uI=IuN^G&~l&GfPU zl-Wb+T@5&&>w{j!@!HS{MU-7H_LsgdcG4Nl&1z`K* zSy~0*9{_%ee`VXukh;h5I}Th}7FPEm-<8!_+6>_M%#x8~_+Gdzur3n+VL%peJcsib zPJiFJDdMiiPWum>VVUexr;x`KaQiC(mB*|7>-ytAM#2`9j7%i#c(q^M-MGuduNZqI zr=OwjS#eJ-8JQ*S^+9!S;XaO?(s90noMkmuHin1R9p~SU-{-((pp^VK0-XsjXpIke z)$QiL5$Nko6Ij{!fWEF2oEw31{H30s0!{bn>UQDxR2Tl>%H#K`b$9jRJQn`0Is{cp z{?$M&(1<;{W6>uE8s=rCNFFQo!E9GtBtVcbz*|EL;s4Y%-Ov#u|DwoU1~M!v(o>{;X3 zIz4fl^yBKjt{GjoiGA8H9}@iaoZ|z>s9huPV=wpkV(dhEZqypFEikdqdweSUU_D>f zKA?Qr#Iq1~biuBXL$JMTEta^%Vc*#Vz7XsPzqE6<8^06S4y5&bMQi0u#EG6;v{Ton z)y*Z1LYW@KHqjp%l~FD^ml6{H68@Bj{pG*(dS1&UuloRn{DeRE60a}ze1GA*%jo!L zwAS?0x-{ZD<*4UY@V}ykCT!y_8*o%(%RwGeKcD#LwLZk(gIj?%p7IM`UMtN|Hj~HZ zxvXdQkEe}Q%3QspkL+2y_Gr)C__lM6?_{4h3dSiFnaRq^OeIjKnE=_RmT|A_Pxq!h z4xv7>M?DstGl6x$b|A`;rCksF7FYs!?!H?WpQvpIJ_0TRF$sy)5lW#^6 zG*CDB&e6MRaQp%NoVOqFWe%e{M5hjO)56a=Ur?DVsLU07TUS!PzW_UdcAzIv1o)7@ zFCgXZA!Px20qJ+!z38AstzoE4WEwDuq z=L2|k9qt9TC7hF$?>&SR+CGkn)Y@Yrv`ev}+MTf>+H=De*hJn(m^i!7+*@SOfDCfy z%)Cb4&60jVmuQ)g7@%sYfX}ern(weaTF9`zl+C2g2Oa^o0lH!Rkf~QRX8{oT!c7Jj9ku9=Y77!CGgg9y=k6Mn zdj)m1o#B>)oqE567tn#{=@S~ccT4pt$$b8H-tX?CRQ`Ql&^q}x;jhEreV0no~^I(_5o=>ChjcG_$3)jGUff(Qq{RjPA&mpMuqA@>^f!S5MI z=lTRCsI^gFa|bl3geJWAn+Bayx!32-&7yMz-_M0z4vufTkO57}SKi`2&fQVR7|YAu z-_5^eotOHQK1ZFPN3*Ze&OJu!ENa{J&A!~*CF_a4C7G*rN{V5VQkkn$+An0J)?W5a zbKVOn`F3}2RxBwAGt_xa+%?y+>`&Z3q;e0Dj)-V3HMjF zf%|N<63bho$(06putyhdSHUGb(W}vW`*-7k!B2P)?c~8z+!1x$*HYOC@0%#cQScrE zM;ZG3Duc4Fgf-Si?i*9Rd25NUw_6Uc?~=D34jo}XxaBS32*V{;1zx(I^*5$tE@}lj`P{CRu0M@RFeEFhP~I;DhK6`cWbRBW$GsO z{;(eqx{YVAR%G@YXkal=N6P#ybQle7j_M80w^nYaep%?h-42EJ;*y0Ir7hA%UUk;R zrF$>?j_#%df9&U^J$Kj2J#{MbH#PBxdw2)X4yKm;;0~8|@uiZX9#=E`xRZ8V^Rl(Q zd+Zv?Jg736{Rg>gX>?hlW-aB;@HM0A(#lMl*xSpypX`gYDAakXSJAmd>L_uOdMOVp zUns$;fohQMi`0&B+@I^jrTX(8h+(g(=hH!^`<3raWr;ynlk$q(#VB~V|Brj?mCB@9 zNlso)RSeGe*hQ9?-gasIW$w~TR7x^EeCiyHe4*2&jvig2(pPlO30l`YAT_!10ZX0e zn_Pcgz1+h$D@a$L8>_aT>~nK+*2<8&SvTPRwXPnWv+gqb1$?eE`Fb694ePkKPLHnf zLg#p+dwl3Wd~5xCrna}yhx-jlt2Yiys~^{qbvWFRRv!_NR{zPGicH^-w0fV2wE7{c zztt-ytzO?Vt-dzkp-f$3T76jGwEEkgyFXJ+N~;eYlve-fixru3RD<;<+OXeMTjs}3 ze{TM5gI<~+IlXRvb1-)n^A6v5eT1<^=WE=e^Dz!q4A!f3e%25j3j?WZ!q2Dy)`rvv z!$Z;@4sT6;D7;h&G;U&_IY$XHrYRxDt9cG;I?qZ>=FUIfM6h0%^iX)&EoI?zbUxNE zZ+Rg61nyP5>GvpaE`OvLjbAGPMn5&s`hqUVx?dM!y*hh!_-ZxOIzQVU{&M!3@au86 zsH$5K(xg!L-b%X*A^LwkdB_lyU_r;|_G^n1f!oUtanYAol*%jfhQ2r3yN1^F8@+K$v$0<=(y)J^hdRQxzAZx^oRpGfxoOR|5d-%#3 z72)Byo6dJm34m9d;i0!7#%_R5LGU{ee)m8Il6cEBs>m?e2;cqS``0JbgxDCW5?9~eX%j7>~avfnW2JpX1my%0ZU4<^?RJ5gj zvzH!s$mD#&HyiXRNrb%+pii+QYn#i&9WptYuoo0B(n?&)UZGE!CGowyTxpefV{L#J zej(rxKX8-~zfAsPCZ{XCjJ2!W;T7(1#hY?_yTWxnjkN}ESNZ_)lk|j_xxxo3ain*L zSGdC!AJY3c)3>~un!Gu{C#BZllQIywsi1AkU92uVJ}$gvuDC{Bfbr{KOMC4qw||BB z8zyg|t-hf6g45T9Qw^X@zV0%KpOlI4GFN!*D*h{cQ+9tU_n~t?b5FJX+uO$0CMarq z+ti!TOJmSaqZtRK(Vyv@dh00T|I1TCP7W}Vt@VqdzExH~U*u0KuR z@0kN!p6Z$dT+Vo-)}Y8(T5%+N=G%H7`dswy7UIi%j=lKGJo;usKk1j%_H@;kqgC{xA|;`ycODkt-QJ#h@|Z|hb*ZR=CE z!{$}Co%?Y%+4`5&+kDG*+NMXCGW09A*?JRq1`s;l67U!NOl7ZLrIc;G>OTIxR=#FS z^D@mzj4%bOD_^*b4|{?<0)8?(l++WfAZ)5}roU*F@9T#L(CDsMYOk`n^FZe6o)rJKif~cD$K> zRcJe*HMQff&}e(_p_L!;{pj9dl^5yv(mu}qeXe18yd^O!UbiZ>Bb9U~|5g*r+vN@XnH zFe#7o-{KDA>x?U3U1ewicSVfuXsh&^h((M{QL1nhscCa*;boU_Tp7z%Km7(rEHrmnRhQmenywQW_y`$zp__trm~l= zI>!HVz)fYZ*hFSh%j&KwLw>xXOmp7GU*v{#PPq}8d6s`8@=}W2nE7%KyK#icKW-fF z3@iF+@v52=-%Q&K!Ioqeyzr(ziOE^?_vI|UFa5qy^4fOKC4z(9y!Y1fr8v9 zhS~8O$yX&G9p_kvgze5qMAqi>eLF<#Fz4F52pf$ZWZI`QY}p~ZG88X^reG7B8uC_# zimkNlOC&ywKei|aWyzBU?%bB~acsX&s>XE|9u}EP{kqdBbAHrM^u;L3yd*DoM7CS6 zJVrUkeLmM2w}~@;BA-7O*Di72$aTgoJ^9OVOC)YhmNTxY`IqA^lDNgcb;jNO1+tDAttyLHkwN1SZ zopLL>bV-neMLF@T zk}%v7cFrAEid)ja`r>U`(=d&$G)=US_(!7mHHd!6}3IM=U+yZy4oAGi;E zeMz4w{=_Q<1m8lpI~(`C#F2TvUHtf$H*$5#y_vtAa%p{57-@hUa7`z!%+>o5x8$47 z^#;YBnH6QJoJN{#`Z~eU@k;0VNacY{!846?+01dp|04c^E1UR&I~CjpWp!o=?ri+0 zk$yV=dg2zV$~uGcNM^R+Abm->tLX3Uyxq-R-mGbuhck!T-20=d z4}FwLfAdieLQivefPwX@aK{Dap6~YlF!o#cnx!S#|8}`^xB+`?MX_|K-=uaZyRzdY zABFZV>wj`~!qfks?DHr3vY)KC-4}3hr}oex!NJ_}Y}>Kd&KcTMJCZw6J4RR<&dEB8 z%>88!EV3tZ_W0!!=NkJcPT6XENNr!q-RdqLvsS`5<_qX7ZmH)iWJLJA2M`_!U3()Z zN@`ZT_zTa4w?p9L9%$EHR$_>kNIZ|9#OqHy$y;PVc=#rCodJ%SeB~WfS-Z`I-V!e9 zWUM54dV|Xu-|a7D5gEJLEwfVAQr6g`4^yDe&Qb;FpCEWr^N1Exl zU2iox=n`SRpT>pf)?_ZHlp_XYfD{j6hID!Rb42U=gy z!P_&J=jhNCdd44K=nrqkA3ogI9&qqa-FWw1H{RXoVMW9=HcZmp&9g$ajV2# zCUJ2Kt-g@B(9olo7D^ay2|MBrlQtyjZWBDxR-L$9vSSvy!)s4obKLwBx=R|-LDGgj zGUMdE;BlvscANptoqQJD)G5c!)9VB`c?o|6*KfPIh4+F>@{=-&j?*FQW@KI5QvMgE z{IR4LyyPeGXOg#5*2NzXyo=m8oblXve@8r#b-^Y6p1KHaT>7Uh(?q$QvX7tO7kQgO zS!WVoxDn#^*Cd3btM@CYp^zvyM5QM~Xc-sLC!5WgNCo)LE%^~<52((djQ zf1wfao&Mw_{=ad@mpmV0z172$3i$^|j?jyAuJ#$>xPCMAZkDzw>zuB(`CcY%lej`J zX`653cD2p1wH-za^Shg9e`9EeqiZkENu!Pa#kog+dCouYW5|BRMcNo|WDb-43DKYE zQS%LoYadByCG~f$orbe^8fm`0&tI$lhJH)BxZ<#s%M~7Jj%zJiyPG#gCcoUdzL2k! zPxcL(cneGRmL}qVF{p>Vp1xua;nG(h)AukRCr%^zd`zFQx%b~=zoG4ZOPY)H8|~k9 z4$snAIy~$4jXI^nvvz-Zj%)3{Q!j5i{MhcdW0?=*6<=szfEIq}B7by|vG!YMKjGRl z`kZqN(obZED^p%DSPGGvvgdG+R3Q@s)Yky(4DCtK_qhJXa-W$D6>zn=Q_^D*pj)oXbTg zf}<%p&w2hS&^xU|PuN*#cVe%l;Czs!qqWLX@KwB}LuV+6?+Zv-Qj=!Kmn7xH-%A~H zMof>No{}B^c1l+Ki4oJ{GjGU=f68Aekg{(KQVZ4@=Ej#9?v8&B*u?)?!@T$th6VAH z{TIYf@}C#K@`k(PpG}$`?|s99_yOjb@gIz}6dcl03*JeZ8^0-OUVK^7{P+_|3*tYZ zPH!j8h_4(m6Tg}9KIVDx18$fb9|9dKzjtx|6pJHF|7-{dEm~3D6Qs?@k zxHkbObUkTj(#E1`OL5NqjW20aH`10Qj^K8M#h5=NowTzieJ}EpzCXsi>P+YQW9ST* zziY4QIQ|3Cf7#CT(uM_hjQMw@KgODr;GOZ4yk$%y`S$9{SH{<_bW;EBbnH&Q?(`BG zz3>umwCHsQn~h4x&#j%y{;KFLX}c?fWGw2UX(Mg5iS{kDyu`oI>l?i&1zYN$ zrYvKe<#nz79iyJIw|0WG4^buwclGIlFUlZ|{F!Q+l}TyWc8 z$R6O1P2_*uf6-5>wUUp_-(}BQ)(U-PK0`i&?4<4@GXxnCY#6Wg86!gpEY79G|^J%qPXp2<$WGLHeztxj5oJIW}7 z;a9*^@wW^Yv<31?AM5T5-_A&47 zz~-T(^jFC<#T0o@d6=*d3<9c@T8Y1* zTYNc(+DsmDe@L?F&8im0*ep&L)&yGS<+6S%`#__3-%a+y->3hvn)X&%dnuKcj?sr# zDPs4bw#;&_S0*?_etvqd!q?E~6rl4~GW6bF8E<{zJEw&EvYzth?o4;s>7L35_xtS{ z`CK4&)RT6Nl(&5;5Bnks4tayGMIU6Yqa1Hwe}Jv}lnI3eg~dITp|%tyv^>S%Y@}@Y zJ(SSmCjGp7DT~BE4V~l;zr(C==NIWGPvJYqTM3=Ja-%kHC3gU>+@vj7`J8q(d)eB( zfg$NZYKUFVBDQiL{BKy_UJMMqS82VKweTgtZ&~AB2Ha8hGH(pLY+JDMSuGP73alEt z-BvO7HSRioR$D!Ghi%Q+dRzI}owf(Z{>f$^`$yYDWB+W6%=XnD10w%Es!r_knm8Mn zpbKtk=8dOB?3K^xjb{08K_7RHROV^@_Qr}|P^2;EED9uGM-shA}UNuXhFaC zt4<+56C*4mYE6FTH9eGh>Eu7C-~QN&;YyguMKd;qHuw=xII!?*eIPi39Q#REaJh4v zKXxNl(>~s$Hs>j7O_j*RYQ~gC{0AdzvnjJj-fG?Qc1l0UtQCG$h(2@Fs6qMfBX^&x zf%z5PW>@MW62|4tHpG6MeMh?G34t+CSce}b} z(Q!&Y*!*CkGD+m|Ykja;+Qn42Jl;Zk$p_yZefSD;89Hs*+OGpc(}Q^vROIrUKD0|NGygZs<(-qSudPQSSd0`Iv~D*tn0( zZrUF!?O)_m-pH*$j!)^YqD>pq&**jO^N>v|vO1MB%gMd{%zJ1P(r!oT0$R9W!=a~q z@{VvT`%BmKI~bb@KT>r@|0cbfo~cvKQ*}Z4iL^iQv#PrEQ950|goW~MxrB!m4k?s7 zk39I^(akVpDu3n><6XpzWtc5eoh(sbQAjYOZs)*b#?aZf?N8X0OmTPPkA@F@-+QOvFKBy zGG$_6OW{k{i@d>JZryLz+;K+j5%!hI-~3XM?_@_0<=Ru|%Ma8*qZK_7*jovG1D$JC zm20G(HmJeI1XXQ0K%Ah`(yBA)*bh|0-cB{7rFH1TRq}@Ms5GVZO>FwMqI-uxpUHef zgDmI5IQvtnR#x527~vMi2$P(B{3b0_7rM6&T^xcgp2Aq*H;e;@g5y@k0k>g~k-732 z#sSZ0A;5{UXSBkx+iXi16D(ycu#9m*M2?R(#i#UFVqbCwTZv|L)fqJ;{S0ON9D0^u zH(Q5}#Xav9`q_|NmwliKI@iM|#z9?lOYgg@kiD{bv!PG^Z|rweKpPu$DTh8=)F5LX z^w|sE3ZPCk8Xu(o6@D0_nfAuMfX*z2R+uf?4a3(|6%4J2P3HYyp92oGEWL7-b;#d{pTIM<~69g(ACf^2pO5EjJWPW%J+ua zWBz{c2k!_hOfIDCm4g{~togokn;*J4nQ=#gnw*#A9(Rb&l`>w&{<*E2{ja-N6zo6E=3X(^PF17w z-=%EnBbBh^-(fe#+HrnSbR70_=6vk9c-J`HnvxKf=WR7wivlN)dnzU_x4%*-{fNgV zw+&m}%WnJRPQ4d4nf|N|8(Gr}U~MmuHHjeRyur0n-to>d>mAYbkMCm7VmNqRrQ!Bz zg(Gl_4V28szoWjxm5Q*Vebi*^os1{-G3g1&)JfKtPU@r6WACqty^HgJDb(``<;k#< z?2AeJTebAY!e!XoP1VP>z~d>6_j&3b<(MvYA8lDutdDLnU=Qr4MjDfg5++0YNy%zY ze?QeP-Jtd|n(;T_Zw0V(n8f&Kl9lje)j!=|Ss7-gFP1Que-Ed>&`R#eDAvccJdM1a zWW6t0jWg!nkzDvGbUMiz(^qzEbnzQ^dvf95@N14sP0r<n0`4KS%NQ zHz|7SeE|E~OL*sCiPZN(Mh0@AArBLgiwVd_I%~XE)@{9`bIx z1m=ESI0&d492jRG9uPOE-@8=~)!&R|jmHI`sO=aZ7S{qSx~qA8?)F z^XKhsY2zosH?Xj|5Pnu>sm3^CzxS%R7uKB5Tk(eFKcpYOWY*3E)vqgk=V(2$>`Pe< zl-ZB6`%?!avK&x5ioJ~{?6mYj@Edy$k!>@O4m1wHe#`V;l^^fXU&mUrAAI@>8_O2t zpqaQQv2jLzLi4HPR4FfgMG|qp!uGTU8E?iO+)mw^MQ(^Iyzk^3y1Z{65a7=l6s7g+ zfw=FlscIgetMvze%QK^EPx3ao)R8*0oQx(f(&Ve$5eX>Br`T4vBq;5l9Y+htCl{OH*Bq)>z1&t$3nYJg8|^VLfGD%MatcuRc)al+|aWDWEWoD(V3 zS=txp-P2Z;e@|N@>#e``R@QxUwWa+#=Um^lzMF!ds-zy0b<#teFL8zSU>zXRaSdT| zw#T&=+{X_OZ9qRzhRbO?=4Dvu1j#7hyKF%uaK$cXm}UoZ*MO4sU3G}`Qhf5 z^tB-(Tf+N+qH_#(;W2HX1wG$xL>8KH*iFf0#4g zB>Y6jdw9fLX`Sqkx^P4~>TnAWvvn>W*5Y=_PmCk&M`2Npr*XU1Z$%~|9Z%wR$xoEy zdj5BkH~m5D2JA#OlK<;`P2BUqdVcgb@TQqMur@So9B0f7b!qLwmxv{^+E@#3mo>R^ zaL^yNX024(WZmdO#xKjtkJk-dYpATz(x>UnuhE7|@)oyc10gQFl_h!Cw{7nKQB@Lp z$g}R(wcht5``~}Zl?xuhr>d!kzQ-1ea(3Y}Tmhd;52|K=+518+L8Doe{%N#cVnOp7FC4To;RGHO)y(jenj;WzaYai@9{gktZ0s{i<>EEnan;2-& zR?}~6VSay#JIzX07uVGh&(t%~mIjor9#vPtT9J&mr>e#l)>@~SDF<@z9ETezM?U2+ zQjXEYk#eN@D8sI_pYCdNE_!h1ca^ja(TD8g9gagEJ}Np1cr0&eTOr`tFN%idE`1_v zw=s@z+%CE5;n)KGTw$^n8{-HdOl+}TG8yeK;C9JXq|>(U59l3{s|CG<<~OvhT;a&I@^d-&qYyAPhDahOMVm<>G(VD?sfSq zZcklo{69`z?&zvZ%70sz-Q1DbUCuo^(77(+=0z0ckEZ<6juz5CNPe$%l|$CFG@S3EXC+@p{vX>{?#@idjirXHh`~td$>~j()s;+^5v8*>h)-se2MOfb`+DR zONOMsig7IKs$UOBg!^B)eB#h6UGZG~*gV{#{}gyB{aOKT;jKsZW_87P$>t2)9=W}Y z?Tsr>mrVbjFqb}*xY3R~aJzUNLTTha$M6@z8;RflKEX;FZ=?!++cdUOXv6@=l(JVOOSrm z&))ok&fUlIPygLapX~If|8J)MbpA6}X{OJ2{xg1jlzu_nakCb+$=I-`e2FXLrC9l= zpNf$$xO&N#v09XT>62v~)~?dka4kHTUd!VlLtP59QsQIFe& zH`c+V)Ggbx&)L(V;TGCSdr@W$N5926#*5$cX|*z58>L3Hh<_7zbo`u+gU9Y8P4rT? z^PfN0Pej7AD0n9FnGIkZx2^=eQ7-MLKl_f4R`9o-QD$&`y40dcdnoV z|G7`{=t03N^0^h^(T=BaJ9QFmQpU7T;+DDnV&o?mx6DJN@7fM9wrQ=x zf0dh$yDx|gyX-TrWSb#lp3XOgr{2s#e3*;)GAA)GH}PY>>0f&++zWlAuWe)w@HYGx z9?RJBiu#B-fJ+~#&ar%#-tp)l_}`_2WWGWhj7EQ*WFD~tebj*r#Ll{>O~%K+;u|Ob zPMsvWq9-~BH?kAM7h83w&Jmj$;mhl|U9u7GxYhkHvT?pEp5O>~yoy_F3^qDtBi!*) zSGe#n!tny`A7n1v@jPx14=r6`5;xqju`8|cFv76`x2Ful`4<^%q}*aB^r$;-wv(s5 z9F@3Tc*7m$ABFXFl;d{UK}g+V9V>CW@J2Wi++nVHN)JbzJ8h|3M@Hk8d6bMp!e?Cv z{jkB8FTCj~UvzeY8ria$awOq4IpxC&zsJM(aq$0Uj;ki|@v==+) zn{Tp)p|mG4=3;%j&CI_(K$+6{riu)yr2S_*ajU#h-jR0Lh#s&q&-bhy%G~o#?k%t~ zze^(Q26V$+CZ)0i{lq-6R(QSW^WxfEy}=&UR4le8&?DM$g!90R$3N&Km5(pSy;RaH~fvDf$TEXMIV@qY-5bo3%j@OkX*df;~PEYh*HTltoaW)qT@ej#HlJo>@@_j~Mr#ZDi(ck#&V=8=qzghw*>7ryxy zCb!+^508F9cMFdU@MvHck6e0O^tRN?8VXGb>jjT)g-0h}a`ESr)5W#29@jdi?>+eO0|2WPt6VKRQD z|Hpj^9Vl`j`cwLi-{L3Z7W)47Qg~L+8JI-$jPPUdV<1wpWe%Ysk>#gCU{T-8EI|9rqlb(2@44m3v#d1(#_w4pRsCC}?q9uWuNvPm-hm!?|D@h;FKd3~<5lJTbX9%d+`jPe zY+&yGqQeu_fb@!vgwPiwy(d=`87FTIRl?qARpy=12ki|w65wc6m9;~4mO~Y<)Km@W zeW)ss{eYL%fbu|HpnXWk!o!@8cI;=p>U8OZ@(MMu+;}Mc{fXeiKETm(b^6{qa8~p? zRCN`3C9BlcJD`03XMqm8YTWw*YXr05PXYX?fp+=OQFt*M{uIC;Yh;ko<1hS}-BEbB z03KOGgS-5NAG14_A1;7T*1(W1e;1w=hYR47)$a#9!vC-J107cQAv~H5fAaYXZ&*V% z3V(z*6aE@H$=ak$65iCbhYZb!AG6`dEclV{3{<7AO`WmUPf%>lM z_iik5ls;bdbJllOclpyb9`XldP04?s<<(@Mh5LpksD69dkC-QPW)JM(8e}klbt9`9 zxOWw6npU8R@$^)9FZEj8Zdp5sukgr7oeXNAgEBiro}hEO$kNx8U+M|ogUQrG%542i znbg951Z$Lz@wAVx^nujTzg*gq$iLJ_+Mu*6BXtTupGuwBH}ID>Ro>z6kors8l6sD( zZqmj)?MuoQ;I3bQ)Qx&JP`~jV!IK6P?-cp1fwu6>zJ@vlcr_lH!+!&He_0LQ8*;h$ za0u-tSQlI#>Jv~7kM{=a0?I4s2kMB=-30b#+Hy9ucmrBksjs}5&;lK-)H&DN;7D!{ z4mC=<*84l_=1)ENM<4k6`%{x-@Zros_r5saS}L?({XV+LK9IU5w@*Es zx1@OO#G)%&C{h!XA8vpO5 zuQO~oRJUO3xw>O}{;mAioLzJ1)GPmWZjJiMzm>k=)3t|AJ^9SJz`zgA?N=KAEgTa& zN)HtnpF0h&}h{#<7a`y^t<(xh&y^i)0ayjep88yuR;Z#TUA;Pad6l|{;Ut3*A8#+h3 z3FZ9$RcTitkGG&#!qP)%KL*;5$mr?L$JUdowXruR<>3ncH=!)vRhEgEQR>7+4qJoJ8k>JWQ!snzb! zy1bzyga359k@koF-fN%@nu#}ve3HSJPkXc$ZLXGl1`d6pdII01p_{8`5hpp-Y&Vcr zDIM?BC!M2ZPO4`<;l-T9o4JV(<6mFqqz3K@^l_e1enU}Ocl7?S>ewSn?OlvtH~eKZ za|>V2z3Esxs;PR9Ib|Dr`^~)bF5|>Yr2CHhwLZIURi^A;HY@j6$vsN4?|uSK=ki;_ zzxYk$D|;TF>kKWW#2Zz_`#P-Gi>QZxd$N_eCSzPWcN@^ZI`@aM5eOIk zFMHEsA95-+(A7Nh8{zLq7{?(9O%&{bXgjwy;d~OhNU4C*##pO2uzijY$ z;+Z-3;c~m;^vCTfPkp!Y?2z(Mj}G9^@H;DSxpU38p8B}v4!snw=pp3kVL7{C`0j;sB3I*H-G9yy+kEZ~y`e?qXZC6CR(K?} z)+IM`9xB58+)c{5ji)+gU+-bDr{OGz+3@I?_9nZfmUC8|yNTv3Rk*`2YpL8{HYv&U zZtNHOBy*+6TubM$3mM~(@tcwLvB>;Q$o?4Sc%#`9cFn_oY5pd2^q5D>56QX#HZD~= zQ~!8w95z91UVlF)^!XMU`1tLPb3L$WYo_i0gL~YTjZUd-en6>}Jz=pONt!i$gwWy* zU35zcb9$M7zk%$Uum|~`^w8Mcn8RI(;Dv9Fy1Rnboo5c#-7oia(OQEVV~=GVw25$8 zrxH1r{pe)IUHQxM+Sqr=9LTs_#>4rXf0)f!a;X}NoHIvYoFVODYJt+a3VD`xGmCM} z245xgE5?PjdOss$E^GOKzsDl?M%D_1(_Y}0=c1>BqkiU=kHcSdOc6Mm7wGC&j+V1fuJtd8b1&}R z;mX0RFl_(9SEy6!&u6IZ508;}vL=vVmUtHjs_k~CpX~R!&gWeit+rpfO>Lj_3~ zJt05psP#vYb95!%wXxzlzVR5sH{Ngr*at|hV^8^yV z?$?3UXCfo*65fu#=8p3|;o|3Uw=7P$M*OZC92%ECI4tfx@SKDmv+z5audAoA9z1!q z+MdjO^W?Q^`|42EV*04k#?(FOUR*87=Pt6}D3HOhDk;a2?Cs-gb#_#cJcq+Jd2XFg{>`RaqQ=!O@9 zm0)we8fu=X3pAV1oy`CI^MM!Pr&X1(Kyv~Aw-klg=NEy&cN z`;=oBP(GFWPtT}oI{IjDqOK-3)k`^;NxD$(8?>luIrkCob-wBCbxZkCZ0M80;e~$) zWjw0t{7qh&{A~0uY zP<6oYpz6~DQrkc0uFz8*Qy-}S^w@WvPDpJ((9ntEDKkdMKb4 zg;fVA0njz9dNAuG6{>2lT*7#d^w{Rv5AIIb*??SZ#jg&(bGXmoehNN4gzjyFvwam|-w=`CDQSr zw|{wsx1szcZ@=<7Z)15lW7X#TwE8J((BA8r%PwU;FM7m_`ba-|f_BedO?$^s*8OOg zjkHO@(=-a4lT+KT6!)COr7hETCnYRW=B<)DnUK$u(0>^8XFi@e4O`0Zz$N#fV(fTO z{->H;_n{^uuQB+`J>-70YnAT{Hot16mzOqN@hNbeq<#ss$7X1kj9eIiWcrI_wTAN*hP;i)&w1)3?M&>s%-F1k^f_F0 zMjviA!e81wd@{7m&d=Xj(a%x6x?}3$3g|jJf8b6P{I#56YKe2Dm-jF7h{xEV)oQA( z9!Fd&ar20qk35-(|1S46%Xv!r7w(c7Pk%Fxe&=TTpRx2qH!+SG!@2s=+%M&NW8<{1 z^?O-2SQMnpJA0$reun+-J(M~8F8#23unleUg@+d{?Z=@#<36*TGtNj*)+rsG!_MAF zyI}8V#~u1%o_G>R;>tMeCgSa4OyG&P@b)Xki!|Rzyu)IXMcOwg$7pCz9lP>&xAzyP+!B)KC?`nCP@oZLj2iRygNiSaUhUUi=r(TE_9= z%FCG-g4OnO0~2bkt;K7nLQ7fOwK8TMdwTidF)M4TzBr(?KZxFW=xov9+4?~He7%o7 z3*PTx-Mv%|v=31I?X*LCpb~6~C;WY8At zgYBoH)pjLu{H6Vhw|zKphWx&y&$*Afo(fmnPYtMv{gVFb4E^wNz1n`7zVsCRkMvI$ z>67La>8tlM&a8XtSCyCaA?CT%_gP(ty`K_d-#KgE&QLWbUAHV@atpS|*E}5)S5)+Z ze+x1@X+>z9xVwMDj4|m`b-cwJ8xxoL+`V^%E)R{ftk_!pYxI%Azfx#ft1RDHovGVe z&E-~yEjnzs(dn66OJXJ7|EJ>U6s}Z`@efnNjJKn6=Tp|i;vbjs8vT#!aToO{j+DE5 zIiHFC+UuuWCvw$_ZQMEJ^OQcdeF$TtNdW8Jdj~U?c@g@4j*fWol?P)_Et{C$fSvgP z{MP6L{X6k*c;%tktBYT(K2sDQcV>xY?U|yT)mM#rvHI#gQ+Ez!FQk#U4Yc(`e1-N6 zudIy~nx1*3Bv#Ie2rdsE)(p~vir4td`f^>FvNQ01A^%|V5BV4KXPvgSdl}YHh9>sS z=%36o&iG@C@AZx7?H2Ur8{D;in!e{0y7P?mKi8*XuN-3UJv9B&t;l98a{Y!9)RHyy z&P(Uk%YR_Y(IM%V8lC>ZE%y@d82{L%xAY!*>!mN9|3NLguDSEldE(bNd8u$T5M&`5t*#@J#L&=Q{7em{Qwfj;yrcT=yHYg60P_&>?o$O7C0`M(92hkm(7 zA8ucaj+tx!e8M%qiqSZW-8x|9Gq!V^H);dox7tpWJ*%DL-qgvCjl45+-gao$^H&|- z^}J2f-Tma0U&m-O`Oe|X8du!96=88Fmh0mVacAi1qOiF0%FHL%#>Z$=zL|dKZpX4lmEA@HV zc9yz@@UD;V%ICG`E0w_g)0E1;=#dX~SSG#Dpt$MO<=97|cFf@>~S3!gSUG*PK{jqcDs(YmlI7C+=IE)lk+_@a?~gJb2(c-DY7$eTMJ6fZm1*|xOMe=Svg?CFG+16zRoz*Y3U^T4_5+O$i# z`XD>|EcVm1_XH)hrIEgM*R`WBW$9z=C!k%!qcyRg>%&?Cl|Xyr(6md9j8~fJ6J7qH zEe1bdyY#nfD0kz~(U6hMT9B`7cLka)mbpH0)j1QV?up9b+*n9K%sH$x5`&1PnHDo3vkOV>qLsBRZ zK#&$Y1A~ylLIQU8)%!k7q6xu5#EBsZfgnSH8brC5>h1txNCFXpM3Pn;6hSnKB8vBR z_tVUzk|ID52n9&q?>be55wRO>eY>CcK7Z`bK6UC0`|Q2;+H3vx8jvySf|2`XV_Vee z^HuR8?Uwn5q<>-eN3u;!`kOzO66z56Gs{7Uz7$ ztw*kMc5ho+dO2@-CiztAzEa$Y$VPUGa}4$@r{^qpj-r-a1U2|T(2sT9HPuhv|vc>d=-&Mj&zio#RB4lKQR7GIeGirc6SwL72XJ;cMlhTIi{d{wuRwljXt8PX?4 z`*q}`ug4)P^-|ndkkyXiQ+Ii{!u=7Yb;Z0RPjR2Ws<_XsR3ygrOM2v{#n5_5XM^MT zmx?=`vABSIbOe5W)Ft^+!p-dhQxb=>4x5mpB)*fOv|V&Ujy}3&UC;WVoE8&SIK%u0?NlW+miQ}` zcIHZ55q;7l#Vz0If1lZYwwu@avgK85TV3$2*&4QF`=&KcJ)bfpKlz6_Q3*Rx6 zTE24<-yz?$o+95hiMGpktf$DgOrpK{ArpeudA}hpFn{yJ(EQDU4LPyplUVIetx~y} zcGb^Lao3=GoS}W9rzUCx!Dj;O>`~dz&`#tz`)gUwyF<7(IPV4H8BLJsg{cqyPD0yEJI7x^$2$?O+o~#XYiJ#mC zV~G7Qc!B?O)2mi=DT+F%54JxAU5ov9GWX2TYVCW`^W5xdH4*#lXh19Lu_?y~eU5xJ zunqn(yVmyXvTH5*{vQ2(F6UNJ|BkwV{?LOX{xvT=`k_2yv<}&-gyW&Q$9}&%ww=`v z`NGL{lVZA9*HLD1-&6elz4!iy@-{hENf+;&X6>)!Z+wbs;vHMWVI@4|VZm!Z`81#8GvxZZYj zO7Wm$_;-s>fNyR#YcwwL%O!s8*bAEQnoRVG|5m^`ayB|5bE2c0W~D55cCK>h;Zc#I zhoGP6D^^BDYTBC;bb5;$ohmACkuh1POmEuupHahgdK0$Yjb9E?sxpTuRr%0k5weQV zh|q<^yYbP6(2LN=521?^=;A1Hl8+{Y9){=Y9Vf+(5DZWW47MMJCWLo)?mb+k2}K`h zza6^R+k!3@dFdkaHt1p>W7v`|ZXQ>mi-+{VQZ^A6{4M2rT~)xkvvKzVE|XiGm>(n!WG4 z_$GUI$nqDUQI9-9T*P0ppMp+&l(kUyZ`#Rk^Z>DkmEYm~b|Ul0+Nr?*oXGUC;1bUF zQ`}QL`M~V&vc{f&|Niniow4lvZt)}5mnFf!>c*tF&n1s6ZFo4veP(A$bt7_r4~=54 z8;5?ub>$q(eaZOhX_H1>+22*L%s^Kf$7j*iMJ8)j|9jwyOFfqV9=IYn)C=>J0a+9a zMcym#T&7h9G;B#LJ6?&Vre|l&=)-hu0oid|)KFd7&1aZ#DjcM;0F* zd2DgY$SvUK=wbNQ?*r@6mjBke}EZ#s_605V6pL0zkAdM-$*Vqc>1HH}hj0Hs^6jTmmcVO=fD{55WSDm3;rTHpzxQotUGo5CvkV0H3nB_)}7GnsRu`~?!+2B z>y8Foy$=3z9DVBoeKp{G?((jjOPphHoS;6>SV*jfEcO^W2Zq{U`_px^W1xB z=RkCazfz8)qt$}J#}V`6Smwz=zd(Gerhb)LcuZxkDf;casOTBF z0nx?iwO`~$MNg(4!@b33wMV&)wI_4^pku8(Yfm!!-tv7%Saagp`{~ZUz!#L-Ii-%T=0r!&V9j}~ zW0j-!+PH&XDa>`&oZ77~M}0;9s*PHI%hRkm5qS%Zto_qxY zPLVZdwRg?=$!H=L9i6!$^dNK~G|`e4nw4*8As)K%(ZeIiA~(|nxfs8p37#o5aquRZ znBiS_TGE8XQoaDTBs4K^%E>`}8P}$;Z)oD?F%_CP1Wi=twt+4JqGfEyN`f0;!`a%zfC^N8=dO9~cx)Pdr-CE_C z0p={@?;HE4$+vY-+s5(+=OXi7HnR3luiW-()K}UzsvPnK^w75jP1L~)FThvN?10a_ z{$T0ZV)3gFx4W2Y=ioWAHe5WO;+{UmR`ukRX;qJC1MISwC;NNI?1f3WmEcE}j!v{G zl_Gd}=#VN$C+e`_RgUrO4-zA%Fo|{!rgWxVVFh`KvhO(=T29(F51dn(-g!=iW75_I zQ3Xm$;;`HbM;dhRH>cRKkdnr;_VPOooIOro;aJP@Ue2AATFx;qqECb55}rYpU(fIw-rRmp6GP0i39IFHG5pC;JtOaj%5;?B^iHk!KlQC zd@!+Dl0}xMz606*ad@u@K6{om@Ck4L*$Wl9?JRu#{LJZ9DS<)QDVWN%$ep^(C#r@h zIt%;DCcnG_<2t34X=v^`$9lefJ>R;XZyge`&M}|w7($z+ebTRK-ftoLI=Q$9+nax~mkg^k^~gY5Ypd;ytc3*|6!$x`+KnyJgd{jn`? zydyuh>P|mR)dboh@2TTkP3UH{HC*JL4|Ika3-8M2JyUtdQl4+Wv&xapbEopmBA%69 z;faAnAQn~slKuRaeP2(%%X3@yeGmG6Bz0YhPpPlwMUCV5-vhvR7S>t{JN}eXH*iy?tL#pPc>DI#s zeIjG`_g&W-;y_x>l%&TF_`uXrN77>3CI|t%Op~#Q%*A{EYvbDikKG-=(^bM zmlY#(6w#hZ)GshLTNs-_#%3GivWs#&n7wplLKz>KAE`k>4)zHStPNBgtC0bb6YM*Q zW4eZz3=?~&T{*^>#(UY&QZKE!?yy~wBc z{*t!N(CW~8b#~DQRlOG;er(E-LH$`HR>(S2u-1ltX??`2Th1qj*a>vw1-puSKEJEj zR*fuCi7fHIssBX%JnPRu^qk7vi0H1YIo0SuB7;1b7ZKf^-@oFy8~MFHrknK?#drU} zyfTOH8I`$jI6U`ma(M22!_kd2nSA<2(ora;`J6>F$JXdeASusIe(-)PXg$0&AE`pH87q zU!Y!^6BxaWV_Dy^`H!9t&hSxAaJ20A3zcB3)zg0GeV%#s zA@&Ty&pdN!>))SCLp}UV`r#*=M{Sr#$v@LP;<-O`9tk#cyu~~k!amwWu$l$*pJ%SPBM=+>{{1z1WCWq(VHykntW&UlL%X{apvkhTvcQek%8E2V0lld)kXCueQm`BAi zwYKB`qr!!+=4CNm`C3K;;vx~sXeVauq}k*rZ4>WnqnJV$WuWkXY{(pfJ9nd6Uh zd?&ToW%=%1<3$9qT4;V0UG#n|lN+)@$0==!qpw9Ejz2W9Ob2pOPpxs~2Vux2(bjWRX@0 z8=*6#-=oo+7PXExX3bW@*w?ZsRmumQC@#+xIOW@;hN+O4aRrORV~w@UpjWJP-eW@AG`$@&>;TdVL>? zbZuSoEm!!KqtM;4U@$Q3g#Xt-a4qP~z+SM}^#2?ChTzC{`cfUYHjJB$?}OM&bdKA% zN_@-NzjHspeZTuE=U`@74Dtza)7Voj)pfA{hI`*Y#~D8RDfK(*7-zlTh;%bHdf2a< z68$`5BjX}t+(2Fy=@Nx!$5-S4u*DTyUciH7z3bMk>;-(Pl_ zu}zr$%x%5zfcJgVTD(tx)B7^{{qn5-m!X5gSY3oGj(1(65A^K+UXcEy547YYk$w)M zA70jWKxP-a>j?8qj_;-)K6d&1HX_U)s>kAM6JdT|Jr=+32=jX!M{}*vq~x3u`vCGs z;V;pSJ(UP^KXP7-SO0I%|B`bm!rVlThY6gMYss-^{+j*w->JDV#7`x{-1~I%O6=*& zIutZ551(`Svp4W9jKZ%mbM~Ce_{X?5|Ka*r!`FESr4Q@BEW)Q}aa5khn0=)B`dA~r zRQP2P7b(^p`0+EZ*JzEFbo>#gwpGH$;s3O>t&&lO57Y}eeyV?B1Abil!RN~JjZ3VW zAp99?}Q$%}?IwUr(QWOdoiB z@jbsk;J0Voq#q;9GFAoZHEpe)pA? zK^K&1hmFegGsSc7Jw|M{uV|m(*H!TFI_8!W9w~7}!MGa};S;OBL?(k5_7HuBG7?;U zsm5e!(237&?3m3tOU>kh?mtCCf5W$!E7gt2s?JZI+4e#6+>F)!no(tW9-G@^93S^r zMz!*5Jxbo|M=ZE*;7|8aGB4#Wm$jo|jL5V4vaQ2X$~S?3Jb8agIqhhyoTn7_YdvyW zTT0Zg(nmc*{cFmxuUUW1adpSe)p4$3R4IJw`lv#hvf5|+5VDD;MBJa{yueK#p z8H+b`w3U)(f<|M+Px-u+kqxM>|aylu_ozI%GVX}h~awe2slZ&|O?{&8IM z_M6<#H_eQF)7tjFi?+MVj#z)oxo124(dLewWqXMK97Eo=z0sk>_B)P$JLE0fpCkRJ zH4VFB>v!J;TYIiQH0*2JUpP05lirYGK#^q3WNEjs@+-(ayx5mA_)ARS`eEnB zAB^ML!nvcD_;Y+*=U20y^Y7t9G3;8-!AWy7meeW=_Rp<|`|r189_L$ezE#nG69$Wu|_;G{@MsZf7n09e4 z2^k?o8*17Q55}i8Jw&UdH()y&gug%_^FC;1-zxOX!ZjC>JJ^@MOn(=bypqucIqYQf zs*GdU!L$dfka%Rf|FrhW6UbmE2W)w=AGr&o$*=V^c;@UKMPsXWqZ6n4sGb-YJ# zZUcMz_@k9gL^qz4bzx9Cd}Ro_(`2v*pFPC9n6=j8m}2XY5_A?y0XmiFRr9#6nCm8G zZ67odUG*sIs>IGE4&m5(z7v_CMr{8_z$1ls_Q>ftCNalkcI7TMW+79JpnpbWJyrFc z^I83>Xh&fx@^C-ee7TwYo7f>;pv~=+txqcO$b9sDEjq26KCFXpy6H3V9hAK&$+0cx z)HuG#zw__`G}Fi8E2`qA$jDZ{`*EY*-W!?v6Uu1HdD<*?t+FR5&tWgDP~!i}K2woK z?@HnOM0Q>?b81yGa=fB9*|mD3UHVw|m-=!~JbGptcI^t~IGEH4U07K`X5%2)Tbhji z`6&A52K3JL=$(I|exG{poc7V{DSNOpeLj!ln0D5a{NBs&4IKMyQr0J|3EE3pziUm; zy_Cu5m5-uVu0yAM51n!WRNahf3Zje^Qj@aq|@(bW*28r(Xix?s*4#{y|180ETatd z9aEvlG)f&~TF>~&c-AqlzA=?^u^OXGbfSrjsl_{{;{*$5Os6rXHpW!O@*L$!ij1XT zvLai^bBMiAh;Jt26KWUx7#Y(ErU3i9Gas)K-+`u>rruG-=+BpXH5e(5M8NZES340jB=c!Ned+(1N&-J%4p6eOU zb(z}+t@n;+o+j8OZ642f;y+e1nX&9nSwCm3V}sBa7?Rk zd7pFFau*nz8PC027e+16`I+F?jolc_$=>nYEI5CxV9WT8z~9a_fi+|E^clK@#PF_T zzL>BNI;{z^i+!WSST_WAw0B~^+lkHTPWB5@`i{C%uO6E?W>1{sWZEu#D{cPBEAtua zM)>3K0A+xgVxpjTyJOM6Coonbs|{dmg|7BB%z>YUsQgWA-pI96)=6jz`AO{G9>=Cq z?BCdjX}k>^xL|DHMqvXNj1AnV0_Kj`iq%qn0vos>u`~19z*(_@3-a2)Su3!MTN|j9 zi+;DSwNfeHWr40w)0Z+|>gh-MrVr5N?8w#uVqXETO~u|#zHc729{aaj*uDj0`!?za z*uDi}zh|9*?b|woQZ72$2yp#$qron6!#>_AvVsZyunsXU3 zpUSx#zi0MT`T9HX_1obAzWFaUjOVe<_3?qz(3$XnSWSTIhx389-^&Nq7=Ic*AbkDL zH}QdmUOw>X|Dk-~Y70Iv`Fr@l4;#|}bsS`^u4g=dJYSFc-tkQRiTL{e)bW%#-bHye zLwK+7*c0!sep1%$EcmzR!BdgzY%_DKhz(WP8$UR3g2H9^cQ4IZM_eJJx|g^)X}jZN zexG4a@#DL;J6>cj@eX*@8BIG=1;?_F*uZ}73-64p>ZEOF3d2q&mi4Cd+j)uau!oX_ zzgR|Y`{*M%6^=O8tPJcF2D7)Hk-Oayl3wnJV+{-A{CG+n{x%=`l{>6lBYrqx{C5P} zIy11s5zIc4+#`F*4-BtxH1dA&3EM`U%s$lFio&RI)FE7VfOF;eh{^e0mC1?0wCiL3 zmwsrbz02@F4%qf0Ic5~s9a%|LVoO)dp1qU4kvV`o6NbF{r10uAWK{)T?L?*#`6dyW z#)(W*j~pTUm*bGPWlvxDSuyLJ$TE|>vW?{MFd(xcqb~o%h|e{9nBtq<3AsjO8rkO; z>`M3|xQ)689ETn5VQkApu32jgv>%^ot4bD`UT;w48e$@-a?K>whktnbTuhunCoV1xCsT^o8nv1^0vEBIS2{4Iw4uW0taW?*+& zJ4YY=81^qOvmaTDjPn@v6Z}5MacxXz?7}-+Ymr?;%xi*bkzGUHUDNZixjb*~2HW!m ztF0%IVg2xf`jq!=UYW!-3A=50R z98~-*r;tUj=Dutc*+t}*8M-zmkzHobdEGG#nPoQe^=$SRXXkBq%$WMRYVYzG<15!b zx@}<;dSm1BTsOfhtBUWf_;QNxh~Y}!^3mjD6x~LAJzVHbM%KR))?d+AMpot}E`?6Z zDKF%-$DW~m3wws`*fVTzY0qH7p26hXM;E&C*)xoU=0w*PdHDnO`waL_d-nS(*q>qbFBVykN;!_@Ip9QYj ztM8SSsq87W#771x5=)8rC(OZ?_{i_L?kM{f1Tk1~J93A}7(RLOR&u0Z1h>*Bt>7pv z^+{>FPpAAoeex*R`1Hv*eSrNR(J2qXYh|yxrB3;Nu1BZbK>g3sDFq|=u{!0&7P91e z?RRy`+rOMU3A6`+H;9i|fF{8HqGs2? zbGa`X@pCnO!ut3kI;pI;=iV)f5`TNnTej?ptrETTPUN>U$Z>X_7l0hsfD9LeESC+I zF_-mn4Km!jBG2*e24p&EPXqGY8F0R6_-}n*jr$1xkwQmHk>5mq5MQh!WEOOK)fa0d zGTmV>W+lE@bJ=qfEWV}Bjrd}nByN-w+-ic(>x-pRT%EA#oY?nve6a#NzF4Mje6dzx z1APcP`dQd2TtN=(LmQ7H2OjeJV_iW8ypBKCd)dbaJ%k^Y53ekP2bIEuYN*8*hdhSS zi4;9$D0WO!sJmjzG>qfc)ISEV+@t&Zc;$Q9#e??v=MU0gZzq0L(q5t4E9`CW!@lf8 zWI*w&G9V)*qHiR`ZCCxO3?kz*-ujBgQ3m#`himi}{6S5w+(pK5oEM+aOpV?ovC2O{ z_S@(6s}j03Lk}+KLDoL;%{D+2_0WU~n$WW+D!H3dp@)eS!Mc1jL2Sx0Y#{7H8$W~= z7K#5AIHvg6`RGCXuY7)a_0U5mYrO$KteskeOXy}|-{Dt;F2qjpgx5df+kSaoTDZyo zN@yYT2hu_*G*IHDg%7EHbkLQt&w>ub*J?O*xBnl~f{ee!OG`p04)~?sah`o-*)M2- zJ{r-DGnvcqlfuPWnN?>fX8Iu!T|oSdM|9op^FucIXzoMR54pY94|%)eLwuFR|H|ss z3)0bx)2Ad!5cqSd+wvDuJ&i!*5IAt(t|(Sg|#i_Alle1!p9`X^p{ba4dlj8ao>udc{;DahDf^ z^DRN=nF>$6f$PCj1?MYbE;YbY1p@^Cv)tk3slGY1h-ZC!{(SbG`BN|0KXbIN^J zjBNKP^XHV8m(GWmiXZGG$|?MyYKh-^0)2XKi@kzBFn``)-t43PE4BEs9?CVsOO2`@ zYis7s9&82=aegoLkKv^!Z)30E1p4$z{Dp*<7HL9V(q7@E&ud!Ol)y)yQF-Y)hd(q| z3y$LKi z(1Q3p2p<(X5W4Wu!lfIu5b*3cv?{RZ}7K#cd9bBEBsXO z#gp(*;WrZ3P5A6bJ&lef=!>!s1fA7<%x{S)x1V}SXoNl65W&7ufW01m5tHl2?``<&FX!1Q_!uc*ke>Km+a05|6^<0ni@#9IcVI7I zYWZ9Cs7Lb*+3Pt1Pim?ANShbi#NUxzIe!s zH{M76>CcQeiq6{-Z#?A18?WTPdIN9#l`cZX8)waVL&X~(0&jc>yzwFM#%D6$a2$dj z-uL2-dvC%U%S2CtuPqXqhyDfQF?Q2C1m_tJe*1G`J3kiBxfLybKj!_zFvjnv!x&Xh zzZJ$f?`Ogo|5a#E*65#;1_gT&8WjE3hcOyML+p#NE&4g>PxPy+@RT1-hqU)>-n@)p zrRquaBbO6BTDbWgkss=4F~-lh}`9qcXZ&6KNzrkYyyY^&Qyu-|D}q z{3q`cULpGYHE@ST_y%1=b`~3bJ@x_pk)6iR{)1{u{rt)1mAhvB;xc+}VUaG%m5R-b znkN-~;FTlT<)SBuZP}#(*luw@cC=;W%33b8ATgS;gIDd8_uP49RE#7g3=X>(8Mww^xo}>8H$?s!2LNOf|+g^!f9c8{KZD?U5t3|g?V61$$vc&Hm zbpl&iKWt^4jN92{>`iF1&t5i!@mtiCyWC~M{ym7epS1g0@veK(Wy&_wcCl?s%vTBv zN2HXG!A@3eXCK5aR%~NeM7?aSWRI$eQrYn>Yny`Y*i(v)>|53q*uXx6?dyz=U979H zcU^(q>wk5Ow;gJI&$J62`*Hm*tnIOJZ5OVY_6O`&@4+5)0CuD^u>*DR``58g+pwGM zh28A5nXymV9N3OF4ZCc+`@So-_7AVLMn$i*Hnko+tsOS0?XgFV`(jle%*FA_NM>MasS?L*dk+h@c$88l{||$fo)^ou>FePPsLW-b`05Jdwtkfwg=0w z6CHNR)}Q)IY)EH>?Xax~+tG7I$GiBp{Rx(*3r*bSSzwN4a!c% zmyh@XM@KPM%*zB~FfDFQJGcnF&`j>A#JbrBdw@X*?WG6C*zdr;X9BtFKEeU znlR#Dhn1bj{!?r|dw2eHRp|Ng2esF84kl?sh_xMR>8;kDdmfncfH`TNb;*A2>!}SY zd#UTEQTw}ovMLxG&8=ShO^NrpUlWr4u_n-TCf5_^Q~YMuAb+)#y>6Df?haE{oP{rn zUcCqzv>tvXnC3NTEs^+j`nV5Q?Zn(uP;H-4YP=DN)1>V)QjIr~tPOU(n>6x@;FyCSY#!U= zLH_}P6rX%PFS2RJY7+QmG)AHLC( z_irYSbT(}|%m3o%AHrT~$UNo1JJ={?du^0DW0ORDuHYeyurH;gl@O1M;fu3m&`)>LMkj4E(Kh^9>}HLT*j>T)JZy`^rpe0rwZtW?CpODr z&aF)vapkmntanZ1Sa6fU&oqxUKjS|jfa2@7cf&Mlev}dPnY`c5`}N3jf-hUKf2e~` z3$}a*arzA1Opev`*~jQBXK16HJ|liujUHVlkrG53dgUtz*3f6{3#)cr|7f4R)1uFg zhkE)fSqX3*oz^^d1^!~P9!sA|d(JZdCC2O$zBQ4xG@a5?XZwJDYDSNdST;K~K`!Z^ zhIo5a5%ZyrWALuV`i;aPEMAP?evr%c@)G_Fa@D`QG-}yP{sXcp7D^(;ND;g!5uNbJ zdzxUuTI_*SfR?BUHp355W{;t(MKi##)R!fYq5P14Gb_vDUB^393AD`S$@yR`fO+ssI65hv- zR${H5!X{xO&v=4zK#d=}wI^|8ZJ+PjYD+>lnLz1{elnht!Epg4jpO;0B=+j!unEne z4xuEWt0?^LgH325wZusc?by!x0LNi5JcGI)=h|>Ci8h9FE`wUupd@T4GAJwLH+2$i zULohGXHX6hUv>rcXLGlzab`cCyVch1`M6+-H~T2xvrz0T_@+im7<|7krFF;iwoj3H zx)U3>ka};yR$|UpSZ{TmT(cKBXCY+*cI|@2BrIvJ487*D?RBa)m~Fi_n4ye8hZ{DS z4ag>I=s&T)oJ4&aHkdzq9Kv}m;t=M0;}8xZ4&h*L9KwCF_A!S=mXrD5N;EhO%#AzX zWepswx;V!oOLh`Eg!k3Jlf@>Jb;d4snR@1}*k#_rCi6$dBNUs=wcdDyA7GOy*tD7U ziOl0l)H{UdoThfthBDgH0~<~3NL0VkJH2+AzV&Yz>)+#?^ZmY`-$#G2jb^Z_lZicF zOZ&`Q?W@Zi6yC2^Z!EL|KR$DNJpUPJIPhbj%z!X~UtKa9f(cJq_+*cR< z?#J${UuvMb$Y2Kc+s$hYzMk8g>`3+B$g!FMp&mU#TUABe|?A}`*+;-LpE z^3d&K@tue-^HXB+e}xvrUe|}k55;f)PvGx@!#_hkjNkt(EPf+6{47fCoOO;%;ERXA zF5mCCU5(u(xVsN?zobN&?!%wyPhd+|a~B%N5ij!4wpCG&>HJNC#XkcMzwsx);%`L< z$Kd~-eHpFm_UXWb#owRnj+E*!c?19>{tkGP9*0 zI6S;U^p@8Gwf5nPzGfun$_(V{V0{zJ-G{*o9)C0bKKEPr`?`M!fA6D&S&rl`S94AX z_WtA#z}^LGCl8Y4d~Ts}G(LNRyT60pcPk9@DtfQNTJE#k{kE;7_6OnV({94k#Xiip zKPmfJx56=xag7g47hL_PwBNnx#nYpZPa}{`E4_I7M&!*0y?FZjoZHIppVNN#W<321 zFP?rW_mvxXy2J|-``u^eRH}ITA#A~g2OeU7=IP&5Ix4}_H+u2(4c~*Oi%#ytGKb@j zDE5(pW&W$%>;6^@n^Cf|5u^Cn{o7?n)YsqqhqI=DZW!bqm8cQ zlRAx!?vKXN!O&HETIP%%EM0UO;e&#Wt9UtjbsGAi;NpUb4+al^1T1_$IJlfkD=4<5 zY3AOWmUVhi%m38#S(^u?gDYy#EgE=FAkW{2?qax}c2MT12Ol?p!Fcd+3m9ECcsMpS zqqD)ov2Vt1OQ|+zO|81+e_3}_iC>C5U+fH3JC=pmZN+`E>P%#6b;FA(ZowjC9b1I1 z(N42ul~WgFSu!)L%7SmQ1>fX6jXrz)8tbgnMc2lbWhLG%d&p)m#QN*a+gCDva&P^t z?_NLk_t(Z6v%h^k{dG{{=3E8;Ziy{kLRahy#&Hzi?aw(T|EyVTn_uDB=l?D7DZZlb z$v0KjK2TYa7wn16)Byf=g71)afS;EgV*SwTqU^r&v6}WSIsZYJGB#Eh>6%9^*M7ux zs?6U4(-AyJ)_i^3$E$W~gIxDhi|?hZ|ND^lW5H_b#4i)9rY?SQ)M<_dzp0O38g-iW zF;B}r3;0eE=T3w7xZ)Rq{}79~!g@vI277!26CvpFQ|~C+|58 zo|E26YZt6XFdnVY8Q6}CZ^!=f$t*={*MaXm!ubW1;pFF#oRR7H!nnYDRDBn`M{?C| z$htOY>9_Emcr`!HH~7vv@SSyk8{f&Q8?-g6{yX@N#Ea|6S~;Hj0m^iaGbs6#v&4gw zyg|wwQ*3NQOah+V>x1(S?@z&3|CxdzhMX;R< zTqF372isZKQ{rx9(C!%&72DxIAGXsSOlJk>9|O}7oM#xn&w=Ya&u_tY4sh%bwzHKv zD>x6if^6NuZz{5m4-!nP+w&W2f`J|2Sn>!7*0hoN%X#aDtl~lC%-2+jUGPS8hag1h)IQy;$U z!?Ae)2U?dW2>xlG60RC!& zm9ax7w{j-6AF;Q8LoM<5T1y;m_6o$e`iI0z zxE-6hllY>Y$Xqk1*6WA1vxVK<2JGfUSD)$C)h~nJw!`kjKej~G)h{bXQ!F}p?biQ@ zx~#M}bw^ikuQQrvp{q-7hjy?3XB7Ios;fVDldgUTV=6YLGJdBS(?G^k#xI|7TuV6( zA5_PZu_hkVjq#NID)}vO0AxI0^N#0EpY1v0S;2V9IHoY3?^4THN_o99J*2am zKx`U`sjc;l=X=Ird)HY{RPAIupC>M=jAyNPJd3e`+{@S(P-?M>mzdforW_ko+rkF& zyW<(acm{aKGr&8Z0sq)|YX81H`AIF~Ic2RHxAZ7_;9*UeOWG{5;rkl@nlBm4|D-fw zGjaZJ7Ax$?$%{+igPwO}v*!FWo(4xb(54;xPp zt}65M9~)0e0jq@HYCH>mz<6F_Jm0%%Jgb)Zh9 z*8D!j@sF9Gdv0Sq_b{ICF`kEradfNkJj7W32jvjs`6c5ixmPYdRHE8seaUz>V+VL> z+sddf(I+Ex5f&Nanb>y8yp?h8k8PKX=Ss%%&`&U)f}45fC%D;d&d=klDZV-Sed8(l zV}0|p02}|mH%BEde8Ej)x`VM4J7tM=`d`#Co`)zWkzr&k1sjc^KE>}Ji;XV0jWJ!o zm=-Xm61S@5m%!GBeU1jT)osZyrWF zZup#IdwQ1GSxGzXNp!uV ztk+NQdsmXk&UBS(4JS@nE~D}{T`smGxl54qCFak5vpI<_t2 z%JChlH<>WR_k(zUv= ze|Va8sR6&AGsqi9y|QI-i+#lD$a&;58#S48EpnO#lhbTe-wmEPE_ZDR8TAaZ=Qggr zIi|~c?p=YLe27v>xmA9%U-O(Q?q5MJvqKcg1?tOnwt@GM>nw;|XVwRJ&kAyz?IyO1 z#Ep4Z;<|8ct4*t|@B7W$EHPx}kJgl5q@EBq9lM6rWKiUJTijF#3Ex#tS=Yx znZ)BcL%#}sdzSvxOv$`a~qNFKFO$nR<_ znfs`p;P-TD>C5$$n`7ko>^OWm;tG)E*U(3Pd|z+%8z)+iA>*$PnPk;T931vF=e5t@ zT--K)b1MD`S*6XDJx)%Kof4e2v6D5=i`Yet_5L6eA? zBRb1^ug+4dUu|t=Ty5=58Ae%)4zs51yv?;K{~x4ql=jV+6cmzedA9>{0nrz18KVk?nCADEdx0et@%VxQe9 z&*J;{{|kNpJib5w7T>>-?=R;2%e~*9tQcLL{@3-fM^APfVB!1!>wI(M*R%gX9(E1+ z*tO(k*O8ySRq2IMex=Rx{SRD#o{0%)PJm}cD6K3@<`DB=r)$dj56qf!xg@uPL-MdL;y?Y-*up5zId!efFKfwv zNpAP?)DIez6?$~MhvN^e`Zdqg^ZdHbhgMCHYoZmmHmAKKllXmgZ4~zsFr9w~OR2Y$ zYYAJFXX3A{T*N)@gNl0~_shMPW-IXV@Us5gBQ~4boVJcd*jBdDM38ecq*VNpGr6yX z|9cQuYcsO?PJ9(5&U86B+zpKNw7_WlOXOK8{iVV28u0+f@&7sYSe>;orJ1yA6z8z7 zJ0Lk{kB~=GLp+PCO|42@quQ5BeikQrppwXEdSM4SJ;~oG@lMfq3&){5>>|hWh@3D7 zeX><@d1|w=s_L{_%h2ay$Hf0{ZFCm8&dv2;y;jX%(M6+;p0sYkLtV*xQNVRsk}*HN5$joHfc_)=t=k;O(IrVVxY&@?dQCv;5jAiZ@y2X zw3(!6jpU{>#S`zfT&MIyhc$O+EbE}TemU#OE!Zl01?&9^@*npbz21S1ms#YH|Ddl# zhFpOR*{lRkNeo@QYC+h7s6@WAJAEPkRdrp~I%+%bjbg7hRQls?`a|wXtWfXCHlRm4 zcY-g>NUcr=qjct_xTB!cBj<_9MeVewxUYSZ;{N(ZI*mcGiYt8x+}x=ZXTb%t5SlD;&t&is~nqGxU$0DIohb$^s|i&A~Qct~kJ{n$u;-1N8ut2%+ z)Un8F_2jl~m>*qwf}&N)#2z0B&f^?M&Rz1tO^Mr&?|X;Rgy)M^sX2S6 zDQ+2~K;9>L-Im1fUzI_=;{dKbR+HlHz+7L-vm~~MLB_CeyVA`(!-~%hzRdOpKWuO} zDd7D9_A+>eTq8M28^A~F$lGh6pUJr%R%cP%BbeV)Lb?7v&U5|rAicG2u;ljD+OI-0 za_^ZMLup+P@)N^*>d575pe+rN3Nh)qpEjjS9}Q64i)oMKCQju4x`*Zc>+^1$J?#8}z?+t^eTrGaE^iY^mDE%wXlGv!Tu}4?$DIQZQzXij0 z@@|QzpC`8b^n;vt@=P);jm^x9aa`)&rWF3YH4%PviToJ-@V6bV3Afm1#f~wQhI?}d ze^dK%2QM~;tF&uO3|Dgp|C&6&3Cu%%PNbI>w>uKz_zfKzc%IO?>NlQK0^f@C@-2KJ zyO#XZu4%`-%Oj3C`GCe=gofSBd$HR;!d{2i?02DGk24ofvcK>cYt<3PME;lmEmrDXQV(YyY3YpH#d&w@(kJUkTv~Oe2Tlah#1+>k=U8xzsz2avFroh zpA4oopW4j2o&aXKIZy9+f!M5KyL=Yj^YI+LQ3Zl!q>hr zWy&2@8N`YgTv~j<1v4WKyGwFmeF3jwPb1^Z7WTEEDeQUs9a}iORQT}`=DvKd@E(^g z#ypC8DzvsVr=6OoYAL?nQ*U`d(^dL3VkSjE7){>W@c47>sQPBJ$XRGRetM>EmfaM zo=?V2Fmkz9#^mO);C<>?9B=jAu{g^-mht#!kA?5MPt%?y@QvH~_9a=KZ=WEvx+TS3 z$68#^TC9iHj?);j>lnvg$a!`46n9VRv-gCRjtA3mZX8lt|2p4&miaI)#eF|}o5U4v ze4KsE`)BfQO_crdnThH=h+{wDSB#6$hL0}ldp#g@BC+1gr_s}vkvp=Sah5z?<z-CBEGj>Sky};)%twj_$8`DT-MBrq?)snDeg@SD?sGsaON8PGvl? z2Qa@#{JpcYM_Gb3!A5)}EHCDI@>HKaPA)&%cNQKi_{U3mn>q{6Ii?pGFcO~=ga$j6MFphFfh-oY5rA_6uX$xz(i|3}3E6u|DU9&9~ zd>M?JG$zY3_F1S+4Tn?Qn|QwqdXv4_WOO32HOrTHdyIik9!l*;Uo$Q;9tQFh*S*a8 z!&r#DnsX&<$+P^|S?Q;c>nERePx6w@BZhQOXxIqGWun|cxsxKe+J5+plWWc*I~``9 zWgd(b!W1Lcnh{uFgqmSM=mGJ&A3+yc55d!X);Cn(#{)$9}Bj6_Xsb&2dU&?sHF8 zttIAwzai9qmE2-r?){JPOvx*@TXJ003h!@E9KXo2+3bbY(g*Klo*2{??2cILH)6Sz z@O^^oy+i#0^`rEK#2z@5+ZOwDQ?ws@kqJ3%qr0slQS8%xNqEwNy_@mpfS+#*J`Z9|DCM)jU=$0@KaQT<-# zx0N!cfxpm-vncf_hl1p3YLTEy0#77rGC*MaKl4Jc=w6PD`IQl;FxGTl2 zg)W39^sGZd7eWuTi8wCA=TY#JfOaIGHv8KLa7otK6Uso-4F58`==M zD1kn%LmLv)rHSWDZqrF#+Gt|#x^=C~{_3TTF4-pr=^01KZ|aNlQ|TRBp$)N(t|Tr+ zBJz>Y#d>hweb|J_xXSp-*m~$93Ct?V`cu+H*KfxHx+Pt7$zC_8tAGBWcT~F2y5##L z-)*EevS!~6x_I-p>Ee|ZbWx(!o0?eDg)a7a=|b||`uL6T=A*TvOPl_jQ7UrE_)_vV zy*{+G9@@M(*izcS96XZ@?-&5j$+T4&GN&PD5KE+8N}@jJEr<9)!7B?BImQR7FcjMD zLlMk4p);`qsKd}>61x#ElK(S0avwZZbh1z{UyY{@g|~_v;v{Z?=*>gGpLe6z>3P;r z>H_2#kAAh?;p|l5kQ|ebajuwBK&(`G=IF2r$9d7SDH8Kw66Ze~UaH1M7!gqF(D9xw z@N{{P#6r;Xo+6n)+&i2#EP=eGY5YGt>ldtLZSCXuFNu4GlZRFKe~DZ}JK1+?Ea94R zu9?t+cb`JulRiu-q7UKmwGXGbMHafqnklkHI(#?}IZt^0VsMB&c<*3piTz@R7hCg; zj^4y!5u3I~WZScIjE=Bbk5`>QEd9+== zLHbu;;gR!76#0hvQ3dddlFXh}>y;=~&cjbv<<~nk0XO74-}=(Pw+J5*zdAkh$v`nv zdQfCOOKdQ?rbrX$l0BfbNYDPP#0K;2&sMO$EEgWK5gC|u*tb91CpXL?d$gU<0mA}< z>_tkL>%7W8Qm*V`PxoPB)g=%MDokQXv9_G|@(|zNpTvEQ)dr~R%XywF`?!zJexmAG z_{UK80yna!`>dCTq|ny$tSv`%(PdYOS$iFft(NynoSWV3^}d&VY)~Y;Vs?voVZukM zIrka0@DW*K#Kv@BUZm>(B)sH{+{ozrsQd7LSN7~%=Ba#x`zkpvdrx0dA0h{RW$re| z9Yt;v$V>en`y25zLEmBAZZKm>-GI(*1b` zM=x?3h=0vF^uIIY)ow&yJkLJB31pi^eAj}^$C)2~g4x`dAMrQMkIu}Gp)KY|F?x`1 zek@{sl%NM8zcen&ytAsnJ3o*~@%My2k=cBDkjx304?_FCIU#f8`{u>kbsC4Pajw|ZAz+Z*#j zQj zSiZAIiaQd#?+935J@#5npHS}x4-C}Xhilr@i~vKccX557QaGhO7$>p2Gvz+;EWH7o zy@;CYWLCzs;yzVPK{j4A8S@iqF-mw&JwINd9p+o^3wE_tO)u#URohe~IY zzi!Y>Pkz0_*o5Yb-ZGyyGl!(j(%v?-_dD&Jm05L_c0NlxXG%L~wQOg5QD|7J7&^OWwXaJ6s_q1^dh1 z---Md-+L7&i;FAN2O8|*T~iXB4?k3z=trg{Os8n@y8K7?JD$L zi~Ok%9AVGSjvn(L$Oq8T!OITCovn$s7(xT=i{gw9*Tb6XZ01Vh*J%f{8S^F3WgRhu zMhfnVT;W9bNQVZoqg`IF7@d5OU zblA4V`2IiM@x7|nLVGb~D>!aRhZp$Wu8mSCG?)i13LQFKDel>fc zk*O--TeoVj(Myj<_$D6>E{cIBRXNNUXgJ(#=UL84snvBa zr&hziOo{CCB(&A{7_Yu=n!^@tAMsn#Vbxg^{_!aY_Sfh+>)9l}0Xh8NypYitVSIAB+pWX7A7ap6k z?JMZ-!abMIJDE2}xmO{F-DBKqxJI5#CENw(Y4+vHj8)pX0?2O*R-3)6n=)2^?WuzS zv_IgZXI?k6ccdp?iA8eS5w9ehe3^^Lm-#sPGRbujhOKN3I>3RY`T8Y+n!qK*>nXdR zSS9!uh1uh3R!t>erj2}=!6&i&@Woi!}N&iI-w0w}8IuhpVQL zGt+b}?`6ra%DxwK#b6R%nm{f&m4`vwv6?n64f1NHK0m|FI3yHoeKH|00iACAL2~q( z3^}dZ^vfA;5}a~T1XxI@GJTLvZ_us>i3Mw3OT;Wd^$c~`d0FBMj}VbJ+j{r@vZyho*mpH?W^UPPcq)Z zyX5{%UAXJ3;uQB~2XQ9w9bODJQV)+4d^lYbV-eX__?=+s5{u&qxbovUkq+Ce>?)CE z8}ZvXLz^40CpK~I3+zXg8zSu@a~>uK-Wl#qiYR=jL0Pt{NE76e7|e6w6Q8gaCFQ2P zEc(+CFh`kRg2k+bKOUK#Vo~O3#su@cM>_o_%8xdQ&J;`RX4xMemN~g9U(uL9+ttV3 zWq7D#LYEJtmLn6-=fA<3U8@AIi`7PuLrpPjk<)k2e4^?Mv?||pTi-*Umg9Hzx4x%b z`_KO#rzN$z{^8VWat@jj5|vQaj%*`ybqecI;(8_2$=Z_+5AxvRMNzX^GfsC$&-YiR zZ{oV-$JkS5tYs}q*u5yqG+7ya%Qfet=E^@_Z;srjjdo@ElT(oO$HaOic=+S~$^o0s zgzb`lS$ZnDH;8{M{Nxr8=>8Evmda8z;`Cm zCI!8u5zOE`dQ_)*$>kZHmByrb*xrH3$D+SLZ)K~ob3QjSsY+riAJ&GtOvm2Jj8rtre3q1ej|!ER{E$K2^YruXd9G`*=h^C}ebIlRYp~Nu)U*=Y15+S-l_fdF z;9-7V9BiGVB#z%;R|bve8v@u%9oGd6O{X>2>HN&#Rbwp)%IFtzHWP2zpyqGc&)(Y7 zft%IbEiZ5%7yeq*ovaFdh5`P`|Kx1H@Cl?*|6lyNI8^34vSM##U{1_Xe+|@Ni z=|?P~gDw5^&>2;~ybI`PKEJ$tj%D8UYi?fImi;7;zfFOf^GW<|h^K)Kp57{cHk~QH zc-B4WXR%$CbwF(SJ$^P3u6dyzKbvf@nj)~9czBBV*}U|EI;$euN%?6Htj2-{UZ}0i2INZ&7Nq>l+&BZyi5gOds z(c@=x5&Nv2&~ok8SE4R@{cNhW22)g?$Iqs6+c$nTPlLs6^x|<68)ZcsrQfTqmFXI2 z%9Cfet(iSGGr3*OC*TbiMh$^B2ScN2&}wSw^=W%bju4m437r^3uTmoH332;YHEWHo zJ2{>Tt;}VQPmKYGymn+>>J{;)9LKTH?2&nCs$F)GM&mj*@BS;t>#&)w!(WnOrwBdn z3{s}AY2)$XJOJ(dFyE1H=*{D25OKo~Na#&)W}&ywptr*B^#k(wb@{MkpC6FW+le3G zH}Vy>EH{D6Key-mIiAA`yG7(9ZH!Hk=H419h-2f;|i z4`>EH22V2|gx+4amZ-VIo`$xB-e!RRK8+txUtJrEhu&UR{eXnt#^~CpJ_fHqYX@7< z+pXwHc;U^oC)iXI^fy$atSEvWL@%nsHtpXy-`QUo?YX|4IiBBg?LAyK&|e7!uNhsW zZJ&J<9#^6bx5#za0GTz|gvhlgbdk5D=^oIu*b{$nX3laK`)XoWe42a3?q2MR#fE$h zHpMTnw=OZfkiY&Va;bXbc&WKmy>Yy(2e7$+*PBcAgHM|)<-4-+!M_6xPrmDZYWb!Q z&*v;Beq~KQ{-QR%Yb|x+Pn<*bJ#P-xCCIg7k!#(-F_$lo)4)@-tarLnSxb`j;D5AB z_MDF6yDj^{g7q(fzhrk%KF!A7Z6v=Nu;D$!TG%Vc=$Mu@t!h%Rvb|6fY&m5Jw$y?_ z_1P92EjrFu$gQ&0j?N8@mUG{#`+I(Wwr=4=!`M?v!p3XwoKQ6{@ZLFF92rsD)b)Fq zHrOK1$k_ILlw9|(bWOKAjgI@YN}F0G*mxebxt2c3K&IcTPpQ82TvpWu`hdM~^MkoN z*h30c=WZpwIuHJ8hvV5_s& z_$INNIi!uWT;$p6^K)J`UeZRGz9i;%6YmhevL@bf=-)l@zQ6R|FTQ0v;OUj<56POg zuFILvR#j8N2lunzJ?0HZc=Nb}?Pe=smoo>bxrl`4UU)9CN^Ch|wK~@f){_b7{4%a$ zLlEZGPer%ckojbljM?6lB>Ms6t-a`^8#4Q-aoj3+hUi4H=bX%1GvQ40*mZtNzxjU3 z_6d{`(3sePnaQ^#@`;{n6|rg6=v?E$3(#N9Vk2}K{pba-zdVidBzpFNE$piXQO+S} z2hIvKV`F4FqYJd`2Os-5XPNmm4L(HJ88v`s)PQ}&!H4kU=r8&(I=orpiHd%ote9Lu z>_Kgze5465y#O75loQ)#KiFUp`$;0B{h9Uo!l=Q_l{D7h)Ka(qkjug=n+N+J_Yn z-^72h>O`_qeGm4f$I)Sp*zL^AjdIjuyPGAp`SeL$vf}OlR^aTVxMh7V)ftfoJCxPk zqhK#-wD*N~h&^r{?-p$TDELTSFc>|$*t3yWR&GYVID_si_JDN*B>%NC-M{M>QLadd zFN$q**N>v=+ANN`$UeaoT|0YSJUDDy`Vo8ny5maqV(j>r1R3ph)3C?ooM0})IVbkH z!Y7<#cvo^t^_ zy;9s)9&26dmVOx*UfP78K@)bD*QRMpPx~wGqbn8n^)HR37Zzd{96$HoKxnQ3?87+* zyb#-9w*wpmy4Z=`m9xj#(t%*T*e(~UHo)D(OO;<^0}L+|UxdYsVM(09A-2RvHi2ao z@r)h8r7?jiiNnE>?6YIXoWQQqP#WX43I3+OVH0eMQT174VvK4NJRF-BGd95;pucpE z$-`xqJ*af-H4@3uBeoA_o;{8}mE2Kstz7pna}7E$7@Bc7xS{harP^?~d$z;yO@E3#+x7UqiY>!a?AZ#R9>jfOvrvmK`+ACC%}wGngk0Jly=O%WTc|gY zP5;QbFQ_Hvz-;1T{gqq}mFT~d(SQDp;|;Q3%YS>YU+AXB9q`yfNsb?}fA}VzT$y8F zUZrCw_x%a`g{L_dn+J(2C~~dOeqkN<3-4jSumC#+pN-tfZ_BT@w1pBM_LHqWwovd8 zb#G3=#^!TPc+ExR)@n*6whKFQJE&{Z#b3Rp#?9KHjZxRNN?DhXUGLJhwYWLAD(@9l zc9r$-L0wxDz8Z}?kXtW$Wmj;oNat56)u&dn7xf~z6gX@oYrw_$F{PO%rC;4fY-1-u zZ_`rT5@QRW!otnqDa&#?cymI(rD7?|m_s|6Lt@L^kh>YXR?q+C%(K(|J$OsYYgj89 z??8`F)U;9UZ@~Afo&L%I;d}Mar>tFxE$ks!^Hh5Xu|@XTLj+XKWGJynNjv7suM^Ohq%tk^M;bv9m!QEj7! zP{&~dQG}eNL3T^sTA}A;WK^1 zrcvgi=$MjkOJaQPW&L}ISRs|U;Wu(_J(U+8?Jst({4YA^LKWNSM!e^4RxCEmJ$u*n-^M;}IhWUE77tqQwRdgSw0Ft3iCyDS zjYhR=6n}Tgap(t~tcMm$I=!XhnSL^tpgn!Xf+#;txM`7AZ`lq_zLK}dScHtRe(Q>; z687riuwmQ7JZ@>%c>T-tQYY)?QRefhXTO=#vUj&n=5z8l^SOb!eFl7bc!g(PF9IVD z@Y3v}I8R#wyfmwaWQ)j z{p=y(AJazVZ9nF_<(tpK2ma~bO*`bf>!*ls$>0C(dU8DazWbN>xnJnZ9x3wAacKWY z505RA?0>UQ51(sWcK#|hBFNgu;nBYH9{Z)XWiI}64)Dxn@jEHP#^u<<=x}Y=KNfzE zyi8m*{G+#qy#R)k$K2ZmPZYnSZ1$C!c*mKmO0^5w+=U)-1iw9@(S|K4rLEc1b_S=o z7qU-X7HG6Tf*v7wXWi>*rJ_fiVhwWrnR~ml2ZxT39*93CzJFpbQ_8xujCYG4Ve-R&$d+_gZvKN_+9$)&i4`^(|yDu`S>9H`}G^0MSP5yG#R-&0fP_S?nG>vQm4qC8yGnofD(- zqwJhF9hN&Q9rZe+*&}mA-;gp6)E2be7IWR!9P(q*)|@nz#&|un0+f8Umw&GZ(@d5@|qC z!e&4tf(c5H88zsD3P@UU!-eSFD~loniXb7;kr~+o1dy;MDCGA&&(jToL1*UP_uk)q z-_QI}pJ%Ch>Zz)8PSrW5&N;=L&o{b{88VvgFD`P~;kLm`L^eBMj<+8~9y^acocIy$ zYixe*2sqvVuF8D*Lpy!$vLA)_=mf7^#{YyLDx-}ZyT87q(=>P-_>QLqru=_A*H8Gb z__lq|Ro|CWgRBpF+9Q0^Fpsa3@J)91{EyDa%66Lq0}Ir^?84%w7|SMJYW-AQK4>b;2Cx_VQ7}R|zk5HbSlP z@>9}3gP#hke+=2^=lH2Jv}50^gDWpyho6duhmsfo_#!uXc`MfTdf}_C$5So#@Khoj zd3mb3>DT9}#LioID)FHbn+`d9@E~)6_={{p|0KLs6ns!i-b#FlB<|BXt|B7|Z)IVx z@jUjd3i~qROVkg0R)2g(4#Fc{>q{iO)iS=5xKU!~ExeU7)8MUs4R3WAKFc@Zzl*nO z4R6&N`Ol==d3*V*&piB<0^Z44j+Ug4b$&$wpAvQcYIdBW`dYD-&h}N}vmb`P6241$ z`-#i^)w&k^mDqWoK`s*BN__baPBr{Jk1)3QqxZO)k1}w5Ub6AeAP)`;AJqvyvn4Hb z=R+cjpSL{;cbJ+5B01gB0m`Zg@Ne!!`&Uk#}FE` zFb0PI$j3`Mw0m>O)A;Rgr%l4Yg>r3%-YhMA3^}jH8p3;_!w~kzzr??Hd1qnAcyg?JxLb9paz+UK?C_tv{CdUG)RkRoy2`g|7Nt5Wg+)#S%Td_~{Al2~B%_ z^)`9@vAi_ajNCH)I{sLqe-MAHUgD1hjhzASF1GN;TJG`3YN>+|dvTFnyuNzpW$y`l zaq-6zTk#I)oWvhXWR{=v$Eu}{UDVOiPjBx(>8H2iAMnRojz884|117j(m#<~B2AGk z{INd5&jB49^LYmkjt77*J#{>iv)R3VdInwfgs#L-PvjQSLHvzB7W437_H66B52!ra z6WrdJtJ9av*%wN&F|OGO$KeXY#XwB!@L4J^0mS5 z9zq7Ho6P^eb5xyu7JJ-}<=i5%U-Q#>^_G51BCiyCqlIziyeoK+=w>*AJd*FW# zfal_uF~5c1(nycIV)!j3c;uCjmt65%f+u0T+6jGn{FcNoL;RK$WWIU$EtM!n+oA2h z@ms2YhWUxM=c5x8`SO>>i}kl5pLqtm;>*0ce5>yr{DS^P{PM>mqg?SviE_Uw{*byq ziUk`&n>&Dh`=Ebmi%rUW_VT^`Zm0XBT=}oejXwVdK3&JRC0eBy-&*3sJh%UC zGxa@-->@I?0Q(X{*`FA~KE?gmT-{g6zD2q0UpyYHym!Pbyt$*wO43MyvjUc2V;cWp zivN;=S^n{XDFN}pxA>v2@I%k+6Th02pX|FN3;y(V(if@jC7Y99UlM$A*t7FU4+8H! z#D>s_9d|RyMhY`Is!jo0!Q;-i`Y!3v)_=(k&Xv69R=*|v+6FA?eCzAHb1!*^`taX= zHk>Q-{Ig*j64#zupSV_h7KtBJzMj3Wamu& zUe!h2;90{nT(`hqY3%82VNWLm-O*8V7dtV~v!#5eSy}c1_*4A*vZcPKDIdxh$hX_n zz^o(qCv3wfoO95!yU?Z-_Lf3eUu92-bqhXGB|e;q{Uo#d9=?_S$-gV%dpq+@rRSd( z+IYm=nevuw>#Y9v{`?c4sqF0Dj+SNv~!M+@{XAp+Z~d= ztdKF>$zIEYrhwAth*dm13mcC?8C8YEX%ipzdiHU)5@+_4U~E}#@=clVqYSjko)K|q zM23sJ@yoariPxQ|G?lV%SAUbzWDPc#zD>PyX57&Tr76${`%2^|_TEb8^WLKRZM}u- zt;91_lCv)4V>h|Ss#Z$Os>3%ejgz>N_{z)PRQT<{TfvU$B>PGW`QIe=&{AKyv%C>M z%zeZh+=HI~h(GdPykF&>#MyTpyIE=48)28SZ<055 zUS7$|+G8cJXvyLZRyW9Sq{VKf=`hJzU9vhLr*{^Dt>}V3(sB7aRr?MX< zd+_^_lY|%a?nN24Q9<=dzhE0BJm9OyS;9AZV#fJ|-7oDyefAIVf1jC&y^A01UwZ*d-H+CYrJTe*l*DNj8>-)t#D;3hqX~MP zv}d&{-G*w42^`dIs20afF-2L|m?E-&$Gf!RX9GXs{bFpZB0M%!i$z8*k^ z!It5@qmSQHsq0&j9riu|e=m5{4m}k9Nhe?LT`Bek_3#&8>ibLyp7<$MOTJ*A=^o+& zAv^7O3)++zJ5O`<>Jmi8kvJ;&c32ni{u7>MzY4vX9zP{Jz^4>kEYDK$sm5NS&=bd` z&}@}B@!6MgROGS%wN&IAnG^TDnnPR{vs>D_2RwsEY)GVxMU5+Ee{JyDyYY=Eq#xL6 z9HyM;Z6qe2>~HntKlm^XmNO45?8}U6VLSRd{8cc1USeN(0w0by9t~RZ7CMuYlocEH zZUu#FbFoe70}N#U;N5;zOWMO5h;M&i#{7GDDY5gpoAcw|<*cPcN^ExfVtko-e+YYB zaJ_-|)*DSqRkwnUYg4f`&ja7#33Yo^Z2s%#pl_&=Jwnig(x zOIFM@#&E^VswKXyUR&bNST!?F3g;EAgg2G=P@nPc6W*;uKX4^Zlo3DRdOCB#1!LUI z?m)&Yix@xI$R>rzOxGJP!5i;b$ev((?8;6<1N-1N44rVa?$0y&T=R2>BC>V)sP1O= zZlM``3#;IV?1v+eU(~?*{)~_4d5>YgE^sST{j&?8pZZYjG2jOz_OZ-&{1be)mYzmO z*OUFh+4y};m_BMPIs}OwZ)fk%F0q78v3^b9YyHailoP*)B2ElLT z!gmdX{~7>K?S!ZH)p=^!3-p%R1HU5WWIUv-j7iJ#iRUDy=)Y5+3eRGyY;Nb+(QFPQ zmZ*yD9R7#QXR05zlEL`jwNuJl-59c1u6ucJ;=T7dhWC5@9p!Z-$xl{P&QDJ*-)~MX zKWJ9V>y)ta1B_2!c&Qni(ce=hf^YuRRyo26^wj&D0x(4RQ))Ex+sC zl&nTkE{d~elFOy65B2V(>|y$-D6_*?snknsjzr%Z8Zxji?ME5LtX$nQJ2$_Tk|wsJ z^4%l<-uzsmlF+cnymTmIRnA!9SCYy2i7&}U-Iqk_`?@j2&Zoj=dT5q;}IM&Cd--h7*{?dGmpZ)U}bhQBjhCQ?$KNU>9V-C0dCq z)&B)t6!2oBDY{hZHSv!Q)Z;_UiDNBbGcQnJ6RpE0IS|`)>K0rRJlRh=Xmwz(r-E~- z<(d3%Bz0onQr??7&y#oFq?Qk{DT|XVN{>D4C#$~r#&f;dgVTBKJvhxf6M0vj#cw{+ z{aa7|Fs{%=`F`pY{GDS;;$LccCja@GagcZaCS`jWG!yNqzrVMB-V4ompR;-I?ZW}- z2Wb!W@1>qh`ZAKfVBe$nWv(fy{BG%wS!rrd>_OG6&vBGD@UmLQ7aZ1UmhbPBe}XR& zl$Ui=a6@D^9XAIF-m2j3)%N@sXMCpPZ%e#vyBvE5=)oembOc*`e6nIF8Zoc8s~hUwJQ4iLRf++`UKeAW11degl2yUi`uYp7QS4<#)1= z7~z(8b)I)}f7o*`__WuYq}MZ2Nz!5afWX#M_aVv&toBf5FYOWdl~7LRhFaR0$Xd52 zg1Le6UVF_;*lS+&*lT*>(EM)^4S9^~;fmS0eLc=Y`y45PBT<}2VaPi6C%ee1jyv5c_XgdnL9LHRk&wMjHkhyxb zG2h6UC(NPDOVMtbdrn>gr%YGoo-D?4OTjJDuJV9@bwklhmZr?I4YE`!<>O4sw0Zh` zWZ0-mp9ROfIM;G4yzh(OP#Way6z`Z^3T@r!U5EN9j%hMSN}k1c-O$7UbX=^n<5np< z^mq|+k4)6PQrVG(UN5WCkv^=FSo-LFWZe2=t15Vm4XoQ?p^vor9OKZ7vDpVNcmNz2 z+|1m?+`8Va08axiwgpM-gGBopy)VYRe#yUAi~05Hcg?*RdwjKIef83w${c+^c*0px zDSMuDtQH#04>VOBj(0ST3o%vY$Ei(6+TEQpe6DTvxZ8RDm8l9EU3>|8q&|Jjn$0G3 zD<;-vi8WV>W9yBge9{oGAOg^&kM?O{cV|5 zevz3~UC|%;#AH^P6EdqRgPzGXC1qBH-;h~#-^wR))ef0eVVyFoe)ncs?gZ76)d&0y z=<>!xaidl~bYG{p9*P>Z`k}+2vL_v3?avtz^(KGo8zw(%XT_4$#T1ZbGg-4%XDo>L zK@G~Yg=BqcvSrOBlyp)x#bb_X5Jw2w1HGhQ5}VQVVbj0p7vDI~E*3$7O9b%QDCc+yj97u{t#+ z7Q6@o_HBTDYvArOg;)vPQuQtPkpK?F1OE?vl=N26Z!9p!-y)s3X@iEEW33-pl=KDk z>E2??pjAOidcR`Zpn72QCt$RCwkiFC5+(g!a7f~z+zYO(nx~{Ewo@9!2jITqm_e^A z=5%7^4XT`NPXDk>Nq-I;Tjitj&Ne6-yb_;+4-_@M=Fylzt1N2zD$1_m{!PV{zN$o? zZG%3Vt)#D-$2aurgCO4dn7FqM+D04SpUty{vgEBPUzLm1Hz090GPRjfE z7~d*wtd&7Nyt7eg#oGa^)tohLnLx!JhYPEGS zJbQPO^4=;_27GO#?!$f9WZ5cl9a^P6TOn)w)IehXlW!pwccN-(SY=Y1l9BNw*1}rW zCW$TJ<-IQrGkEV`nm13IeRY3`r;vdHl6O}0<9e1g!ovMI+SjD>y#em%pn%eG&{$ToDjsFfkth(vDihk%Lz6nVvl{het z!awR|>L{~r`kjq0Qf8i~jMx%MnTz!Q&mor5Bv0AhlvQS2UG|KXIM$3?3lDzFWVK(euC6@8k6Q8vWk*&QEw9^d?e= znfv$gZ?Ld7T!fE|PyVjLfK@B^i|`LGnMIz8cUN%@0#-&|g#Agqj#%oD*edaEUp-Hr zBkZ&FJb`zt@L~3i@U2FC6N%3q@4gTq^+>#vI6Xh(nz~Nu`BGPmo}aGgOL?QdxAgiX zCV+e&?>?lLm*)t3-sQUF+j#f)m+OkK57qOeoKeq9)HBEr-4iepnZd9#i+A5fUvCYy zly2wSM$dSQjIf_JAJA<^BJ9$(*6T&Kly9Y9vE)bCWnUwX_zmlki(Vo>nRq=?x7eFV z{`0&u;v^Yk@ge_+)g8GWJ5#LeJNuWtHzPUE`mJjA|F2Y@e$1fS0%53XN=TTU&9K zw#oR4zjz}txfX+a($163j6vI7ap!6OV%h`E-ZGoEq-|_|4%?{hmi7MS>X6Be>%isN zI=^+rzv+^PU%ur0q|%~f=yA*v|Ki{9IQ*jUQ)@5E_`(AvV?PHUYH2S#sM<7vdVf&O z<=Fv_^qeS1`aQvpX{x!1%T zYzBTlz|j}p(2ub?{B;U3eC$6JKih#AKCi=z%KSTyeMI3;g$G90wWT9*dN^l*J@ z3!IN}FL+_hGp*b?z|(T6`Rjm7KYX3{l$@h1_|OVnS%;%%&GRaHlYd{)b6yLGxt)r3UoKlEWsC3E%f9@>FPD8&$_}#)lD=i&_xVe0cvZ^wwCH8`9=m>7mG?6L zJWtu*ijJRo^^CJG^w+1-feg?%tT!~-3);+tFG2?1XvlLXLRd&1zAh`!@Hp2~Z1%c+<5oj>&id3&9*{u*ui>5tyB#`Bf3b*H9N_FOc3w%AZfdnIO?=m$9O z!~MA_79L09dPUk#nu(jKw=qF)*H^U5Xs4{#aqg|sPQ8tiAIW&cy8p_5_p&cz@Bxwb zKl6Nr--)z8u0M;8M%oqU{)jqc|JYkT8T->O^)fOx#(&?TjL|ov-=FFE!m~*`BJHlr z<%xXsj^eBNnQ}k1I?q%1^e&2dDw|WMW5s;;%X_2b2jC6XFQ>NBtG2)z{B? z?8nU2CqB$rExIN4J>AcPpGVo_sb`Fj0n<6bj@9_&HOvmkSY4*7<)eIZCbTD|4$gA+ z31@?M(iH9w#mv>llDC-W_emppm)hn(w1ZE+%~|4|iQ(T# zJMiR6*QSKd+G5_nPqN+mrmHUDKeTrfQnXDy-gK=#oc@lNdm_pKt;3DKnL!NZ+tuO;0a zm0IO$;{LbX$EAMcy7S)Q&X|w)xIQMe=Ds@NtZUcGq?>D2CQV379P1jA_>nd}@nh{r z-ks;&;=boxFCS1bSI2}5bu z+T}?%Oa6EK$2WC_tGdm5+V6Sile*k>8)b%2K0NhZm-J&{;zzEnfU zb?xL`o$cK&CAKxLO|~^%RwT3oHp#A$B?p07lB*=4tt+{t&Xrkmz@?NNawW$+t|>8( zX-P2-ZMg58J5|;Z!6%6ako8UT`vrbMrPk1((g)2!TgN})Xbgj<-h`&!5t;&*-y&Au zHt32CsqpWiD_biix65NoE5ueS{88UQ*p-Dhn8UYXQ@bPev5=>}R>Pl4HHEuRL0j0J zg?DYcy&~+?@SVz~SvylrHue|8vN;=_tMQF(<^X%@W7<>O_^yj7#C`I{?Qz@Me^n7m z3{TE7v2H`3Cb0?bX|EKi?7#nxJ<>Dg3}PVabD{esKbgn8^Gl@r1)f=l&|mjwUFygB zbT{i%U)HNWtZBU~kF@K>I+i*9c=wF)C;YR15*_b9yuS6a?U4QHA0NnUQdp;=l0Uz^ zzRCJ@jP>VB)}^=b-M0)G+n7SW6}|Hw{N(4bF3mKDmM&xck+te2?gKfi>`m6NkGPjT zDbaBc;C_$4Y4tkFSxlVw)hnd3(q&z8cn18d8d}=O8o2M(AlA&!E1KYkPn-Sihp_Rv z_^P#X6>(7ZJ{MTI=O(rCz$XEfdqQX5RTpY%`mvp=`{8vE?nFcO!ZQ^aPTx zc=BcMa`<)f_Y@f4*O2eHPX0Pi{x zNc&FxUXM3wH|uMMQAXi@-vb&rlc4kY7a6xu9dBgqinKpPe$x#4FJponEOMARzcboC zPR|orU1a}O?mGQjU3RyR(DS_VeWZN_-<_KvcIb)jbzvEQoWoZv-_y}N!d{f)7A)$avnG4{^-y}&)j{#za9Mwy}9pB<}Jo&hd~ZbZg0 z%ALc{0y)c$RwPIpK1?QRg7OH_8hi z7Gobv{uSL&lslVzi6?8|UkvhMl>6T<*C~6+F?RpU-^AFb>3x!z#WD6rxIYCxp1nXK&&vUhODw_ws7z z;m?I%JKjBW^(EqMG{S#3fuAQr*WJaL4wJ6p-{8-WF}C%P;xZFkn|2RF|5=azbC{ZP^ssq;MSVM^@+HcPp6+GJN*yooY{dE( z7$&%X$Mc$LPkw#+t2a*VjHo`f^FrMz;oDF1o;?}2{6oGg!L}rR}cj8&bD+!*-bkJe__TKa1icw~Mn8W;-j)7EyYJ`OfKR-;fwF68 z+lTzuC?mXagxg6O18)tOW?!x!T^ipQc~UmoE%;~Pr<9FwJ1*BB?f#as=a|zB__cPg zr!UpKThBj@ZxYZ0hdK^Lf^I$-^%Y8jW!Gy`FT=N?T^L?ayt&U?VYmN{9lX-`I-WKgX@sR-+V;+#c$^LhYJF-QYgOm|C z$Q)qwFT(BZuj-j!WBB)nBOJsJ^wMjzdn)e?dKMaraZl#ifM1+D=yIOGFUI{K&j$Pq zdduh83qO^6p(!Ij&V7;g2yGegh;TRYyaw930zZ*qS+|K(;l#o4>yB7Ix zNIw1hrTt}Dk3|m@(C*K1B12h{zkz@8Wu1?)pC``$Pu#cWTp!spZw0^bF>(EqIp2M< zGo^G}6>>55Bkg&vr zACd85?C*XcGMzjd^4bZW_c9;JJIQ~J=hNVlv1cD+&!ZiJPnDiFjpq64HpT1wkhBS& zO>eg`2ODkrr7^l#)g1jx_AF=MPsFBHcr$_D=lFk}MVBSx+NAF};9mo-%DDarf3u%F z8P`VMok>)xB<|;|waw4XBaWw`qlwq~FR@Wb#-3mbeKN*N)`eJiYs!mmr<^g9eB&F@ zJw(~ZQP$vrWE@+&=jr2W;Ho^A=+81|$b841E6<85*; zqK7N&U4h%|6D~AtDyB3R@|*{qd-vthExAvfze2+sY0q$dF4T2YtR?6jTI7E$?Ir)0 z@Kb2`!q`8eAHEX9`LJ2F&jAlpl)0Q~I6K#_tjyi>nd(dqHihi_%+FbvyuP9xdfDD2 ziKRK7Hm^<&C_mBsL~f`uH~eJt3%Q)>p!+V#8KLO7-Ew~7KF$*FMy%Qg(V6zTP`tA} ziTMbaB)WT_n6*ga9{VX~_BzAe{><6LdBcW2taP#|thA>RR9~m~md?gkYA{C=4dV?uN&B_pgD%+zdB@*Rw!?+5W(J%^mVWZ1%j6x^;P7Y#Z{ryf&Ns*<)OOeA5uwb;2p1t`nZ@ z@tVu8Ro4j-eqARl?D4ki?lzNLFR zxF0Hb_0IFeanE3XY?#TXejWaYA23!DbGbJEk)l}Ad1C)HJ{l4q(^CnL9u~m8Z4fd0 z3**e8*68jPagD^nyv-b)9c#8(6GI)7ZlCpBV9d@J;)+dC^)dOk7Tsr#w$^gZU_4i{ z2QI!+fkU3iwZ8TgaewCK9tVb9fcwqBFNJ-+uAHF}mOr7W+oRU_RAPAKc559zuy0U& zH~!nx6jGRht?9sSbK=7CZ!Vg637vS0IL8;peyZENT%7R{`wuGn5GL@=%)W#V`{lls z#MRg5JCRAFk%7hDTjs)Io1AHak1F=y^G#7(d(KfB9_PLT?W<&bo+2s1Chf2u>p(~5DfwhBE+?4lC<3Jy_T=t0ix z$z?BOlM+gt$-w#*(2CH*-6k97Y5VK+a1-rsW(=C3p|R7(>hy3h$fON1sihYfSL`0$ zV+!}^^e_dV*rC|`{%@v-iTLD>DO`5vj9vykB$`y69&X3(MeHV*aNy!g1=EXW6#K`| zEDnl)5qelM!NR?5P_a3n@DJu->yqw&h?{9{ZT;9BpZ$_K#JUuEXfta`;EOw7;tZGA z`WFjsFZ#|LZ(Wjq`(=92{TG3s9az@`zfQnA82Eq}lf_qY*mHNsG3W~lY zv0t9ud6seBOId-vsGe_&!wo&Ed=~~DD6c6_!TI^%KfaGT-e&>xc0Go>dXvl_s1tlh zc_jwUd;QbbdvJcfA9khSe4z4pt`+?3gk9ZIHL!5}oTU;6t-*`)vUg&%Tj%dt!>)h! zQuvzdodbZK3+u#Q;x9{IjWxv2vxcZn@A@He#teE%fnHw7l{MrC`Xsc{jL++F=Jg-I z51l5!*rNMSR**O{UU1-Y1&E>o>6` z42NF2yKei{0?Xn|jtSj8TOzTd{Wj>!QbNbx3ndjeOOokZV)SAk9DSZqAUNP5WNCvj%*4S!^ostxjrWkC-_{_9Kg`D%dmL12_(#6@uv zH)n89&OF+HJ%{X#+ys2&dwKUbc~Xb)7;@fF26L+5%Q0Zti|0UKTaTW%L|u2+NuB>t z8lG5gySZe!Z9<E4K#v;4=&^wp*1uM)f5nW6$Zq(LN_-f1C-5Ep#?~x!kSV0j zjMeL=pwco@7tV;1f4+5>7Kp8m^=baC@y`3~;(0G^>E5O#9bVz(ymTmhUO(0?%ipY9 zSI*y&b*oryb$Q*A^LJ$3+DH2&Rg$%D zPKP&|topiD2d(=}8>6pVpRsP;&AN4-bxY(OKhL@q$+~s^e>op#W8Ly&-HN$p-8$b` zyt59zwkUsU(MJVSi(-oXpueEY^cU-)xjR_5(z-8+i#5kt?>EO}-_E+#lXdG3Xg7Ul zMcgNfe|=TKZAC@Ua8dqkm)ET;bM5tEd^JzCu*t@tm(_J!-fmNQ`7 zbEZ!%$}lNC8lk&o1w}>U;U^@f?6QKiqVG-7^{T#R%YJl(Js$l@5_Ij|Pq}t4MSLWG zF7Ghki|uMh@xM>rTv4n>*5`1)z(gEe(y}=j`k7!$dB1E<=7porEsZPYJeVZj*K@yA zzt6mIjQdaY`@t7vE?f02eD}Bhw-u1GNu5Z=*#70QE(m{<#JV6jycz!HDDy}X{QVKu z79&1Zq<(&roZFNFzcYesyX6+=4a+T|eYp1JIuf40gtUURsRjS}Vvkr&1g2TSx#|M$q(uUwX|dz#Ew$=4qvU(eFz z>lkF}V2^wq=#j6j$k!p)$k(B|eEn}8`MMeTdZtId{a9siaxeT~+ydZEj^d@(E;41q%{w?$-G02Qf@SYdI`@V&S9&s@IXZrtg zy~zOh&%TAP-Z|96fA;j~5u5yCO21KJw%%Sivgl5;W7<&kCJzAD8OVRr3j?{g4H{;) z7ETAQ)6pY7U{0`BnB%gs*|iqKfBtq>Mc|B`FUH|F-f)Lmnf4L<>FtH>iqfr0xvZfp zkPAh=v$DPgvCawoi~j3o=y(9MnT5V%VEaE+JXA2T$nj`Ud@lM#rEBZ(@P5JZ4s?mb zOreD);tqs&eJt*wg04lA(0@pMeKZ^@lL{sjog(Sy0#aWtx|o)_Ne8moz;3hS zCKcRVG=Ta(f!}CH+zvbZjGS|7id6=SA5Q<|KUIu_w~_PZ#>E(NYJdJCGGIsFR{Ghz zaxQNnvdTToU+6^}p1$jzz%TJ}81K;$MtSt+*Xqn$%31#m559;0tKha*zA}N^60`5X zHL_KSN46SCOg_QwKDunh8CJ|$?LD&9A!IAxX`}TyYX!1ZUw!TqpJ+3()n0wh64|OQ z>3_FQ(2%WOZXsKl^f{}}&#!c@;NB7!MCF`?yi|+ka&L zjWufAjgBJwEbE|Q#6Sr|&(@zc*M3nA8`fl=v>D#FhM08oiBTnMpz!P_)+2*IzrM~* z*6MkbD+Gr%k_FstHd*V(n=GZvQhVvV`S<#Hy(wqiz5yS( z4gR-fkvfq!gKI(`>(PS=-3_80pR_XckHWvV;aQh49ZGrqV@kQsBOjfy=oqmsC01tH z98avw{~}+W7u<98h_J_WzI@z4&OC(i)X_3 zXC@?R8Svn9;JuTffvo+_?*}tCNgZ2|EhN^i)FpbQQG!xv&>h&7;L_K*enBEOkA5bQ#F`8>g<3_2 zD>6_asf@ImbTjm_Eb@6FuH9KxBb=xU;MU5)q_8~Pd*Kg}rS)>h1|k?swmvq@GOdU!C#5IF+D&1KdJBj&%hRYq<_H{S@M@*`_q3Bwm)76 zwilSIh?iu406u$t!Hl9kqz;@R5Ua-8-@4HJ+)#M#Jq33ZC7R>v_p%lkHh&TJ-(tsT z#K_U(0on^*mpC&@w(MUMsx0u_eZ8?i>7~#27sh5{lOl0nH|aJi|BvxdZ~u#j`tPyJ z`u~H65_vHGKhHzC;Gw$gBPP)@lEf(5$W`Z|usN8+I;wD1EkRlMM8LYcRt96UF>u{o!gosi2wBtX%^`OD^~;wM-+dXeY40g|u&6jz zNp+xCC%&mzN@V7hb|lU^ZS0_TF|%3^;F-ruBZEc>?-a1k?Wbhe{@CV`D?!?MSa_I zwFMq|FZ@oTDYX7Daq*Mj$9^zdv6&5V*C#6jo9|L4X`FK@??R%Kw0!!v4qi~kzoq~G z4|ja}pumIk048NqCIA?wsMhSt~IA#V1w>PIry2NF{@D|svDG};Rkb!mmPe?Du2mG@#(^dM~)JQN*9W%9;~ zdTb1jn>*RHqN7F9|D|e3;THb?y&7Ct##Qu^J*iuz|3}R}cIvM9XK*)||AKpOJFmgd z)ybd6tpi8*f}`I20pRFo;OHT6)IWFKUB!CU!GY^VfpPlK;z;O!Ky3$KH> zVI$Dp1czmZa`uDZ?J4AHFW%<t!?1c7T#4T;DObP{G=Xvn; z4Mpi;;ABwtxL?4@!^E=_J;xPX^tlQbWzR_P;~wzDmArw27ru;>`2qQqxImm0z_-Ua z*XaajD*a$KWlsV((aD4jQ%!{_Z3FCLyCiholf5C)Kgb#4QH*f|XG3*szauUecx0HY zfqTtrcCJaa4>N@nCPAO_E=x6K_cWObB`=J9Cdm&k>RR+FIPR@)Blkz3PibR8@|LS` z`-eNKu9_<^wUe`njCgTV5|nW91(`h}cF<|!hs!)W51gKdeZ9=dqQ|gvR*v|4?jiL< z{!QlGP+}hj2r+{M*Pmj% zhk0;azB_^b&O1kEf$KfM^-0*mIj@87GEZ+|o_3-CIn`p0{_nu`TmIa0HFN*vIr=p7 zm*Bcw!K;B?+HZ*)2Clo%`+9Nx=;`Jj7UooJ(6Tv~I4+-a0xH0X4ufOat2JMR&jOE5 z;IhnjuH^M`uP1+T8K31GtYhHvad7zrI5*%jE~|wB9$Y>N%_Uw6Z4fy(09+0S4%->q z)b`usQcXdD-N4&Z=J0Id*w{JOzR;nsHELm&s%D=AR@i!{nSn?1MWc>(+#mZH{JnJF ze_-paR*IfPVi_8~OD1=+vNU%ev0@euR2DCT&J8@|JcRo;==}I(tMXo!XHL!L>R>LF zXZV1H8O*72zu(_Hp*QpCXy((EtobsZf@k<~7-zRgd>O$p^giXp>$CR+$2iAe@axl$ z6pbfdZZYTK6#lw&=xQ}Kd{wf=K7N+}p!`^+`|IG()2h{KVV&8^JWvcCT2!T*(5b|= zN`$3YK$)P~iz`-xcTaO>!Y67-{adL|SDb+6n$eeRB*yte;NuDY9l`ahV8^M6$dgX> znTosNAqK!h4Agmm71~#7=+?sE(CiTQat6aI{2D&t2kN*NKH&J=8G9Cx>y$`t?&o%NV137@v8J(}RpbKgJ0H z4uh`>;6@+*QDM;gA_Vj4=yB@1^u8tH@3*Wll?KkTFbV47Z+a?r~b@3nS~> zGGBT54)!wQ@;z-kBWGiHaN%0qXxUy_JDI2J+oF5xlwXi0>!!3Zh<+}JRl@5PVL_hVO!*K}9K| z(}q{DHOzq?0-(VZ@FP)8DR6lB5NW6IBiF`W6`o1_yu_a;DtSZ2@0CB~p09i=Hw_({ z==GwAyS%46I(^ECug}^b;?LjaNI%lukuGQ4*jvYRAEve{+)UfD(f_6VmN?q@*B8!; z)?;)OV$XrjGdn9iF}%Px%bGPScu>EWW8(8~RElI>X=#t@jm_F@_8|^wATqEOy=M?| zaWH-vA<$}QrL?!d-exm?85`oT&3K#B@X9SiMiiy-EOab>8b8wCTa>c!eeKi~?8>c2 zuvbh3$By6=eFPtrxF?pz{YELvO{bqPDSrq*fuwCaCSg|8fBGp6B+w~DQZF>dkxtZwYAmGdpX}Qi^Tdd5V#M_BA;{C zvIE7I3Y?TY<9)3DUgDXw19rvcnEF>lKaKBKiW+atADU9MTj&7az@w!~xxDK)B&Dd9 zcZcIMQu6)f9IKdY=~EZRMal?2`!w-LIpe1=ANqnvWjzYXmc6#)&{C)xQreZ&06Zne zBDhw*T4he<%m((^>yvyS(%iPQvAK(`PwKXaYf!z)erC6s zp@Xnd8Mq(X*++RZJ_etv*3!&AZA(Y?ZCAQfi79-d?+vAyNsr?n7o5FRi7p(ent6Vr zVx$rj*qb^={^TFF|E6BqPbg~E3MD*nq~aTxteCSNC#mdt_997t&p4gnfd)R@1775S zAKB5$dRa3zH$LUcqKP5uqKR74qDdjiizaD~MGu8! zEP6;AzG!kt-lECcKT_Al{*x&5=ZaO?w>q z_ORYB;=Q-%*Zda!nh$(R{s;PXy*>?CJKQyiw1~8ZbS+MIrBB!5^{e#hpM`OFk|W0p z=UyuLWAUM|N8!4H}`p+`K zlc|G-f9bdC~fktz1q}Wd0JCvCFhOKOKF>u6WK+{842HjTrp5&R(M`}Dtw&ytv!gW z(UaIx#2nFm+vbERgI6&Y7REs7foxpE^g8YzrJYE2|G^%d1Ce zzVyS7e%#HogXi@{pJ|__eWsa;KG&4A&o%R3^IXZKcH8!8>b4Qu6V)TNxz+nMQ#EUJ z^i;E0UQG1b<{=coO4NSNy|ySNS~8NlTMPtz{6X>vt;n>Uhr&cb)A+8 zuC1*;2@X!wMplp2(reCY9cmudhC)mIp_duZO9AxqBD7Kpt(5cMbZ9~N{0`7X`)CbAzj7VM^$6Dju2H1fq+4s?8*4^rzSL(?e9P6E zi&_z5?^`oV+fduAwcB-6dqJn$J=(IG;o2lRCd%kPM|JFdeOLmRW z+U_dQs-fRMLdSoBhEay)Y-ijzGVTqu^8o(~uidBl){fA+*Y447tR1f1PML`$GbsaE zCj(!DYxkl$GOs-ies&5{1`_WgZrl9cO`R>uz?+!|WUdq4Lm~6q_91zVUkrJ$@yj9O z8@COa&?tI{3Cwji^nSkw_lMW+)gG@spuJLiP^+!2({8Mup;c7R)T*jyX+Ks!s;O<> z)|L|o`?EG5X#R<7wYSF|x$~u(v5d)R?Kh0WuGQb?6g<1#Ib+Fo=dZZVuc_0TE4Dk$ zk10FG($93>r=Yj*saosZ4{UdS9I@Sb7ky5q?+uH#JKONCXV`XUEbsf(9@VmH3xM+h zZBgxy+OxGYvL0b+ zht@bNBWj#qGe1Yvp67pOw8+}2+H=p=IMZq$)#7&*Yw5L@v^Kk%H9NG}7P@Q~UgP`? zG#FMhT~nTR zbE|e2yRvsp)w)mLrS;l%UVDyb8)u1bN~_iar+==+-0_|E@6hav&~EDOyR>;yTFy1wo$tWoXr7WyYbxfiyyVGs`IsN)rYkk z`6jaVC;B#1>-xn(E&Pko+V7$H-$DO3q;J*IYMM2_FJ@@B)f8(%%mE7YeWCgxt*QEy zHi+j%&}lhzIvCm<1a00I!aSiCFS4M6%TmKjQ+XbNZakBiO5vPYDs#QWR+&9+-<`L0 z`6?&1iz8<}cAX~HPBZJKpRAd?r?QR~xx$#Q!go(|DZ8h;RA_cN^lF0+`_vrL{FzVR zhX(Jh8KcE8uX6sE`+-hh$JCzGDr(PyTj#XzY8$m* zi5{j!jB@WDWk2XIF$$mYw#wkVwn~qqp)o%lX{T})$Mw%y6#nEX=(vkw%1(ifv!G+4 z?eU}(=+{i&62p{90g1}sz3A8&>w!7sZ46ezwgs@yiw?e=^e!on?=y$E8hZ^H*?1b= zP8|t7yZr{$W^J!>p12xj6&=rHlWMK=iL?^;J*?OiP-sG5GbK(5f7oQRE;Xr>&P3xY zX^JW|!ABiqt~fVy*3RMi$L`F?KX>Oj{4R6w(O=6shY4Jxb2^pAzi^#%=%RJby64w9M{%88vCf%G%4g2m zSi4`V1!r!5fVB%;`91F!Q^tqqh=_I0ZlrISmk!k)(%xoW`jGXhymq?w2=Av*ruD9| zn*Xjk{&_(g3Xd?3_3c-+4{050PiYh1QgQ~sGmK#E`xt&<3vzJ)9_Tb_}H z_68_}iDPB=^4O2UU%z7N5opATi?r`2Z>C9E3?IC(l=(>F1PMP}xV}$Q7WabchSO6M)5Ejh?LeQ5#$iFUcH# z3-GN2$2gJRc`x@B&#rfl;eIOj-*EpUDZPBXvz(MkIoqQ3&XHY~=IpPYuKB=Qw1+>C z_MGXgU>&U6R-nix2vx`+BkGoXPlSAdh~g?>CE#^#=O_B4a6x zuRM#rlE@Rvg70%o3miGfSKCFt^5Gs?WueGkeOdSY;r|u*{|tD7?Yl?2HX%bU{9>%O z@{2mn=bUMRFJo;=+pZ}^+qHISo3!MjP1*{|^sU~5EH+#l%lCPFzhU8LP8;v{bM3}; z5N%w9a@s?CIkeZ?}rmIY=78 z{c>cum!+Id8E^7Y$NyZvWZaS2wkyHNaKVn86y&q6jJv!OIc`z)L49n_z{f-}ezA<7 zgYlnJJzCpv>YEZ4YbRww=|Yx1G^qwoTT$Blih?2wk+hqeg3= z_O*7?j2g`+tyb%s_6@MA1x{aUnML1d6PeH7;XmQXGxzeZk<9sffZKBTC*L!s38D{Z zOaCJm?F5f^I`6C4>CELi2KWxATqZd2B;SdQ*duPIGivBgXKn6I=hxhCTDSqc-{4%x zI`aXH;!HyKMZ`O zzt}>YEHIhMrQc=D2P5F)26T4h6q^G$x`Q@EG8;Ry5}!~N`7$HfOtzU4w&Lgzx) zGFJ%Q3r!1c3*8G{3%$!cAaj7wx6rxF1w!9K>oOMzeak!`v@Y~5bS`s1OB$ECpe3El zd?52cJLEy3_q(BQq4|7hTZ-i2SD!5rU@b}xX34&Z+i;l0-&zmH%Iu=Bi;b*l^>JDdJ| zggpN+*YcW6T6J}k_5pp6HPV-PN!luNR1tN}Wxg6fA8+ElgEWWKfq#~RGwE!ScpZ)0l?LuilJ}&agKb8V(&I#E!d2(QU6v)`U9XZQku4Vjdzt%1mfUfT zENR=&r%7ZMnSX@# z5OY=af<2cMHCH zP+R`hG3|-3#%RC!Yq4wRSI8+}HE5f^I;BP3zEx{AeXCZR{-xHG_Nn&Wv@f+d^f$Y| zD$u&7?bL28+NsqQeX6xVuhaUD&05Ti%~~;foWs&S^g0`%gB03Xdi!qe#p%1X^3{%< zv;6-yc+3d!EfT)-Tk!jl+DEiY@T;xCRi%7~GnsUuwq6_Y{0`^Hg*%)}kgrEA`r7$K z#n;HwMcQKSn`;ZTmFQHGVs|*zAv=(rzIL`9w8Pmheus0&u9;fz_^+L#2Yu~a#n>DH zZ=-52YEyVOcIekmH@bk6(1ew-?8KV(EA%5D0nhOAEzWmpi?r@sKd9K^{BY40=UK*b z0XUif4o~C#^Q60&dmmV`#X0oZEzWMSTbvO?wm54BZE-fkJJrT-asGjM`32q=@&4n1 zTbv(p-(O9-t(v*RpRp-H7GJ?XGilpM=E5ZSd6jVr00(=(559&@?o;I5gS2@A@ZVo^ zS{n|WGnfN90@rxPuMe_n7X6jt` z1QMvo(rw$$Z&;#|5C|eY?E+bVpqRpirQ2?*r`eYTB8$?Uv@-&t2u4v%t3B;Z69Sk@ zDmy6Ni01cwZdGZFp!VY1@67Zc=X35o_uPBW@|=+}ilB!??gGr$*Odq8aC%2>^uTRQ}MKk7NCC-z`w?JMG`fkqw z){)49oH5RwgYCp?1^LxY$V7)!bjMq1Og zNb8eIq&0eSl5-b%6mrrvlWoqh$-|wYl$G=Rp}p{gtbb;+h?d2zwvd2pFuW!@-F`U`-P6r%9Y8xNUxEmkWB5whGwpBfd;<|y$v^LE^W3wPD}kj`z|>YBJP9n-dOBwaED9`*WV{8Iq&$K0BrSH7z>(RI zzrTQ`2lskm=^gU5q%D%_@$m;NO#vPRmj2xbN72BG7mjXo#sDK_JYTXGSRx6GHI&;Y zzfLNlJe%|$<^N6!;h6=vn)ROB@hGsd^1XV;LF(N_+5$YZ0y`6cn?B&u7GPyKI<8pe z^=06vroUP~3;0Sy=hd4&y-oS;l)HeRrNGlF%3^_;m!}@d+{d$;javD3c(?z6XPY1M zoZ~F(>@4*B?SV%!n^)M&A4hNdH1+GQ+3N@f9%^C_G1tHx?`z=ReCX6X=+s%@>3QJb zx#;bVbG?gh`x$VPP5rcYp|98Maa{MyQ<J%H=+a-@ za4K{6+EeIY7dz(PaVj%!fY3p=V+!S&l>ZQ(to^Cfa)F~?^PZFU?nJ*B0d3j>96f}d zVG1-b6B^hXoudi8@2BO;PV9MxpH8v8P!` zyqI|8H9K;Xq9~unlVlIZUUYa&isIYDgEtRAzDkoluz&&od@bjV-wqq_97fhJ2MG@|99_TVjB+K)wyG-q(}5BD>mGpPrlwA0;wu zFL)=BTPHy8MRwf>KPP;iMoJ{f9+|cWcz%76;{x(%?~`qgQQXTnr9Wqpm&I-mo#$H$ z-w)!9hUh%y>_rlLvO}R8lh9vUSSz`tDV)u7tEV~{8~lUl{vf8o@9KmeZe61B;(nWoWq{vEZLLfU5!0S|M<(;r|z*&zLumg z_Ty;tc=n(Ny?)lw$AuJif_O5^RcE~GS(vh%J`ZY>tx2-%s3|- zW4yH5>KkL3V;SQu{AU4ThrUfGgNq^lE?0hRiS@SIKxM!O5S5`c=VI%D^Ythbj;vB3~i#G&gQ<+IB z|1`f^#?pOA)syhuQxl)w@wyi3bPuIH?3rvzws*Wk?5ZO5haJI`Uqe~LMolk@zoUcm zBKj^*??W0oN21ZM!w)-aQ9 zA9;62IJV_&PicCHsc2fSggp%=rXuNF6z`qmi<)B zU(Mct%8~TNKI-lc_hLm~#TeEweua$Rnck{yA9Ytp1mD=qcqr?|kEG@~PAq^~jNd6O z!pRw$DsOqHrzdM`7GtHVs?$we^HGe8nRiYry*#O-QaWatdN|$F)yi|U@3f+Lu;pE& zjZEoixKpicz>mZEL{(ooh&j>}k2Z2@hx<-Nk26`EyC{?TuV{Up?o72ZiT6sCzD{}9 z^NFGlrC-Z@@42Tdy1d)iA6TTUQ0?Vu`E6{eJ43B(=f7hamu%{{C$5dW$bBr&gSr2J zvs&&6s$NIgM*6slvPO@lEA-QSvq_gR*~pk&cweRLu8#T^p3%2h>YmNi^f<=PbJkxL z>N$S{^TpVGxEHuI>h<#+=DdrW?~K*@d737um954%`*}W^YtkDMpN>4oJ!{_6N*fL- z{X7kedsd!Fd@QnsXVR|wY5T`_Qg_{Bk>?VNsng3N<)@@>np)YkZhhoWSVxVCt0L=o zZzKQti4xNt>>*I;T zhml;5rH?Y--s@1V@A6&u@zgKAy>gb%*HIz$wD7}kDVJ zHjVQl%80u`k%rsrj zuzd>d`xM{T*s?p#Y2n^nbVqI{TjHh$))N~s3G_hGPBmq z_!$Xvx@W4onRRTAe|1Acl&a6WoL1dNe80r)bL?;J&6?RlSKeg%KCJh5Quj`dp`~%d@t#s^0cd!P=(& zCho(WnZRyqryVc~bG9AQ^p+@-em(tOML+M5b6ka~`lU;nUUxy$v90G^SE_zFm+vRa z`@D;vrKVVuJ`CE?_G+r$`k1C)8k(w)lz)A~zg|eyYv0%OVRCOu(a+|BmoKS$2=(9M zpRJdoN?V^w)j8ki{OmbR$G?j6{*MdSwzsHy>qb=%r{3E1yx^2`#n`XN<9-&^dp>AbD(1z#kfC8E_F{rtJ)W9x@V}O zSMiQ#h@$Vtf8ksBY$N8NUd32COp4R9lWms_q_YDs6D4>Z{Nlx?RNQ=09@QlCvmIcYj6S zCBA%DXu8F!Ocl6n2vhZv_}4ZhE3Rqo-iq$-ES^^1x%Ytvcms>FZ<<-z_kd&YtC0ga zFJ%U{N0W1=#Mb(rrZ=C~^pnJkdY$joLzg%Ya%u#)xj9SKPXZ4$z+e4bO@Ey0<|;*R zKFWQj%J~lJXL$3Iy_8ez@##VG-UPmGlKR zoE>Z6{EUt3lQJJ!iazfm-+xTiEn&*khC-$CwQ0nK*sAIct`xoX8AWeRqc6-w^IrZ@ zoyyr3csL~jSPFMG>{j*Hpr!Jy*4`$)mAE|~)>A{4roWcJcW%&lmwMN8uk~~`jMelK z^%`eGAm5Ko(VN$4x`X}54CcNeDn)l+&p&4J4)-4{)bxhE{YwSUHM~GyXQqI6z&+@c zCo&%;;#b8A&RGZTXD-}@65CyIN{sha;JSt(jGba%>#hTa6!lcY&8l8jq?~f!Y(`%e zROKFOEj>;>_gukaAx`(*l7sVZPbWm3U#YhkG{0Z!hVMF?O1JWUPH>bJO&X z=BDZO;M4Rqx9g(IpOlj`+SuQfvq+p}!^d34{9N~F__N$8*n$uXDK~`tI$v2i{JNAa zAeS?+g^Jm;jD60r`PgqF7d7*3(f_j#V4Tg%&22Eww`Ip$qcR4c+`w5VoA^KDd{l2a zcSK$Bd0-os>lrQQjrNQTiCREC&du5uP_HDv#3pB;CaGpC^I%KLUu8RS)2eCgALmZw ze5%BG^~cwKF@t{7KVs6^KD>xu6}cwKxWtZ8)?a)t)fYEQ#;H%)0jWQ$Rs1GZ>O4aa;GBqs2VG4Ck3{*}{y@2ia!SEOL^Ba&x5g}R#Rph79RD)u&}61&ys4-&QyI8-)eX- zMc;+r>)`N6rvtiFKeK0Ljv5KC-?P%KTB}At!={02%*dJee1z5@7b3s7Khg9v@VGu( zPQyM!Y`J9Jpr?sYNg=!|w$fQjyk)f-Z@E^Dv#>r-jhnZi;+32Q73J`Zk149QqI37sVZmMRm%|O z+^m{x*Qvp_UvnLl-_u!?AHv+n+JFt>%i*t@alV%1HpO6b7HA7rf~tn8%4=s-Gi@7I zGE5CAA#P9Eut6_Ho*Dd79INXrP2eGLQ5F6!B0|&`?k|)%F63zjZ%v`E08mFqxt!l7yma3E;0Uxbe8t6Jf%8rY1l@5w=#e6z*o%_x- zeF%9h{!~rqi`-UlaA&IC2w!bc?Uh4GtI<8YvDD%!A?;mib(O1u&Rp_zHO47C(@x$O zy14scB_fmb&)i#zBSN`_xDlQuI?^_L5)8~CokN-8kXU<%5Zj2>-BZbHScNfyck zZ!^c9p}F%aa@FAUTs6p=!@1L3zB@G6R&fS=e!R1=TJ%Kt$IB4g!xG-3jl37^aT@Oh z@t)b5?R(Gp#e3_@fD6y%!gce>i&&RIJxnF$9swm;z(KKMuFCGwqa=rZZs&SpzA5U7 zLBXz^9z9Dk@_R%bqt2@MfT+iZ^^EdNzrC`IdS?8<4<)^p6zmG3jSETE8%tg0q`j^N z#&#}aA--zO6Ok~|V4Ew3vbK2GcN`L3?@M!@Fyeh;IAmd*5%(_-g?V+UnVwqGwzmLgiE70s>U?~nW@h#JL|5EKHE0)je2N&EVw=ydXWU4uZP~lBhHK4iI1cS z<15Agh;Pl58Ge7^5yWpzgS96*H5>kndRBH_3j!CpgZH>{KAl-Dcv0q1)^h2#&VxeF z%eq!Fxid^6?p882!I}gT&DT^+`-)#XmJrrrW5uVEC z=ikm=NY&55%j8FU`M6D+;o~Sv8rZE~Sc*|^v9I2&P1K{z-QRTM*+SvBzWAnmFNb;^ zmpl7!v?z-nXAFt0h7X%B>YO$8fnN73n@K&HSHVr2KI{Bm6YpF=-V@$j65`40iy6_7Tl}?>>>Li1s|E_h28Hc{g zG70=DvcJ$p?lXqdmy@)!oVh0Vy&PMuFwSRSFWBy)C^NLix z1sz0ee`V20bnGppEY?!%&EqQH3Q}$o|4!{2Q_;2cD{Di>AEAX;O=XWE0y<;|@2ZM9 zV=O$Ix^G!z%@TV?yb^3ppbQ?wGL!Q7eaj;g@;AFumxe^8K4f2;x^$N-K8X95W>!o? zP98_y_{%e^6UhsW`YR$glBez~j*M3{<6Hjk#3@RKnqOogx7MswD&qc%|0nSOk$>j@ ziHq3QwGD@9!x?N(g$9eQn#B`%b2a#<6&=WV^e5+_9~UR2>K`0R(Lekx`U-S)ooWwH zE#tX-#2p=HpG(n2zuieJC}q?SJLcm0MReAkYH!a=JU?SR>+4CCx?G>;-Q^=DbQrpL z-l-Y!!;bUR7k~9HQT~BZN9s@Ls5P#`@wY{s;E@wL&bD>Vc)Km|=1rt!q%6`n(qK|g zl7EhCTLW)yeI`ZU6k>L$q;_;68hWG^q?6FV7E-G-MVDAI3b-+zB>kF7ir_kdboK== zeprd#Z9RSZCHm~ASDl{RbIbroR=CnO_|YwSJMcw3IA%xQcKq?|DBhCyD)&31@5>v^ zcXu4#IsCxkoq6x@tyg*H$J%|r{?YdbI6eq9I}R2^MAa?r8TI2rCF+1S_t$;#i#y#k z_t)*w0~|xB`&`Tb;!0jiT*+%4KjOU~@ZJ*gN5}^hZgw3k*y&nQxWyI0J3lJi=~_&F zfOmcdEcA{Y;P^$VvgSb1&f(7$?aZ6-Xna@%ZJqmQeC7<|RbHT-5i!r_jp&)M@L#wO z|J|m%xiKH+Jsmv)zd{Eb?L41K`GlCZygGajwbG~Xm;?v$jUA6Ys{Y%~wMt0f3T4V; zYn3S@oc75>_;x#WhQu78{#N7t>BjpP^63BY=NN+@(DoU${bBNl$ff`53wlP~;_H7; z`hNp`SW6$O83XD2eWV%Gzn%JjU<}`3T-FzCb{$)~(=~v;Kgzi6WE^A+j`7ZpIQ-X< z@5G<@4*E|2^Ij>A59>+$#?$w=Wp3zOPuh8b>+{hU@`f-5brqYKza7T>y+!#e(XDxp zMh|gNX3X!g=mf_r#oM`8|Lv8hm5}pA%9QO-D^pT97t#tYX#-B$*QMw+Po?Mv51{oj z{KFmj&(0Y`u}`>=o1&iqHwo^kMVEB#S!8hZ$!EY>a-YCGzGA*Y8+HvgyV6;Y7vL*u z*b_K&6!`}EmUnDTLrr>Ah&_3t8kLc|BzF2aQJG%6}7pBQ3Y@&@RIl;xl*8VkO( zBu7OhZ+HH9B4t7gBEhfeT%RYly_Y7u(1j*Mb)y^58iQ{9ee2u^9lJJ>IJ%d{RUTKA zo7!^I^a~HBaqc{}?4!kL`aR&TLSk6>%cV@>%Zcno{M|mY!U7!bA?P^a&l=&+>X{c0 z^RNs*<7WJArI8ayA~T*?68B2n2P4K?IPvAe!-n9ed<6M^@&n|H$$vsFzRQo1>PX?h z{z%d^(qd9Eu_%s_>PX=+agLFsX{6%tImDow6Z$B1>cVF`)QH)k_sjE$dyV>Yda32( zBJK^q#WEs+Zt|0uTJ|sv`P59WG$ph+VVQ7 znYJR6Io}{Xo8ulGPW^?2PkQ5-=8UMwqfF%MvGBA0atGy`;lXbYGdt#zR%uFa>31`J z84deKHOg{vUC+uB;EmTv9#SL8jm}5x$jb5W?gnm}@qu@U@1}AF<4xk#PC-9+dZ0LWk@Hic8}0oCju7h_@3L9Of)!-&hF>ai)$)={Uo_!9<(A zBY}PEb2~Ri%Ks#GcQ|_}_*^3PaEM1i*L$BO+<6+_J@BDL6+dIY_`l3yPR<0}^da9K z%RB#W(unn~IX}a0;$!xx&jbfJG-6N*9z=F-OFX<~_@KjE@*bvNKcVbb$2kb%!J}id1=5$O7z)0jrc){_!3Sj-kdjw z@G-;Yx&c1=(!mI0F+!Nme20u$ob*AEv0F9I8X4qWU4F3!Y$0TTib6AR3) z^Wc&sbd5?#nDaC+A$U7s#6$xo6my94+rY)KE^x8R2N&7j0xpg-cU|G4`@9NV94rvH zFdJ|o^P5y?{s&wD7w&bpS2pWdM)4 z(7}1hFSycy#|+@H5Zao)-x;|Zxh2>4JU9OZSJ|+#uhg0MNK%F1Gt1!DH`qSyeE#A> zuWnIvB6S;=-S)xGWw(hvjrc|RTmAF3N0LRhUt{zA^TP+>NA8Ah0 z18?#wyb0@4?mv-?sC} zZ4zUted7`Qa+=F-0I$_sp#z0!dQ0rMN`D=BejV@CPe|3p-`#Mz?w^W1&7_W&!CpI# zRIclL^DZ*MMlBdSok<;y#&xL2c(xlF!+mD4a`RA9FiHL`|9w_dZf@Mme&ueVOO~>h z*i=0O+7nC?Uo`vCpR|CBm68*a%T;wvLWzCyVPYI9C7d(l`Yr4VPEtoH8Cx#8!Y1CY z&teSO*BB1oudhqh(ZN?OTxqYszh>K;s#5tB*Kg*Gs$jo)O$zixaL-Wq*;Z^tt|Om9 zx*pu)AQ#-z0!^ytnfMm&J z&o^Tel(zrxp;;A2!9BMGML552HDu|VIKx_Y8}0m)DZqIPN%q3(fQilYt2X=mm>c2K zMK1EwrJsURbHGXK$bUsH_~%{X^Cjo^iCRqTzoX!v^@V++?j=uzu1w{ zE#^I;Ydjc+X)Gy|K&^OSfTIHMR(wXe-V`>AubZIPc+@yas z(4$1nRCNM+bOR|l|KD9hSl@N%0O|+92ebZ%u>L!d^^^BM7CA)iZ6$_a#swuR<0plW zTi^>8)$Lms`M4Hj<$Oik5NOc}A3fUSqetCg;$!fEz=XiYp92^5z{T0bG`%Yv5MS6; zM?Z3inU)Yjyh{^t-+-ApBPMku0ynAf90C*fz^inJi#p{CxEN@SaQflm1aKiRk>jID z-|qqw5=-zy>^=o1w#+*}CYd=M(1lm&KBoc`>w$^I(4}7y7e?mx1lPi=$lMP0!Nqq0 z6I--zhKbGdwvX9@PhH_vWL_jb>WB1E;NpA4L=w2T(FYed02hnlQ*y5L!o>|j7nuL# z{p%ucQ2SVcfsCKPr~DMS5dLNHf%TEtB<5j&`LKL`EsV zY!EOTM;}N%t7R^NvPV=XzPS*&?Id!k_~`FC7sn+N%q*v{LS2NPo_{}rB*eZ?x-^G@eqU&ouu-j2mL2X6KmC*G>uBs@tH zv_@p0Wb$+p@gvGI$Yp*uGCxh+%X(P>KeCZFrIA0${Oo0Zh^hJf0p{i~>1=P|UA%L2 z9vj(|&`=jX1x{@VQCyqg7175#Pn%TF<_`4HOffk{h7?&@MGn=7pLP@U=U@ap33@+d zQpY_$c~oM?okN~pd3fvaM-Ok!tAxjR4j$vb$p4dEbhNi18!ayA7d04KREa!&FZ5_# zVZW#$-2ag8&gFi4^tFx;NdEV4DJ*mOzp=RBH!knHyItOQf8)BAckko9l|}rwXlq^~ zGV&JW=$DYA@1t^_i>>Cj#&1RUxKH{{-jLS|7XYq0(+x@ zk=ekI`;ZqW)$=?7KMuoypP`J=_2k%5w3*OV1fZ*!&-l(`e4iwjee5T=79JoSTZ9$r z++V+*k9`mCq(S$~C|gOH@W~l`YdmFsKEVH-)%oQv`IdY~WHawK_PV_9?{*dQ{y5$< zp|c1;XEBGdUd~vjp`Q>~m=k?2FM+s$v(cwD&FxZH@Qh zHyMwwuBq_9Y)$q5e`igJZpYMRO^qww%6M*ZtYjP|7UQ$=8sS@0_j7*?-Fsln5QqPLSyTRR$eQxLyW8b`_ctzC zkFpkb6!G7pZF%FE+oR0$S>{>R(Y@TuI@-y##+uq1U6*J2JFO{0US=(cd@SpzZMt_I zwaZ##?cCCBJ;`%<_TPS8UBV6<+V$l%b>LgCDP!D1I2*rrT%{R(z%FpVd#H>HdT#Jg zKgP}N;UAB|9|fY%=uAN$5#qEW-=n)}v#%^Hx3DLytn|jslKWX)pMf9o@Q(Wew#n>& z*0-eK{#E!BYuWA_IuA~UZh6x9-q=*#qFJi2?K1S|PmH%$q(e_bSn~_G9!5SJ8DG93 z??0(`_7~j)=NkKq{qO~3uCohMbcyYdN*Y8G{qgj{>|=mqhXg2@vUlXS3u!7`J}p*P z7A0XLe{p7t9#-_P#BtsGK!{TDK=>H<+s)X_w{-4&AX`%^ld(lmSX+MB!l%LvvHA4c z3@c@$WNi3%EO>a%jo@%&++xe#!*7t(6Wr}NYp1?~ZJJUR|M=<2VizZPJ1rn#VHW#i z_XLbxcrWYn(dhWRWzh-jt8I5|?i0Uo8+nhP1T0K|wyNZ*(TR?DXzg-xVzcHYZi{0d zB`z%M5BQ`cjpII*`(m!MIB%IM<>cbOM|}3Agec|M*Oi@t=1aTkPfNSZWxLo%aA#pd z!J08_^Fl1nd8(yqczI#6hRi5)Av(IoB^en{ptpMpo0VtP&~)}b(od>k*4%uD^@$!< zi`bp8*N`z=ofG5i5o&pzd#7s6$l_jn+Quhk#i%Ql%fg5I$8$MrwI02ejAxRJrL;@# ztL(ar)!%2F*k?gDFxv8dmoW;w@))Uq!5GczHb!%}SIpw`m)ti-XMm+z_BX}vS?l}y zGiR8i+B?|`MMiDp-oI{zcaZUO1M{*T1m3S>EG2id{_5YP4@d2K9P84|dQD!&`8;4R zk(3Jj2@H-C7$n^e92P~#<=sQR8F*CKyN!qT1QfFu4;(7Mp}^vD_HDNUhYD~Q53SOG zJq6hF!=%8TB5)`$NU{fwEl&wqzDHnB@QC|8yY5{_LF`v42kT>fW9x%Gs}BbV%;ol& zoc;tb2W(kae-3BC*pJMKiDRrp?(vU>z>|9@=Q|h=WWYY|A$OKG@IQsVr_*=y-=Xhu z^gX_7->U_teEp94>-t@r#{M_(kPSRs0N2Two?#FBjJxxhi__&`Ic;?sWo9~-t(l`1dHvaNI|CxkK*!Ua$|GW>qZEO5x z)I05A4CwP0?}=@G-?Dn@$XJOEzU%jv%e#z)^y4kwy#TE+#>ZHLz00hOc_aU7qP^0` zX5g-6om~$?Uh~`L$^Pf8c{!KQ4o@1-1A|0V$HMcV6RVn(`T|a|vxu%`R zUQy0}9R1^#2hKs0&SSTj8ilQ0^$$wjccxT+%9*w#3;USU?=1g5^*`kQjr?Eah0C0W z`;2$k&+22)p;zs?wP-nU`6?a|-2%A1&5T}W7W$ak*wEC9eGc-3%DPTPHi{33UziFX z7mr_*c*&DyhuX$yp%zWK$%0S&bT!nP4oj->b~|_;7t}{tbAUlht#ozrhgX5H$p>gpUCs*FP?`em7<#w+FDOP#Q&l@ z)2?qiiY!4HHf>c#pP)@*OJ4I5aVwG2cdHg_qiO+X5Hm|`z4KSwJfC&m^!a~j`vtxm za8E#{jGgnH4B&9~*NcoKp zJN0H$FFxn_F>%N}XN1o6rv3aw=1BT53!7m%m$u7-Z76+^HjC~cBR>Y8{#IL6VTlFW zYn3s!vc&dm?cuNVss z)yx)S59$JZQU~xVdl$VqSJ(lpip(lyshkZ{NN3S)oWqZ@Jc~nqS(e>4M)onZ!<&bj z4sXu89r$Cl$x|TG>epa z`1#>kB&~>V7H!V6BcIGdK2eJgIue+lxaiuvW$aOC%uO6{o4 zcu-(Q=JYR{&wf{(&%^(i&j-Hi`E*ZDF>I)sv4uHfg3hx}TK1;u|I8Zkmx-;ll!*l?Y@+RAFGasHg(gWKihcd?0w^~I((~Mb$!N}t1`l|C;Wc|l{eih&TjpuU+Hucc#58ywBC_kSjJb42=O%HgJ58yxQUfuM7(DV#= zt|{%C>x0#cKCs{k#FbkV{f)+)JXQQ zmoME%`HQZW@q1jdZ#q9uQ6%9fPX<}=s~(F^!i(py-C47mu~M-2Kcreb3i$aZbFlNJhZj_g zGrxN=Z8iuAPL;d9%@PQi>}?kzu4Z%9_nOlD;AJ80ypWL2NJlKeN@&? zo2`6ovcQk0Wfup+0*)?>95}R-y4NXC(4{o6WbcEZO_; zS7h(!;RR{y-$3@>37-6jx$iE2i;U*w2eEx6_Wfq^C*y zN!{hXJ3rHc^>2LPK0l;vQIo$&Qe*c82>7f&+)6|oUb0f#V?OfhF=hwUHFkV zj&3w~2;}yR>t4Zk!Z*n1%dxHMt`i-`zeBO@ZLLeu{rXUWg=h0aUBb79VaM6bp43<+ z)YA;k)<$J^WTHbo$r|5<|5M?2+p+mJ`_{SmBM{xG=uH(R#3{5-{7ikHH7>f-m%!WO zuEn3b)#4naDmUGT4qy1)%iwR}c`rgogtv``KNNcf;d}pN`hxGZ!_#g?hidS=J{{@= zc-q_HY5n%UqC>3%Hy$I^8oVv|+~94a4PICH+^_0TzZs8j{*n&$%6NPe`qRzWc^_fk zyY_9SkMHf;zas3c#=-yI3-9}?$zHjA=@!=x;mN`2uk?A|wH@AehZ1e@!NLRYPy(&z zl^z+dQns#OrKJ=8_}IS3BJV}!62A8scD};<3P1X=w}~v) zgl?dfXF;rIWsFM$(mNS;m!V8TOwBEz{WB z>rTtu)4!l+p1bYf*Z&9T8EyKXNY5sI4LuwBH>PJAu{*vide)V16*^|nGi+kM*Nu*C z#qTC(!fz7VC3_b_uMT$6)BJa$SArY-bV_i7f`2qWecFkR#!H`|s|I~~(MO-WdYUiO zr#|R#zDl2Vpuh3cr_w9Xr>^?vgs+?1zmh&(ZEm~Lr62g{(*NZ7tw9#~uI6_a^P3<# z=&>o4wa}KS@NI3JJzd3G5nGLOz}kJR7x!cAPazA|!)rFd7c}5MvJtzRE%5qh;N!&p zz<#)Fc-rCT^8%vd9f!jLLbJ$4Cn z*kEVztwE&m*yB&Ye)#soTl4O~hIlW0V>{_tc*i! zZ>P=iQbt}!8jsC>9Qp0o8BZwMnuks`%#OYBOXO$hk4B24Ptvb|UDzFy;@Gp_Oq`XJ z=&Zcu*lVPbut#%XkLJ**mq-%5tke~~tmtElu**mxsUISjF!nM>G8ZyO_$n*Q#^1wm zcz_1v5KjyHmds7l4PIVBcm~cR;aedTc`($unp93|CWZO-}eXOFZ4?nOba%zF>14J8p0;1oadOP>j8AY9$)EUXX!AMQ9cD>)v ze&kfXJ&Jc_Zl>|=X}mikeV^+A%Dev~oLD|x|2Y=^;(op%d$gkS`Z~L#K@rM&;h9@w zz51??&~u5N_Cs_f!Z*3u4;5S@b-L4C6Tx5JCy+gYlhBLq`vl%S0fbr=fp7oPB^Dq&qF8 zGF#3)fLFvnq|k;2@MAsn*ux&dEU^cKhSt^vE<8sPx@^KWdN65@*y@u~v6)^$^4mn) z}dNNcEx3BZ(*bE;(fl? z@R;3bPx7~HkAls#ip{jYJ!Wak&eYPYwZrRIeSmE%ZK$OU-ur&o^A51}86tMP;&*+3 z?N2qG&xqYlBXc_peSpk&6SVB`BiV+1Zdv~0hQGweANKkYDOAlK@rzjl&Fe}l&j1(Q z?R0+>&UupwhJ1dLo^@yW2)-|VDqG}#{73wCh%b&-{wKVj)Dc~^zs_dpn!k?Jzggf= zY{3k^aA27S`rC*-SP^h2df-%Yzb<$jHepw>1e6OTquJo+lOU_8hEOX|<|+Jc2*3+9;RwFL`JOi{}ddVJwa>x+J2 zi{-q6hGmM)TX!9ID(%T46_ccG zU2MY)d$u@i!)D`4D_-`jflHYqnGf+}!g(K`uP@p~+uUj}wqn7~`CZ!f1iEKgo1q0y zSn#Q3UBH@~LYe+Nx6FRA-}U{`y;+OLz(>%c#()vwhbGv8O+OSqbRF8j<~_YmTd(G%G> zJO|wpUHgZ~G5$S-zUVIme{|=MzdL=*H_!Q(_YbZ-=iT=Yq)&dGjO-mqzv8;c?L**` zzpR(>?;G^J!oES@EAAUy3lHtr%WS#Aym!^heC@n{8@22DCw?BkIJe+kGYRN!64BkHpzD~8o+F{S(y(I_pMMEC z?PC&iYR2G;aQL<8Zw4RUk~akXjT2o>33{40$@h@n;9B%Jt)yJ!t8|j+Z|*@KBYO_J zNus}bgIvz+H}KA*+~3Q!75P!>@8DYe2~MEg?}t+KOmivs>u-v|>owHbPJWDpufpL9 zbq1rqxweS2sq{gi9KB6uoKKIVa&4zii6p=7#*Xerd>M#NCNbyC7(3@OI6IT4!ILDC z{B)dh<4jGQTEuyr&0~@|zZCD&-N-!29LfCn=SFlmX1@*x-a>S1vZvevuPwY@cm2&9 zvcG#({Y?+_H`{#ro6SD`jdm6N&E_up8|`!bO)sTa#;B!hEciaQURiguxts3hi|>oB zh8S!aBbPpH!Kb!W^ft1u>bI3M1BZf}1opbh!~%aueL9%O$^EvPr9PSXS@xc869Jg;%{2&5`pz-D%F%buy#BBb`hII+==SsSnbp>Lt>7_Sa?KQtFD?i`GUejB*yS=8+9z!=1mZlE}whentVEgNB=bpu0 z^Vu%;ni}?++Mj2yIm9nBi@l~_H{<B{Glb z0)_v%5)7W9j^9=|9=l=D&HQhKL*akEOE}!@hr>d<0f){1H()UF&xb*wz0E$FE9W&u zHzRr(6+i0<=wni%M?0iU5!-O+M_f+xn6A%^@|@kN%CG+JWbi5)`F;1e5iz}rH*>VbcGH~Hc0 ziYvaqlK0=|Y;3ppC-HvGgfE{l_WB(C@;T$AVDuNK?UkaF5I-Q<*e8jOLU57jD1_F? z9%&Qurkt-AxR8BPJL^^I$up@V&*dBPY#DSy-j({X)RSw`X-GSTSF-zb8Gb!Rcbm3v zmhZhbYAbv;YVp{l#i2J!5&2&J13xe^fH~!V9?qa0XaB)x+h?3V!zX}o?#yq`=eOgF z2X=%9@!Rbw*y}Cx>BeL{r0?==#^|7jZ_9Uc6iXFncbysN0|ZuH&v#ll=VrB{6A=F; zGA8x!+biApQN^d3Z5MJ|oZxxJriSl5#`s7bISVNBJ(+t$|AWk6_;CX^nhZQSu&fz9 z&|%-$E$^ZSx`Xp`=z%iFQ6@geedhwhI2V{1vBP^Fu+NV0%pagTSwmepSJzb^RLr~L zSN$MqJxTnmi$0~RUg##i^9=7VMmKbjG_8w{XeIyQykIEj1sy~9&*F$Vjx7;$LggQu z<$NG@&+^S3>he9Jf0{EzE&o0D_K5qjk-XpdkNocg(qq)!9)6EwPWU~cv(P0S4PV4L z#6_VAeZ6z6vR6{i9E)DH)S?^=mVG-}Bk+2%XD52cX3kNHFLbfrY+=kquhhgi*5qVg zK0-ntd1?ze{%O}3{u+H}5aryh=+nw6=PY6-HkQU&#B0eXaDNB6j9qcJ@e_SoSN)Ud z(y|zfBF5w#*MUZ#W;>1;c9nA+wc(tfL?1P~@3KA1@$a4@zFBCuz=gmBv1-bWqcd)n zzR_+E{c5Ctt@P8&&xWxd8TR>p^tb1pX0UuPd} zXYC3<&|Rk`v|e;T9fD_AAEE<_1jh)^+1=j#zoTwT`qfpxC4CcG|J5_+-E~}%SI}`q zexr`-O1h4&Iy{o*XfGY03(uLvQ&?L2IOcXK|ttIb78 z^0Tfz#`)u}^1S!#rJTX+dj3-6j;egGuNdd!Pfznqc=iF2CE^EP_MYX1{}ewlf(JIk zQ*<7UT5~aTLg`0$-d_6g%<-iibH|llUYJ(;>5|k^Vz4i02%LENuxaMIohI$nr%N=R znWz&$-5$Ktv-DzSAo0A3o%pkow=Z)3wtxIf8!A$M*FKSWdmjhXT@tb;(xi8uw#Lso0M1uDHH z{%ol!$VyDg^pYX}5h>?~J~f$b^FHakF-X;>BI`v+JI8)%8YyjkIU)U#B5=eB=Kf0U zkNJl7_xr!xet#RK{YPnc5dFDH?U(*bp&wU)4`5=Az(&&zzg^%NsxGKc)E0cY!~~24 z03$tsk)FUvATVMs?OYLf>Y^zCpFbv>z)L^;-;^xHe=%{KgW})au!^|JgDJ0hP_3+g zU(s*l9C?s02Kc!{ivGR3vOm5hXWqxV3a)VtfOj?X%$zc6O(bP*Q-E!qHo)nQRrFcp z(Lu!Y22Soye0Rg0eACSL>l5DHFq>zzu~f?+=*lK8LkaOd{z)}E8>$rS0;0>VIj%pm ziuxbT4J#GjY4YApe8Wua&lALX(DM7bR+;cQU8m^1)gY&Pad@ft)eGajU3{;qJ->Pn z^$rn7Q^yCH$hJYOwS^&3&ZqHFUHbhX*Rzjp+%S{pt!lXQqZUQ~DQzkzre!AO_>n)g zmUh<=KTIVqqx;Q)rQ+NAlS=`mBYP>QJk$G?cDNK>d_)VJ>ex`o9@wUS%8W_*5iU3D ziWt#rG|nj0Yg)$mhhnEE{+AY&vot8Gd!A<241e5%R4poN+sYpgRg9-k`TT$= zZ#>H_uAD*Kb8bQWd>3-ACVBsg$V6h8Wi1Ve%EI0`i?cb&A>MeF-({WRhm?q~{U0$c zvxoyOe&G}GMOkiAZv23CIE48`HnH7^pYHY8T}n)&_1IqCICZ`|U8JSE!hcFi2xD#7kbqU8Jj{&DL9-|o#c_(@QFCuv-H%Rmfhp=gR zFr{)duz-#}x2C;w#w1|XUB!9lYP(K*h~3ev>=XR34;1+MtzG{VSt^oi_LFR%nWD-r zVpFtuX{n1ir>7RvUa$Qg^Dw#8RsHJBid@<%|4)+tbJi_s|EfsQ!{!{|+`JlO1s54H z=YsY>9{KxEI}iTK+Lu^Xu{Qbcs-rV2+)E~A>{85f{xM_HQr|g9Vn<9gDV5pyni%@Z z%nJFpnSPt0Ip+K=!~lQMRls*84peXQLTpgY#8)^?|8w{Mn*XB9kaF4)Lp&b&@4xe3 z#%j%vO#_^#ITy7ATZuX)*tx4q8;%o0%HM`0{(lQ~k3feffpePg&O|-DZ(7Uy;v)zh zAoFO|il+T5>jR%+5%rAgan{W#^lk3FN@eTTaiwb+$DM;uMz%eu=yu`ajAaeFXDWIU{%M1Whu|J^O=*&>LDq27im1{M{_{R-*}V|l zkod#WhW8YGUi`@oIP|D)ov!GM*u%TTyiUR{r7ZE}hG4$4nr{b@z@_Nq29%23)*jvo z#SS$H{ZCVmFlYU41z$tNzu`Qo)ZIfr>UUDcn9t)pUlZT2zcr|I66<|luP~?kIYqCZ zpinp1S)ZoRe#Q7lQxxSx151OzBlTN(pLVxDLs_Cin|e7VhGG59ivBolsJ}tclP}~~ z*DdDx-SU58=UlH4)8~%Twi}9W^SnvX+#fgbaZ4Xx+{8Xc+{8PHm6*g@H0SsC!Q}IKs>EwtHOBWM%AgOH+9h^kD)+G^s{^h2BTB@1 z(?Hv8;6PIkdnFF()=N7s?^SdyNSRT$b$V&Tt#;(TAC`L3SX;EM<%LP5!_ZT69=$DD zjdD&wH!c2eLMStHzkvNki35E`bU!{EcYd*5Z@b~}ZGz|Q@%ZZHJLhPp(Do0|*$a&l z8FOri_=&NUo#5Z%Z*T><=z@~)KRCb8?0OPA6_H6=z(H>iYyGW~QlDl#43K7)6>X9k~lWl*;v{zN1?;a>3ZpU0x$9fO|C6W*9{6@6Yqc6Nm~*2EX@ zd*h(>G4QU$K@;6_LpJt_%$e}6@~+HB_qm{+F&Ae!-`;<3Ev}AAj$;@b|ls_LP7( zzD?gta=d+?EpWOQ7zb7xpvPu#>`XN%SNv^W55HFr-X2cga%-Rrh6l5}43k%r4nZlk*Ix@wAhm${#h5iHPMPS1Z7Y*0nA#j53Jr+4aD=RO2mRK+Y zjo2gQz()Da&${wB%gZ-Uy~R9>kEXrkoxq61ei5Hc;;V@>Bi3grKTY|w_+r}FL)pI> zSe?&&vj1s&3O`aUOENRU)G!PFwKJY7@W$(GIcwLOX3;zl)7#I}} zzY|_S8`8>M_p_dfi*_nP^R{6>|B^E&<@kk?b0y-Bs$31X?xS4VR8E`rLd(;G`Z+WB zw+ElgR@G|37Bl0C0;lBGrqgzPH~;nkYrxf-v8vVM!T;!H=(rzO2#(k+KG2yHnTsG| zHP$I#6iOI#aMP^fbv z{F=lYa>Li-pTL4}NC^z;<-BYTm$N80)$&b=({)s0bwKaMzwig9{$;;1nc;=Z&X=>#jp>VBPAYz? z?&bW|eVo18MgM+7*%9&+!2f ze@v9kyjRNoyW|qHG=AwGXyPu{VCo+smfJ33j1K0VYq{@9elO>$?&CbwHtcg=#vW%S ze!F*|^V&x2hF8#uJ&Lb+VoczB9$#6M*WurLANe_af4>sFFYo2-ZDU^HT>oa`q{M2G z9_iy@&TDI$R<+7xuRMbto|!YvL97R%%SrLj9xYg98EeQH%Oa0s zv?_6$>aoLH#TkCtE0q{20v7@k0waF75IDISY@}WVHjV=uXI_Ob_txGMv*lmw={4L>PJTXbW2`Y57RPAn~?dN$AUv{2KQv=RRm=(gx9b-QwP|S&BPpRf#;Dpk`jL~m;Jt8 z!0;%NoZCxEc;4{A7lBNZeC_it?9taui{U+BTjaA|KHQo}-V6LHyoh`0ewWD4;|lh> zjw0ik`PO*yVt5&^to6Lh9k<^lv9snr z!KE$}{}}{cm;XqNH#7g)DC>x}OoWal9Vm`W<@v;%(a^KL&Y3(L$vYDdEH``v?vgsR zGn{eVMV)f$%)`ifER~InA-Mj7XS_1mhj+u2uB z?B9mk#O<19iZF1?L2yeuNobDvjA>y01#d}g?60F`=;hkjm#_R2x(wmL> zl=YDe9L;2XNSvEVtc#ffJLDO_QZldF6%<#x(l8CHtRz8 zu&(RkxAa^1Fj*IWB$st@iFF}-n5>KQ!1E6Z`+mMIgctkYxGqFaTjg697U)?zJl;ef zk7p75Z0Kf64B2!Q>*80wb#WgtnnW*h5nNcy`W1c11#+)Wq)%Cc1)WHh;IiJFr|aEC zCqfJoo;5+^TchlH7;%|uq4RQ%um;|El@?MZ>!myFGvH??lcRYS-^V z$CgaGEd&|lwCKu;rtLC?RGCARHOMAwcS*e#MK=fab-Is|t07fZzBO^g;~PqOFPFUl zN07Oy482;D$y{Xx=ZnrlJ*Ql+h3CZx&Tn0EM@Fv#b$W!RL>zv2VFj|-nppJo__s}u zP$H~K&j?EjdYWkkvD49OWSEpWF=^(km{jvDBNmd#ucG%%S#sTFS(hj2!$#ge!n$l; zfsD#Or0fmiqlVJ|!}NP^mo`YuPLUH^(E+uwk8|K*H(XU1>Qz#jwc5#H!R zii+CH-0frTa_iLDUyLBX;E&v&73tM1Cz85F&+|x~x&^P!r#uq%E_J_0-H&3EUf`(Pr_$G0 zKeBL6(VfWM@=~`Cd*Ib(%oBTdDgViq zq0w!Vb_c%d1!?=8TGW??l=1b-xd zv#$5Hw9=u1-UDVzwrnAbS-oPize z>!$Qe?SLFT@*wtTi&v_fU;EU47SVTAH1>?@(NLQ_6#h95JzoX74_Tvfo^2WY<0#50iWj`b!>Z>lym$%Hv8uLedlO=toX? zaV2AQEs-|dCAbxyOsBz$@)dM?33 zk^le6UQn81jnZZt1~s6(vBBR2xT7Nw-h70?xAG7+$(@N~w(Kw(!VYY|H>X{{hWRmV zJ`Xqm@AWa?K2B`AMfmn0qZ@a{XkkX?@8g-1wp@U>k}*kl*Ctzhk(0(?$D{8;i{f_7 z4=|6xrUfmj3Dc@d?|tFbp~q`B-77pOZIW>i`AgO{ejSzQw+B};??0gDgm+7H-5261 z=_(m7c+4_z&vCXUa@n0XYc|O^<{0pSfLC>Vld@?~C2|}#t4c4<7!}%Z`mP-w9b`^R;G`&oJg|*dKmqk4}sIMe06}P4I$| z^B=;I1zEq*+`%npo?N0{(Y0QLwrcS2LSu!-_W&oYtocivn;(RnScMEByofKnNUY<& zO3s?1?LQ)a1kdeJIIxvg)p;&=8i@}&^IpY%_6GgFG_&&-xr2L|*055(`6mCn@_hb% zdH9m}CjY*?ec)R~3U*oU+T@?f!NKr;8zjyTevp2Oz19yKZS5Uva<5$THAUO1mn0#x zYd*T10H25%t z8r&Rb6W3!OS)IBP9g(|JH}q!y>JZ)?y3^V|_+Vok(MI+dW7t`fd)R8`II4p-;CcMV zN>aTXchHx}*^=GXI_`*g-r(l2Eyz9Rto_a(Lys)jyq-5}1Mq(eOXT}r=+GtXSPeNx z>f^S11K?c;bVlA0omXdMdtc6?sy$1JHaKhsxdFMH5mYx#Zg1ClRc=uuNF(P}p_iKC zYs?L(q23VIeSONTq8_=MUD{X@-YKVqzU`$AHOyfNc9Hi|-_5^BKQ5ByB54Y{znib1 zktO&VyhmEO^Ys$xgQ(*owu(!E+CJZtU2n$(#U!UKRFk<$a{F7eqICKUP(DL3!x2SFCnfl0~8oz_J9>AJ!&e{*e?+Kp*+V}vz>A%AB_=SA@ zYPt{SdN};|O<`w(wBp8QznoKkTJ_0qYVYcd;~&g;?!1lCymP_;xpPS9%a>`t-9sej z9N&7MdEc#jh&cQAe$Hhn?&qs@iDRF-#(JuIHi_IFxCnmsB)pE?A-J4p;S0`iuJAoI zHA|M9(Ynapw`cJe_QuCT?!NWHPtaP=tPGrm(+W7pnZ)Nv-;sX(VDfX&(M0qbKbY#R zNjLaa8o$;CKZiae5q-uoXl85H=z8>A>+ti=fTzBfc5xT|L5GY2jgz%4IyRA!N(??Z z5$MlrphdDT$6D&=xXqflWf`<=40q3CQyDBiH20By9{McNYsCWJqdP1|zkE8b?BSht zY$;oi-8UnZlV{Y=MlZ{^{97viN7vqeIiS7C z(}J%})eQ7iZ##8XYoUv7-)LR-0c;7GkOT|&mfu9vUwd!B* z(W)=5)T%GF&*(0D-c<|x9DC8P_n;qNDg0;C%8akH!8g!FodvH1uZ!^s@n${#)YDqs z)zHF0SId}B|B!E9#b05cxvW!e;LMpnNAi9JUdyj0{NM_7zUMY;)#p5y1)NJU6wgoh z%NLtqJa&&@12Q>2E2TZO>c9Q7ddW6Z&EbB;r(eH(T zNX~6fXHWRC2mAJBtvDfT*{fdI@~+)iui&Deq4E)_rSH4l?d zYzgI>A!ikEm3{3x@}wQxLQ81up*r?Tp}%sc(osUO4fv;Id(@G4P5!mC4f#U54`WwIO5cz#^jm26Si(P`(YNf_ng4;k z(vDpr(`m0ffn7oRrD6X%WN5nkGPHRMkc3TP2Kry2&zIHK{3PsbGmI^wggz&|za(IW z(cj`{@`FCNi25-7rCanl$>e7_1pV0zZNBWJ&+ygF&aQkaw48M+wk|*Ty|egciJbra z$^iu#7UU1s?72bU+&F7>^d|0R!p683-tIZ<|8ghO+Rj@YeBE=bqiw7s@i&@~wie%$ z+V6#|web(s@_u#Gh}?H4_CEZ@9JVq1Vv4=YT34}CoC8NiHu{~d0-3^Ls~~jQDlWWj zt$q&sL<96lA_rbVj{whk%U)56y~4nl8L?Ni#Go;^bb0A=oIE@od0e5x&muuvZwcSI{&^n{T&Q$eqBlr%C%O zIa56`^{xEzj6?0cZP;(&7soSB%NQp)dp(jdsEiBUB5T)Sry0SzW^GFumuG0zm2nB! zNgL-_@NE%UE6C*KSl6+%RbOGf7bK0G{5HJ zry}b!Dc!HRC;CtEKae##4sh8E#jfI_35WT9EseE|Pm0)6W~8spH>a=87kcnL?|yC^eh9LTWiP*)J)q$GiL#g4 z9P4_!tm(eLt?Bcu?+Y`~pRcc7+w<|$@p0np{E*sq_&9Oa49@Ox_#D>a^a9rQE_@C} z9;};2*7oXn!Ry+!jgNV;nYAta+F9q?uIrcCpEcb>@Q~2u3wWNjy&%n;fA=ll%w}r} zQ~%XBv#-N9(=)0R-^`Wib$v6NIDIp>I(#$xiY=0{8^L&&`ajigu|-SU9rH+g5*#@2*L_cL z;6QEPyWOa1cG=XofO9|B`~-a!d!x&?2yeQk#DwnuKJ??zYFE6Zk#C>ztpXXR>?Lb; zZ{pJVFU`1w@k~U22oHU(8Mtu|?ei4-6LBG*zj~p4&w>r;P9}nbmo0|kUGVtkdi>`B zpD*W3oP!R;iM#`keU`mP_L>U#@@M#OVLIQRf&cGdsGn1jj_*J7bsj!J+5mr*dy(}i z`iyPx3gV;m#)~yBUVfqQ@~c^^!pmRHL8g0~f2r`FUCp|4@bHVAJp66pU-9q%TljL9 zoFKm1^;z@(wq5Y=k?`;6Xe|%IUv1!@Ab9sMC!Z4*g?=f~NkJ6WF{1X&L9;vr~+pYOw(BFdKU2@-4!)Pb1mj5xyY@ zOTH4hNo1l6%?-upkt4)czvLHeSIxtV&-P%h!Sf%%#fu#sbSLZ_{DTjC?*ixkAoSmI z-#htt&V)~acX*z>>cM)BBQ)DZ*R^h ziFzl!_TN#lDcq8242>$w(51WhQv-U&vi1WDWGz&H_p-+|^WuLdaQ|I!^*4E^(O=3t z(#KkPr%~mKe<$xi_b$_>Ka+RTjrdiuu3hrZzxY*cuJzM&$vjEMI(}7@D>9GxRgJFW zKjON-#Nj^zZzjCMP2_^p(8IcZRra`AzpCSP{Hnw+>O=S&@gF(na|~_1SHFlK7t-bMjf&(7hhQmrD4gCE&r7bbPFwe9~X}RoUT_{>ravUfha@ z?eIx1zpB#?xvti)>J!eL7r&~_fcRBCh75EF8R$UdR)>!CG2|V1Qv9kG2Rw$2|400) zzH!JvFM5k?bO_mK3Vu~~c%>qErMiAqb@AvN`ishOzv0ta=-huQ_tb-TtSk5Ubp30& zNAUHsCA?VH+_`k>hW-oxU+c&3&6#87H4Vgua6;$Dv*vzCiH`Eoe7yG7jUKEyx$DWb=0aF=6)G}FI_vHNIwH|Ch)i+~-}*n3 zODb4EKuevWk0Ptv_R3`Q(rM8Alucdfmk)tbBO1NA0?+F&HYv2kKXJ+2YT5 z+2H5!p+Dr5Q8aK+?gckHWfV>D&LN{@1Zak)7W@>VnmT0^S&!Pf#SR%o>}K0pck`XT z(&EqP!X@EDDp_|wuaIC+ z*IId`ZW`qDs$KD6$kMeu?KNZ~**9d*khNDAk1Mu#cCE~>^(z+sJQDuggilRJ zR+0af#HZLBKJ{*ViaX&`Tt(Z(cV_SGTA$)l?40tiZ3Sa@5}#rdHY5C$Zs{O;-KK-+ z>C{1(=wCWxDmn<44|N4Ph<@lGH0W0aKE>r)ZC`{3tLsxNa>_Z{UttuPa&5kav6Fwj z;+$h=k+L0Qm*dbsR2cEQFxK*?l22r`x^jujS5*2f`WNZ9=wC!GxeK}Eo?E`6P1lsj ze+v#@Q8T_ZzSym6buXvTz4YaN#J|$Lh+O9C_bI3D#YDd&oVpjIL-$hKZ|3xOzM>BK zOy=!BkV)W^s=}PQCy_}a;mghNNRgUf&Ru{xWbdoXjNX;w(UoWL|4qdb^!|qCl^Jux ze>uzZ2%g0cB4cjEFO|G6W6jK+`^Yan+i@>mJI}6OKxJFcu3}3Ls;5mBJJ=3ro6vQk zk#cU|dF)&0{~O8Kef(oQWhC~kIoP&V06$>ga@e-8ah|3MwUrcneV&B@v zoQQqv05osCoMR;Pk@{RbiqOeZ&a;nPd`B!g(;#E5eanvjc3bqU4&DPlZn1BblSk}Z zE1_>Y(f8Paa_IRr{_Q%QaPr~uI=Yx*Xw?=ctr8#AZs|VF{eia7xS53R@Dz^|w&UG{ z=l_;{3mR7EUynbwZyB*~C9HV(T12gV>jZn3v{~$1pBX%Ne*-SQ0$fX5mH#vLH~$pt zi_J!?&cBBKRBTx;JJ!#}J1kvI&7$t$oQ)%COT2qv-}2w^O2AN4GfO#Z?`3G%H-PwL zi+$^g?P=_+PhoF;61(d#?5|JYWAV70HQ_jyB8<6?zcBm7O6ci1=34GZI1hcbiX9U> z)^g6mdmb4~?!k%-*Q#1^#$5C#zwLA=d_Ts?PAq_;y$XU70TUAXMJlnNxu>;UO9JSvyy&2LMVMoz|R%ga`znW zMbPQj3c^s%F_b>J?to}R+j|4_%Xa%Yb#ex^wA+Ozv9xav=h3}MducQGIm}u6iI-Mr zVEotk)NC5^b4|1A27y2SJi@>{7_oPouqWmZ>|usZ(yrCek5i4b!Sc_P$Xw5|&UcI7 zC^Bj^@8^+GFTiKslj@y6kvpnl8)zGI4Gp5c_i7MTj=$)=?>A^JYv?j-?*ue?Kw87* z68F3Cf!g;2Z)Okc1Ap8ZzsQ}l8#?ad+d2Ea{DA@QJ9yMS#s*PR#=!Tp0wmr4rZnyD z^3LyT)cne|2Hrp7A6(9u48&(=r`cM3H93CE6~+KR_OKyooB6k*q2r&1O=<7t4|!~J z{)|~u9p^Pv)4xrur!9oCo;G0@mi2S({Z|4u!IN($UU>1%@ZvoTjo(?$93C<@i<0ws z9Ob7j_P%OtYWZe%5q6e_4jacc>NxaNQT`#y{l=MJc=^rHI614QhoMR3&v7%h6a$TW zcFB2gP*Hy4nh^*6Q?y1u$8~kwyDW6?N^&TBrWv|ts!YP?AclW8Ts&kW%91qVyYyDv zlr1u6JFT5__M-ZiktATOWCA9lCF5*EUq)$vBn1ELqh?h!VDvP4hUL$g%Y$JX&4 z08eju9z5QY8st}k{j)xM=MM56g=VF*HiXVgTgA>E_j5YFUgk9}|1xQB2H)c}^KRKI z%h+G8*m|JGsly&5mJK=ex+&^09(y>cE$J~>6*!aKQq^3R|z^TaoV za|{}vjfG$1+==m*QeP~6&rl#X^e&XaSrWzZmr@T-Z~IZe51cQt2S11VdGA1Z1$_UZ zy;i+|c@f+83vSwgcc4w^ZyKGw&%NLozH98i3!x4Bp$+g;xdUnUS$tC;LbnxGt{)@RP7p5VV}gLkF+I`n1LN%$S0TkK~Hh>8+>_vZn%_U_xl{+0lT zuY-4J!0&9`flga@txoELI(F`WKe2QF&!iDuSqnpeQ&;vUbvkrq0S;YRSJuLNztfd9 zLsy0k&3OiRV(JIz%C^?gl?B|gt8q5ELsypC@HMBdj5`Dzy0Q-(y0ZSQT)MK_Jhi&A z1`b`>uHL@+W$08-n*z{{1%_RiQL7g-U#(ek9(iFK{M-ug^AxgrRcq|);8PRk*@~=t zwqvh?iYL+E@-6(C-|n}PI|F(FuDy-B1k_x)3-XyBg`soseH6Vo`D)AaTJsF&_MW|` zZ-F=KTGpWGY8_|ya>tdd$LRFhvwJ%_&+aX3pmoW>1{UtH@0->{{DpmA+E=UZGF7st z|BHRUD#cnY{N(MtWM}O6wfv;N!(Zz6{G?B%_|m#r{+OSX|BP?vCvU<}%Kw0Oz&F1+Qff!dHBwW&MJxLEW%aD&SG~LyZtKuFP49d$ynjn5{}OIO zXO)M|eiiBOM`v}A=S=dv#rt2`>_7bvZ1$g;GP-|)-Trt_=F#y#U@hM%XQK+=DYm^u zKoWfCRPM5nv!7m4A2{sxQ(5E7*bkH5&kLApY+~79^ov?V++*17w-KMmKY|C1eh$7f z51#X&lkb$XQP0F$t5>n-oSUZ#1P9NemnlPjJ_(Lip|1_~^3J*RPVWNQA1aZ>&O2=K zfzIeXgpOM}8=L3EfbZzN9X^Bd@6jCW+=rMO$9&KZ z@09p09TVdmJcFF6_}l#jA2{uW0k`ahmEdVz+IH@4*Zu3irAgPkD#H?M&ld@y?yKMQ zFSrb?I=QC?pGmQ;n%4X$b~Ul9>YNE)YgfBtO(E~MpLx>qH*TcV#mEeqP97KL^e-pbJ_+OV_kTdaqxn8s6d+=2>vWUEAGetWp(*BbVQrbmo%1dGM@bmb@{g;@MeSI(FVb*4TNVKfSmd$a;m#SPL(`o zHLc6-W%lDA10!YLUfvJjIeGVUehvQ-G~#~(Kh9okJmCiR!?0G`x(=}7Wb+)x_KyE&DCCaqv}umg`OGR%Pby+Mz{LJH&SI5cb=Q_ z9H2C}mb|+amIh^XA8!cEE$_O$`vil3Zssa$v~FmeJJH~iyOHO8z+{6tcap(3cZ$I+ zxAj}r=r{H~VcP*%cwT(q30ouJK43Et3UAkAhoMSaI#GoHhhCqk1_CpIUjc2)NIe8N z^ub7d5YY9*k@^JSjl6Mc2XKb^7B3#B{D7`NAt2{8P1^s2Z4uyaAEW+eAFKXpAE|$l z6{}9zV|0yj=i4Xf%LxMy#@n6-_8pvQ>%BkT_TsXMsu*~ZwrOi-w!-3B*l5XQH5f>?PuG7TZ)@7Poc4bLcu?+;teI+Y)+l8pz8>F8dv5RkDCN#u zG)}!roIQJnzUm8QEBV4|8%3P9f2Qs2*CwjF_?AeYb`XxuPSSt9XM6V#sAqMXCbp8c zO>FM8#g953wI`}a7IEf1>BiZ|tIpX|^d^fY>W6?GOH$O2ANDOgL-<-|te!@m4Vjaa z#`~zuQToaw{cS_Drs^jMuROH9`@rmR>S4yH*gjglY#*bKrd_WuPEki0s}P=JsqcH* z-Z*Q5euno)f%&_Yts_ulpQZZ{-bMSy5e{RVV`$Sn-oGGxlhD0g6PpKZp9HL@ee(&E z@+Ru1I&SY?&i5rezYiP(mM@M~UjTP3o~Spqk5a!9*XjuKNWQPLQ&k3apW=OMcAB1b zG~U+6o}|jD_wPLS&YYqWkIuA3&|V+HeWYCtNc%PF*-1Eh)w1Ybq(8&^XY}cxJV(&Z zM8>``b&Zs^^SqPLPMU4RN&9_ib2)Jp_;j{f9H;iTZ(>U;9;v^|_tWs9v3x7yxe4tq z<$KnW(W*T#Ix9vm3)e9iG0FtY$r_~}uuoTqvc~ES?dj^WeVXd^ zmKMD^Yn*;Ed!+tJ_AJ$hevYxHs<*Ra^-g?i1eC4Pq7MOY0$ISkQ=HfA?yYRBrFwu_ zGv=Ockntiu)P?<^9Y273o-Nm@4lUQK{w?2E2`x9M?T2UE5`l$4i*IM!RuJYMnQi+! z&m(~Mc|Hb|0e(kk+e&+6bT1`M`QWCuyLeZ?MBoQc`c7QlV@+-TLz~(>^Tz9?J+^l@ z4{2(PT{K?rvUt3n4A@Dti8S3vGpNNH)v(2CfROws+jbvNVk5;c>NG* zhmm$5VQIhtJxFOH<`1P89KBkGhL7P zqQ7k`^eH`il3s4|C=BNPKKo3SotdV;%=2y_Bs)ewPZ$9%56{;1`k(i=$yyjs+$-7B z^zwT$y1%`G5=guclb zFCv^ObcV98^Q{Np{7FB9_rByE#`jIMQG;IeApPsa|LEDb@B+_oXHQqdNV8VTw~x}F z%$ls7Rpn)+=>zOB>J{*9ZsrVqM`p5qscS~}Nm+6F!K_sM zD(TBfZ>5~;*$L`t=4-^!A+~-wgKW^ zQqpZaI>xp(C)Rd@y<|hyNc~aLG=fHyviBb6`4{_SRY7~A=xbMK#ylBQ`U0c`xI%gJ;2s-Jd^V`y2IMrX3^r_AGgt@opyE1NmKp)$+ zxxH*p@GSL8`nZFS+2ZF7wmnChqX)*?zL-1Ow)o(5Th6?xHlL$?YymmFY}ZKt+0n;r z$8rYS?&f*<(XqCzIinr8=0&~)>bV5$W*lGT{X=l%R92F@PTI%W|E6Tk(7W?om=&*g z&77uQhprFFoT@zAS))%uBk#*j)Td|8R1wVM)Rd1^YvR{KKQgi>tF_salqKbWI*~a` ze>iKl-Vi*wG3#sfxQD-f`Jk!r+gTqe6}Uo`Zg49!Cht*mipJ?9H^u5}XC7CRW}Q$Q zHpl5-div{|N&mOa@%qWn+zWG4_B;3{;hzR?Owi|V8m)U3jnPNJgM8MqNDX6;tNPfZ zFsx{-ehRwWiS|^@G3H*JW6BlYD#guT{}>u4Jl5;vF|+qw`KD*#XYT&GB5oLbPbhKP z;zSjbH%*=VrdQz=+Hit+GyC83d8z7yyqT)0Jy}`UvsTcyA*4@$?mT2qQKi|v3s2;Y zRHvb1XW%tDEFQ0d$@ehzp3TzrSy5fX9$n9ag=_h<5IPWxe`A7baVH@{J1Q& zg>T=#6kd3ZxYsCq8vN+uMN`xl9qel4=2-o7c0{2+c(QrXB$X6qS1U>1p~HL?PPif~ zL3vSUugq!sVfbI+#jb;g4UBHNJ6Uhjz`fF}IMtc(N8r(ov-N=NG3tAZvGB8vsd_tb z=(NdD=(RCTFD2g^dou0a-hI)csp^;J8QmL0lb_n0uD`!%jGC1-T`#AuB^&9JU#~(d zYijbMnaY=b?_89k-XZ^&@CpB<-KQJ$DSQC@eTDWsxj9B($~c{*egl1+*I}MIAKU$BFflC{(Rog`1LN_fUMDg@3O`^Wu>V=+Iu{EvR)u{G>a&VBTw*> z1T}ZjXzJvyQ`&ib@htVWyf=q`S~69=mZz)n_G$Vl%l7W);qOOerK=KAZJY;M8BsCa5xH@~BzCSZnUy?an{~3OA9W-cXw$QLR{k}~4o|&c=!$$ z^}U+GJ>0a(JFsU9k9fX^wXiOam>Tq<8hLoUZ4R&k_zYpi(BD}RCJllFOay>pe9S0%n51erEp#c+I zdV`vI9_Rp?5Z@FXKr?gz{u6HO#>(GB6p z=VngOP4Lu?eTn*;yk(6Rp7+{8x57&wYq=*)8Qt4LkK8tn*86OnqzB(^jXqyAS^owe zt~vE}q72vEihSpZ%=!ViFv1?I{|s-NoIP7zgZAFFd5XT3xjhb)cl0QHwrHCE)5hs~ zQ_9IB&J8+viMBtAq;^^}5ZR|tQY*R!w> z?JDb=(fvopx$VZu`YHO@m$9{EkJrQ53OPPyO_IZ(& zb?EGU%-j2fy$D-Ed&)R#-eWQK(f>`1brI?Ap)V&pW^_NyxQwBk3(UVKX{Nn&x?SSJiC#vE$}EXfc)EMX~0ro z10ebj!KJ~#P~m-vv&N55AI0@mZ+6U4+Y)nB>(D1vyZ9&7+hLEXbqSBD{T-iDUnf4L zQo^24vlE_BejVnj7NLXH&9KK+qqwWB4PM;MUK^Y}OFskud4+vx z2s*HHZPAz6C+j!uDS88VlKuAC`st!L{ZVL~tdR@M@2*Ypdih0=9Tc`P7!_5GZszlU~~(oQRBDrnay#PtDBJ|KL4(F`?%uodrTUg%xun>AhCLwf~(d=2io zrIa~rQL1XUXqqar$12fL8R02rEJ{=9vr1HB_Nez4#i}ze^eJ>h|CkN!?zR|RPRd8B z1^dL;vyP}$X8hi~UkQQ9skS?}X=uzs@7PhdQ;CZ`FgOEoT4t zAo&}02K*14wNss=E%l%UH{o5U*vIMRlv_z`2pOw5)0RdU&cP(CTj4$;u!8`YG1xL(qx8?VDihl96C5 z6}$w`z9V1RfmCFxSvIe4k@ud7w0&~)Y1_v+!_e(a)VF`p+jbI~bLZ~fwiQPv*#7x! zg00EXR9jHaEZY{!7)%*mN%u6gMezF<`y{;s^~@vAgKwvy4RgT#;k*ltY)ZHd91or2 zp8ErQjP;;G#&^%{M*NU@QMTp0uOl4A+#a@%)?Y*ZI*OihCvy3btjVe&`pqBdf2=)D zbwGv{KD`s59UN|JI`2vH54UY5?9M*$@B!V{Wp1Kve|EZl3R%56J57zCztRS6f12&} z&wJaX?R~-7&-dxJJlY#LC&hL+Bhe=E?+W@Jav;ri-`o_NiRaOb!Exeq+0TD~z6X-G zl=yP;JxHJX(f>ZYN09D5zAYz=CvHFAUneYQ96bp$sP|*io#5GnG@Z!XpJzL9A~&}p z?kIU$@+>;uA9;@Bc^>g&NF(yM$S6CA%K}CKdq~p;ekGK7Xv+6DTNJ7Z@E~vSP2`aW zfpBoB+F90I`p^@;=2Li;_RlSF6#a)nE&A~MM{J!bx9n(dbdf`BPdxLq?JD$RURIK>XydOr?uB#F zjm*!PU^^!LV@<9HheWqF7F-yJzN0Z~@hJKCQJ>6j5_P3fW>x!)?)`YrAn#AKQFyri z&rYxnL?^QVKCX~8m_}KX7#EqxWz=)J5Z(uT+mC#92w8PW)+}`eT~&Y5U5@HqxE0;Y zuaxz6%T4M?=2X3ud@pC|>H_1p?C1pBoSZSXfvmr8?YfHO`80dqFyhNd=Z+rfCGWHn!#a{S`4ayjzp%W9}JE^_i%ln0(+1VzR!T&=K}PxEC)RU_8)^=eN~oY z;<*veO|kPB3SBmzQctaL06OGg(MPiW&U$X|{yn@^Ir_azS+n%7nKP-!jNUnDhoQ>t zux@J&ytuoct>F>fHWwQF3GZVFPca@M4z3zQ)Vz>IBBO7 z_c-;X0EN{5DP?C6wkFSJU;*(pzzRV0^eaL%Z0~Nljo!3ITQr~CF3@#v&77M?_!!`$ z`Q|pz8s}Q6V-!$N^Us|__z8VkMffow^_TNrUkl7#N}er%(ANRL5uT-gVy_T+PH2qm zxeH0(i1x^u??Nc_;dR2(gb%R(dNT$dr0EOXN1udt7Vs=IFoti!^R(f8G9WzB8uIN1 zWS*k2AB|;S35Aw_3Jy#Cm$K4zp@9*U{R^SAr#<<)^Pan3**@Q=Y%)d}*`xGi;@0dN zZnGR1Zo9yq_zLkd$MxVV+At5L(8kW}>C3Tu)Q1)ePY}s_dt?o<)x=^GIS()S#{NmR z^Lz_szH`yjzRxJDvq<>nE7>#DPx~g@cEImmWlv8e?(@9q>ihQF zyU!3lbJ29w6dZ_#$2dv8HF;xIF!Hr!@mMvSzV4&W8tM?9UO}r4@;nQfCyzQyWiL6^ zvoO=1pf^1n;b?0+WF(P8MQ8HOQL7_vZlJ%y(#R$|2SM5{}cMN@8p^FQBL_o zu{(YNZ!hEGo0qIg;bWJA`)iT^{YV=Oz1Tszt;7vD{Iu;6==5itLKLM+lTPd$IWr=JrHn#1|-|LjQhHw?@XvLy*C3!jl>j9aI zS&WC+%3k8T>@DBZ=ORJ__}3Nqn)pxh($y56XOTa4NxHf+&!bTE@#nJL3nMc}s*dRQ zLZI8CFT2`uv$_WD^<)ot9Gyl!vfI<}bTjSa)Kkp)>*!`fj&S|~W9fc0%{CTz^xHJs zdcv20X*{1Gy!&Xft-^$Ek$wm*5S@dARuRgai{7FH99Tu$Mc$FQ6&;1>9Au6~mrw#u zxi5)RV}VB(#i{j#F9FkdK0$ala1{N(7WSC#?1$d$QM2I_zh%#rxfU7u9rln__*0y1 z{Wx;G$oxZ*?H@ztAA-#9;qVo>&>-;o`TGpW`$pt_(*!eezR37u->>k@cv0y4S?vAi z@b@$$A9uoz#o5DEg9%%;g}((tun~H^9;4a=j{`G-;Y(vwIxrt70KAK)s=JD&DOEIG zO)8qfxJ*^$OQ$LSWz*5+%s^){i*ZRoXFOYVel1lE+Bi$C*qEwzZnxUX0soJ!wtIoE zfS-V-JFK?;ZO5vy8&g#4kF2&eZQ-9c&Q`nICM%zIQ`Dq(Q`P=9)6|b`rmI11VwG1L zjce|Ww4Xf<->$Q*d(!6!#v^>f1Kd8U#zfu2b>OVvM-&242@9G~x z|26tOg8qj)`)~ZYRBsI!>-1gY{m=UC>a#b#yV74b(zXTq0ONo*^!Hh3e@Ae3-5bvO zO7X*#`VE{v8ti7hp;=>E@_*C~$9TIj*5uXPYR9@m2EN$vGiJhD?St2owBkEu4*4iR z&dm*DF8E)eA!pzucI50k{z=Xm$z0stre3sZCB8?lIao`ZR^kgT^AT>+2Dj3z6AZK` z7#U0EJ^0v2U9)O>uZyD=ag!6 zY^?s`o>A()W8?Ggg3&iKUKHa;Qp{?*7^c)E;ndV_IV#yIVu94liq8t4Qp+%rRibmOCe<0Mj>J94`)t>^m5fwNfm`EN5~H>Px5lkxlsXRF z8n=>IRRi2UZatmjW@X$)0d0U@v|Gk*3}M}|>**%vAndh34Q!0ga-#*W8{;n2iq;17}rm3xaCOg_BZ9B4Ox;nmRila@^wqN(mP&Ip!9Bq=ex!UC#$5Hr+%NTKf z`NZ0Bf{xT#4{eykNz9=Ey^pL1BcZGVSraCn^H^_^93@k#3GsPY~J|PTO6yvD3oswgJEt;3Yuz0vBzJh5l4_{3m;|VS-~ku9}?V@q79Z z;v5fYue5Wpvz^IKJkLBnRe$UFH2t&V)Aj4eu{VQ5Uc?OtcfyEI2WO)AHXmG>%6Ip@ z$*SGnnX2#JS!(v)6xCwyB;~cYO#OZDWEHmeq;kJLMjx?v3J1!cQgM5e)YQGFmB;n5 z`nnTi^pNky=$_ZH8=V-dM|?L{54=8G|MA2)J@&hCy5D!Rb^Gzzx{OZ@{cJ7&o^c;| zWyg;k=N1dC6}lS>U6E&@E4TJp=xs3LE$7*5hbN^4`;Tm?X|;QU(A`oe-F568cUq$x zGFG*;ccd9ZWkZ=2mH)$yxecJ=F{J;q47>!5uBENB$-g~ zXDQDM2xTqVk0hK!AK+Gd|&}(mG8Z*V!;s?E^2$nE4RIIO8auEvVVDnawaeq@harYX=>G%KT(dZ z`s__m5noPMJHNb2-id15-b5AqxoP?8SE+F4Sz8a;=I0VB}hksS3!U_M7 zPZwT`f3Ri#4E#f&-D!<>XN-i07zVgeUOU!gdl_rzT=aqljAhM_+f$_mvmZ@k4|0MaIPqTK@Sg&_N)0eR}AAzRp(DM1v@r~fe*T+)zSE@_(tH;vxt%S#c;$t)6EmGkp z()4C0()A$Xx_~o*JU>I-ne-ua&lS~n&rIdTc(_CVBKQ2H`s|sd!b)bTcF?@UJy#if zE+Q$xkBo6!u;-eZzh|}@Uou<8F@F6iFB2S`DSHF|+swr$U0Z97HZiX*`Zo%kZcUs! zwAKTBX$z0o4*LEE^Ytls)`$5L8aZ;$8P#^J7M%gjj{)XD@2$N5(fr(w>)V{Tz6xBI zXTf#rU*P(vKf(3hv{CT=O{@DK;`-b=xNi6pT;C@AGPu6YiR)JITX206;j6&^7q}kq zC%7*E_sG5^{}+UYd>SBl9qN?BqLID&f$y(?E8}@aHgw#R@L$Gt%2-Gl3n=4%65prZ z<-~XD7ku}j{{N>q@8!h#J1MISzlm4C{f{}PB@NscJiZEP z5~Di(Ekkvlm7$6b$EY!+eTBH8z!c(>h(Anx7Uldx*qrzkl=lkjVV4goE z4n0c4X*{1BCYhT_iq6YiORMHI(=ugE3Kf z>elcJ!s|<44boq17bZe?zzDbj9)Kqxx-PLlICMpKorvzjTnFuFP$j%wYxuWt__dMn zc-hdnx1ejEK+8@-zk0&+OSxx7Pey*xiFNuf=3j}9=?r=yk(cM7a~esw937Lq3*Re! zsK5s&lz-pN_-TXzq1d*A@T0MYAVUMvemBl%7!0%nrUUMrKQRPo56l3xx6BP%0fx8C zwl;0~hk@s@Kx^K61LJ@$=*hh3L$D*nzZ0878=hM``O=zs27HB#@S7%hcsJw}chMd0 zyQMoc)#?sAwK);ZeB`>dVI1c)s4}7(Yz+(srU3y(lhi{+lhsp2Q&ehEl6q|EBsF8{ zWcBjvQ&jQmN$QkED?EgL?;0RFz;3|s_S02*`x$C}`(#znex^FKY?QjT3>o*eso3tP zsUw>wsb4owR)L$QsIW~*%9Xzbc{>76kUyFHOWLQZ$J!>UzbykNf$OyAJ0Nmdno3-j zt`;ndQ-#ao)!#R#si4j2s-h@PeO?r=BGEl20tru8)Bj)I|LyVng88UqK75#uyO@t*%Mw(| zvP89X*?8<6`0{OFUPj2}*EOa8+w!ApXOIOcQ#yh|+pazin40W`R?``lUql^xe zmq6R1fEvb6)_|F{;J|-rW1aTZFm`6jarOIn`*hW#Z5-`FHf)oqc2VA0z*U}^^(Ezn zvc_axMc!7Plok5B^5R&p@wdu5g6-j3=HplF4?i;(vzN|RPcKbnyk^k9-|%Az?J5Gg zfgk?hMr<3tV_$fHwlo7~(YGgoL$A+N-6-$c>-fh|-Y{rW3N*?!{w{jt!n+5+iDuwN zb*!~8w#_WcOi_o)dkETCO9h&qun%>OgT@q8LgVOSr)x=zvygwL+^V*_j_VTiolL!aM+Qc{p)Vgeuv%2h~3D5 z-N^VacB2R3GoBJ&gZ(7}kiF7~U9>ee;9mHKjKSBV&n~OY7hjLg_?3*~c@Z!W-^C>S zZ5s2R<4|BHcEcj##fJP*UX0$3xIAow$%LnPf1Brpi(_<2cbfNd-uDykB>a)^Q@{fo z;Xy(p{qw~}REnQ!Pjpi*enD(t4xRwpm+%B3*u6T@cCmrAeR-tn1B?Ua0LE8Gs-8d_ z;0$)T9f8YLMBqvl%lmT2^P4IJ`)UYrA%lZ#A*OI?f+k}4F zf`Or0)bO|9~7*1 z@=v7rf#qe5#)p24YE9fH*mQrw7pfUPQlEB#7T_y)l`t20`GFYqDB=5rmjU-8!^EaQ zL%<*K1sVZo5C`Kd0*{6Vc%3b3hVYt@bL5cc~%*<;l>{B8b5{!LlQlryoGpIA4Z~hZ!>aP&rnKJLqo~|wv*K}fv{&<&3sx!Vq zPw;+FPr^^Bwc5vAJ-~aCK2!I1gwy$wtRMDoqN@EHt6u^dswV?{)mvSXbPZeagCSaU zPvi^1H8Z%zSq+m*xo^gW>)}2IC9+#9LK)B2@RNPJv}VrR(8jiEN|zAz60i~Y8tB=j z9p{m~uX3?JPs09O9=M*f$u_Cef$O+`8@wOffHT2@!SR*Kw7QcXPo2+b+Wj&=VoN>+ zFWKW?+5oOQ+F(>Bc*nk7VyS;L^^c+c80wFq{ut_yq5iRdQGXEi%NmpVC;e7Ge5mlG zvhM2EeTQPit;DAm2kY1Agb7b5EHLxzzopTKaZFh#T zX^wm!C*MulMk%j})-I%tiO?gj~u7ZAPT1KPQ2Ff!u$q90A zQx%Rrv>$Eb{DoXYDfdS<)gF}d7kUy`{Z7r2AT6+})U<3Eh0re}oX{3_{3-S^d+wOdfUVRAUSlN%`?a!!JQ z^Ae1-)x`X|71Rup`8Dik-&$BL^UGM98TX%PleFh&+NEiob63!&W{j7KalFcTu~%rf z+zb00)Q{z>u)P6_rA}t26s&NNz0U*?I3|*77v$0CM-S z!JYde2oJBQ#aC|^z7l8T+i&l3A7bM*9?tJ(LU2C!6mZA3ym0dT_m8A^ujoY5N(VT*{`7GRlvj53w><^nv?-aYI^;;uxFFE7nInVhlcvEHyc9avV1v}>R zN9u8v{UYfkO(|*0Xp795q#NR?rohC4^g3Wv|PE<4EnC|VqkySQ(P~vqJ4O1X|}ac z=uVusu~^O+imz`hjtekUpKaYYbYzxqVf^2C|GTjm+LLz^IzxF5yr?l5IY-gRnLH+F zjvKVc9UA1pp5s~I9T;ByGkd>Rr-))pmx$ti+_&v#jwo*I6H$ERxdj6~eItrJ8b=g& zGI&S2`9~C+0wanGd|nu642~#n)Fz^M=v$cs4ILti8{QdFyy)Ep11B2Hk-ecSUU#pZ z5-|F$DMRmkZ%UKVg;OdT@XsE14D~lPwp1EDEo+S)mb)}_Tl7}>l-X-M=ltxW?S8b` z(obt*$-P+8>-OjzKlSKbzlR1qQv*jCuhh>_{$I`*z z85wPA5P9C%D6&D!e81K7V@}KhzxA}=m-my5>AiB_80GiVnns$8jj8L7$OT&c$i`#l z`^9O^Bgc)&@yi;sz|W8Ovdi32&s?o$4&BZEIcDamKJ#6V`Mv`j=)gT~O;gQ-EX=zX z^ZrA*A@mOL!iTwU$=tVK-gRSrOLa4?_*?KJ5FBXE{1>@t-I_w9?qJS26Stc=)ql`1 z(;b!~v)1i7`t(@3dC+Pfty{lz-$9kk&F9QfVTQ3=kzMQd7&zq5J)4h#E34;gh%H)` zoYOiq-G9(KnyK5aH1nW>3{$tw3$$)az_HbC2I71NH3P5Y+}9$_(Ctu~|De@oL$}qW z-N5s^nz7qzyS)1j`XEE=wt7B!=vR>sac)MQeFv4$#!VT#n@P*J4GVa-%d_vGLcYE0 z!}EM&w>Z8PE--dG-^^OP+Renf@1R7!uQr>yb>Q1OKBjIt;M!`ty!#Fc<=Z=&8+j!y zZC_yO7BA`D+-mb`EiDB;Zp8UghQv`u2I=kc>^~?R>>j>T~U~S7ebG7Ao z)Rt?nO=~gwSbk_=tuC1Fj9(z}=0R&&tM6!@l<8SpCg;Hxm_40sk~nD--|e;E3+D5@ zz_Z(qV{+CjXHNzis;>_1QxK#Xs(&8Q8@kjB`qUGCD1!aW=%8CCkr{4|_)Y$~%)TOf zt?)9D zXo?NST(#P0sFrhXxM|x~VAjH`g%$^W=UFumdM@;LE$Kxb z#3q!Rz}{?bEBmscI?7<38SQ25_DB4XkKDv?pRhgQ^*E!~ zye2*&{=pUfPejLXrga9es=qb5f4EneWsV_tD$kwlZ*peRO8s8@+q$3qExlpW5L+kG zd4(Hu2l3pMG-m89#;g_mA77-q**Ed8%__Z}y;%3OZ_!6L4zZcCHtMZNI|gXj-|F)j zaUu2%cWd_d@1DoATh?Yh!YyQCaO02$hOG5>uV@@H@ig%U-be8q>=ts*Tte+1Z`Aif zP7dF)UUeYk4qMAj+YSfcTKj*tFS@se=-?V*bMc#SBc(BO*@QW5%3jlqy~dxt=8gj6 zma^eyE&27<=9rdlzT;c2X|C;)v5l?@zwtF=v}uJ$?jgcMM(^Bf?0XT1V}{3>N4K;F zk8Ek2AATd8d}qH|7Qnr+yV=+G3GZZ1wZ7ExeE1EcVbts9*%b%exs#9mdY|{%@EalK zF)jN)h+h`=-%?M{|HIy!$46OYjsDNmoj@(1^IOWy64w4rq{(nY0SXng=6`;Dm9!fVe?~8OV(DI`7OFK%_$xAOVF&Lw?`W zON{I5c<24ydw=)-QJ;FMo_gx3I_K1>b55PAsu7tyD_Mz2R(lkr_2m3v=%FKCZ}|pZ z%>lf=qSIFz(v`~l!S64@?|%colfdu2;I{z$&Igx`(2TH& zw2sXinP^#-+0&vz8!3dek@1#ZWxsdm%ieHY2VI0h7eSgB32t?iG3b?;#XK81e_Uvy zQ`t_3QugY=QDwj5{H|S&bnf&L`WadFTgP_dK4q`5H)`9!lRR%C+)=i}AvBXwRx_{+ z`U#0mo%Ig+LN|QpqZ^@_4LqBnms04)Ld+Sn=Ao&kge>k*RPuq*gxWkkI_Ud3lm&IC(&mVDMk4a&Ti z%^B&R@QV?&d0u|r(A)rDd7gG=ef)^8?C~={T-GUN z_vZP^mNx!y*%B$cW{R(Ds{4n_J}za8|IJr+|EE7(Hebq4j+!Wa%RTkOWhYD75e8pb z^^@-|o60$F!e1v*HWq&D#>R4K{Jrpxf2&rIiLOk(2cB{_yyX|n6O%Y2dm=n12i`LQ zyZ>G7`$sy?8JC$aL@yItf!wY08M?~n=w_nxyeRkKF<)fx?oY2^7cq%G+TB<7dEQA{ z-W?9SDwC79;w&vO5tPASXj^OASP*!wyk>UTrnbcD(*2>(0*2<}Y@85gP|9x%} zd3+;vz9o4)=TcVcjH1pG`HsA)*Hb6Yy(w3u0*f5-scS0V2lMAjK4pXRufR&?U=@Dd z5tsWpmlRuubthJ)MHd$vZw~O5_wt>{M)J>xsmoVBkS}c!nyMyW%1K-8+x%^nZ>7ER-MzdIw$t}L z|CH}sfqeOnb9j7o`2gSe@15+1jkSwbptY^u_j%h*ewj_^u{5XjMepih+az5`y6vg3 zui4F77i2K@-|?-al=lz75h& zg}@zL2mf_6fIoRJ-y9|_<2Fb$KHN(^fp28|rT}vvPNi=8FfD-7UrXKmOYkFg{jNh= za4&Vq|D;XA(}dP50z5?8zd+i5Bi~EC{7=ds7 z3*t1o15UF7?}Bi?TVTk)f;jEe0jIYI@D{{ro3w%d3rubaybI!Vl++`zp#8#!1x6*3 zcbh*?@F95%Bu{Wg*{Sqz8vmAY_on2N&ZWFBpZ`eyZv*A!pTERrE@kBTUU{aDX#y|u z{NuB$R#pwX-7+@CuIV3}RlryNC-9Q7`8;X=*c@HmYUW<=d+uQTjba>*tiCoYlQH_9 zZ;W1>_3gEei;S_$j4|%}x=GeAgnz|=!`>bts z8ux)qy97S6zLd~hxN<+|rKjv{TRoRp+9&G=$GO)--p7-FIiiPi4|By^yqCH8q`rsc z6UsC&Py9P`#+F_m#ec@w{hV(uGjDjmXuEle&e|HZ*Ei^t)}YP)+AP1#zD=+HmcLo+ zf=S?SQz0&CU}v#`g7kr;a^w!82?$BCvv+eleQYHGnreqzZ#V>Q~DjMX13<{ zx3NJkipnkioRnc z$at!PSIKyh{77Xgb3|9|SLB&^R))>;rB6hRnwdH*KPkjOo?%*2qs7|VhgkHiMMED< zQu)tX{<${90NsH*?w4o0qJuoac>78Lyl1>kunv`?fw4`+=Wu~-! zZG<{=mEn=3GQ&ejn+O|uzF?T0blNZ{X`*RP(gf4&q$RgKl(Zr3fuzve<|OsCJe>5$ z(bk#A>=`rPO?xD1W7_Pbvb0B&PN&UD`XhaMC+)$c%ApUF_i$1t%j~4Sw>^>+1sp4= z_mfC#>sI3T(K#Cl($}mGaEu7_nSEgaI64Aw%=E!=l;|k}$M|oW-QEw1T85!0WoSsYw|_bCWvy zzf999Gau-r&b&0R+RjLVGKQt@IE#hv zPhx|TdLR78zeT2z|MqPEugKH>@1*}7;n)#=9pNP~n!AJZ=JmRxZnM(*eYSF0e-*wZ zV|Ph}$fACjHZWF?Grk3uS9unAeWvfs9hZK&;u5y+uBjhZjb~n4%3V-?xW`j2*3ttw zuj78i=Iw2(4e;XzeLQt_(-J9vg1dNccX?OKd;d2HzHdIIYy&Wta#H3d$^_vp=|R4< zz%`!tJ+%IkrjFx$Bk45Kt6B={Px$y_tmREzSLZst{G+G#2kPFe@9Mk+yx&E>ewq9S z2&a5)5PbKf4GG$(k;?K8l818IL- z617lYTLou=Z=sEz&{C|$3>|#cZ{hQ?mMygH(@5){mubr=Uwi$wzLWG**3wS%?K8AV z-uvftsV~+d_C~Qay3JO2__uA1-tBGOg$GYTM-ZA0>Inw;pv(a(d|>n!ZL3wrrK0zj z!G`0@x00`r-|-(oTPEvBzW;T!X&Q8_jbtbjWWQxfR^xE-30LulR`7xD#hrDj+*ubw ztPqdfkP?}>A!U3Y;#A^C@F#zY=Ly7%NQdyelV^oz@il*p@C(B8gzg0KGsi|b0pD+* z@45J*TfX$~>p!kfwrn}w);$&cZ6fZtCU^-t7x`D{TITtS#In9uRV8#LFi*Dp=Ct4u z*_ZF14?K&^S9#u_FJ&q{!Ds(moro+L#LK0CkA|%I={NKLd;UA~q*^Wi5q(|Os>L=q zUGy3LBlRux{l|~4c zsyz{?Q@#~l^5H-`@8tV$e$x>yvW_lezk#tXZ4Byu)(&l)NL!}pQhajYZRE?d{AV2b zxjai7vVf7lOsqDzLzz*5Z#xJ2A?u_5etdl`G+5854*j^r*9U=37wvBOUe?FEuZiyn zXIUc_o3`+<W`J=10aFfqB!4~X?LA}+a z+#WeGsIz}pe=hvSFVhR$&wuKtpPl?q8Lq^%_a!pn9rMfXy`D4~Zd>u+kho`@p;mzKi={0Q7RlCXO z-FCzDOmF(*qr9fIdda(Bcs$cc4Gs3S7 z+DE)A!-by;Sc0Y={yZR8m?^`K-^+1&e85?8t+%@6W z*?IUy$hyx6?y8Zs??cQ#*{O9^**%p?YwO7RrHc4_sGjLQ`(&~v^z+UAycNJ`IYAey zjMs;TjDP!7=UFA3)3Ppf-|fM7D}d`_&xCgnhTmJ%zM~b&zCD?i2FpBP?>y z@Lv248agYJ#?GBNx44Hg*fC6rE+1yHm}y%<4<)+zxPJB`+9Ku80jGX^TaP`vpin= zzULAC4V(4?!hL1i9SaF_mTa)+5C#*Lj^6F482wvE6wk{>zwTH*dXJ-gbgg5>=rT9&l9?RG@?fQ_>SX8n5>KRxValD1s~G$db35IJ@DhU+m+e&K6UYu z7tu`_nn(ZkVejPbtJz!WpAkHybH~-P)PwOxRT_L@%xl9r0%aWfGY#Ik~^|G z;z{o1;;td?=1P`xa=0>5=~|JhM9=JVsHzG28Q0Z1v^v#jS>8jLZR7v_`y7t1xLJu2 zx^Uxz=l~yKbNkIbs}HA+2<gucIpS*uW89w)HPK?6U&e(&E(5n>@#R{ zklv~T^wy;BZ?VrkGZ%iQtx+Qi4ncPxtKkI|9q3P`4QKQrmVcK1!uc=s^~YzvL4!4^ zZ^!S04v#~J!S~NXhwng#pF)S7bN1ctzq`ywi&~R@fMrFBGC}C^tUl5r<3jG-5_-Ig z@lrs2&!{2hwp3+ylrG$4)|o8_SU;3|FxLd=QocJMpv#NUV+C~i81b{;L6^}}7py!R z9&L-{elwxV7JYO(UFQ53)8zHE?&a#L&frS$#f;U(-{W9SJ=y4bbB&+}Gr% z#W36SAD~6IUT66_ErxuJ7W+dNLLcLx69?zuI8zVD%lH@il>7cFpyMX}K*qG$c3!Wu z&4xC!q1DOkl}qnsw7kWbka0Ug7v{MDob6J?X|iN8@wAM~2R9I<8l3IXcxc zSr<`|!uXRs&UUtq(CG@~T{L&F%KMnPgXXRmKifck2Y7B|{7D=0QxE;~w4HYbf7Jgn z+TIRrZ|}%ozd_r+_t5sUKZ&;U@`wIk+Wvk%`#*!WV}1l}3r!1c3r)x54H~M47X|5A z&U%si)4q$I#Rg!6FN^;|_T0R=*=ov!$+uf)Pml8X^C1fuJQ<9yDfkF8fBWc;`F*?0 z>5_&PpDp#z?b}aw*3T+~pKgSoe#*Sg9d*8WUFw#3Ck$Oj_^I3-%-utlV&SJ|Wzx90 zp1Irb582DwZOt#1-*;Z^5pyQhWZ72Od7{=s8PWv5{G%Ff&W2Bf_fn$w!gI4#^F6F@I6*a<~4}9vV zmwTO~YgDs&1^uru;(V4`7rzyrSq!XjQ*;_`US2hGa78?8`ON~m3}82t^|J<%>44vf zb~z*5Hb!_mZBoFK%;(aM2H+^qa$lj$ljOC_62)>)CTDMq%PSZvxZRR!u!J*zyxK#F zIm=!O-+SOcHt>Ea@57K+X!C?f%577WTR(2?Is1sJi(UrIBA}6R%FtU@(7wHDk4F!O zuDCCJZu(r>UO51{WBHeDyNvMWbmWd?H9dbyK<*HpD{Z{?t^3(!t=F%sb>lwh=arXo zE?1Z53}xSrj(>GS-ftM9RAw+1#7_L!HvB7ZwGL|>VjU*;H(Gke4VkRQ7Q9c}Y_}^h z>HiHsF>J>Lh20bIkFylux5XWew(McaG5Mj{=Ip}oiCOF767sHB=E^)0^ud+8tgi*{ zvet*-gK5GxY{sS+hHWn#n?wXUZzT80m*k8gh@Rb@`4NAiXAKj=Dh>Beoja7Y_&kX| z{ssNLS*eIQ(OXT&zscOFkFzC1Q;pb{8ui_6@r&2Q|B^jg!|3OW%1beFzqE|MrSpF_ zcLDx&ll2K6a6GBusbJq@wVS2yBdzm__1!%N{C|yVH*-4of&=>r>1v|Ms2XhswWrxa zzJdH~0)7n>kdG#0^PandZ6;+&jD@*a-ud%;`0@o-vNyX}ALn@)dTYeqm#!w5^X^NZ z`#0d!h>hut6Q5l2vhGcv`xo-u2^r~moB`mbZ_=lMz(vZ4{JH{v74EDo$m49KvpyXl z!X|u1#!n&bevCk0%_FkVs!#cG@<=Z+hlQ%0vab9$9j z6|3DnDL1Yp4)dsrb>58&BPZry`#Q;(IYD_nK5}oXW@qLdy`0lV_jayP;tCdzzRsDM z@)Y*2aPA`QUNBA7lU`gkO$jrNqK;`_c8)&Tccg8xqGoSYVocMNP*bX+&wh%aD$2Z( z1nKXk@#CQbJM=IPx)=+6*s$?tW48_QjYS!M!W%?qlDViqekC$4!t>6~?N6u~5T4+? zIV_=npZBXY)ntJ#EoYI_rx%u64narRJHjfn=H=DG*9#h+_V24QaSy1B@kZ+FH`hHE zd{$0T%?ai{2dg-b&{Dv?w}ypZeLrU2^x9QUYlfJoyZYV3bZ{wbHxvMuU%*5UlrTJ_>(u>zrx%=v>P1NsM zKeD=!dsd~7^ug2EoqzF7fy&ur1O@sOUusXX;?3jE_G0+;RA}YW=8@I%A86Pq`hNQU zQQov@gVUI5tv=JYQ?>gB#k&+6YAg4`zCf8S%q?OA{SEs==IX58C-a}UQdRK8l?Lps zKMz$_eRhM@`-M-}_uF@ek*6vd$HY#0jD02kcRjEJbklC+op1k-&lcQM8%SF0HB#4m zl=Z*!+fWaXzUq4?_TC;E=fkX;k57HBKI7Pw{9E{coc25Nu23eGJh8XqtGnvV5Ucms z>{D6A{8&;zxz|QjuhC%#Kv#XuN0(#4sSVs_gX1yaIt#kI6Q6SbdcqIUfZ$wgcR~wB zWP5BC7TWK1Z&s@H+y{;w)+;n|5u6GwxHs#nZ-O3#US#ZE+?-K;rnm3z=A$FP>2&D8 z4c=_fMPnD?b;;UA;4gST15LTRgS!Zm(_P%DI;&}6y?dL!I!b6uaNkdOj=?E7W(;`X z^IkKw;HLlF(d%^IAh`5DpXm#2P_GV}NaI~2v?SlW1s`bbi~X23bfkwb1*d!?bkS{` zwfcE*UrShB@Yt0-1ix)7PP^|LIJ%p374T5OM@hj=zH$@D6CNML5xUYUSs(S+(M_u% zEjY~8`EgiH+D|{MTYv3ctj7K@UtRvSm2TQgr2X_0tKG_TE&padXnvu$Qn{A@ze$|R z{$lL;-9H02Zu)?2=q9me84ljz6})tvH~k8>aIe_p%Bh3-uzAW7<%-yiE{*?TTKT%& z&_6F@qh(IhS$@kHD#?HHN-iPFUvFhe{;gNGT>oKJ8hj{d_iMNJea#>E+jZqpkJP8C z8OOfF_lkD5*Jt>S`uu!QwU}h>3%U><7?ziRrGoFn@+?=djqDN`Lugub+%RZvS%8-q z7gtnS)UdineV8^mT50Z$U#C&Ia4bA5%xU|qXk|*c!M==n;}!J#CeG3+T~=JfUC+&_ zi7AduLg}&*H5J&3MBbjPnmyQBCs}AmI`s?PnQ2D>?J(1hk(7~kWOh<+`mXhK|CsZ` zgR^F6-(s_^v`s^YBT*T7;?zCUV(PPXH^1t7(T`T6Fej1YbDo$I_-oGAN*TA!K z?ewu7?dAOQ*lg0m{}ga3^V&?(g4-bNO>Zynr_BdR2kG`2zBm4V`f2+A;hldyOUicF z?j!BTb*y%gvfo9wrObohN4F<`a18qQC~#(SmC)BW$6-le3<|tt97;QGY43})H&(l` zy?s5jI@;%NyC0tYc;}xN{P67CUbefokFvpjy%~5G*h+tc<5I@tTKM+=ugjRD;dUXTxQlBvYIklJI<%ZOE+IfxYCo5Pr?`Z-`~g`u#KFHFsaNI*T?5{slkc&oGL#AE$}h-|_L2XXzjEc%YonO`>)i zX`H0ADL&qosNF)^Pjf;WJ+&K2`)Nh=fdp+JX+K@XYwuC-S9Fx1^=^~;zEn)o^f>2(KXzj_z1iLaxdhf3e#wD9(NduW>|E4;YWH_vw0 zUMB71NsLL6Xgk{77HjfDZ5u_!k_DZ26u12pz!Bk5r#5-_Cb}JP7=^ z^B~bz7=zv6UybMyufva8p@I16Ph1iCcsOx_Jo|W(@QOru4ryp7ju>BcAI}k=8o|q( zr2VwP`h4J7XyamgIjN(I_8MvNF<9%PjV{`@_V-y3q=Rj^nP;KF2HGutLca=>&Gq55r&dYYUvC%9^0jw~S~+RIAB6NRURy%i zUvF0}Iq=S}r}WSg0^gPfcw~3dqDP4w(q;NBzz-jMiNQ^x#PIB7wVP)P?MNe?>Z6Zr z@I3~+XMz7ap#%I)7u-<|UHEJyg7a*}>Mi!^n+LFADBd(=F6`S^EIjMOlu2y|RA@-$ z+i&}cpJB~Dy*0Dm3?Ilw&kx!TMfbcvMXAh2zf0rYZSaO)rYe=K@F(=dYQgp69~W2W z=?%`<b0wj+w5VKPGcUn%;j8hm@bJrk!!?msU+y)6Xnr zT)6eis+Q*8e&sOV2tSnZBr?xI($AkRuJ+IU@}F2O4Oq%JO!bxNu3bmkkFz-KP0D}u zuAA1AcT!)_->wH~KhC;oJ3F**!ARDV1MPc(XKA1C+h7}+1AT22**K4O%DCRo*|?X+ zj|N9y`Tu^2|F8Jz1NU|uSpql`*+_6Cy1(GfG&lXqQzmev|NedIf+GVs>er4VKOYyq zE&a-l2By6036AatM~&P3`1$L(;%c$StR^hW&%45YE9O(-v+h$+WVyaFpSf3+uwS2zW`n$m2Ec2+fU#*(e|k@~T3K2pzmLvwa?Mb$Z9-rV}Jf1lf)cixw` zuzoCdm0-F4UBk^6eECK7nWZm8omaT^Q@R5Gh^c6mobvXutX^M5F@q>F`>qneMJfl!^^()-!G7&Fty|>qR8LV973iDQBD zOhQEKll81uXi}cGn{H68D+_=-YXx=g&@3N*viUY0{6Ir>2JkobXbS5XQ4^2_v^CIN z7&K#0&E@zO9Wu~Y>@O>g^w&&(4fJV9jBW4SnSpz$|92yM6Zj`Nt*Db}SnN2v3JUtoQOTU(Rtt<19l?fi!Bd}3wV;CQ2^x^c;R4!vl=wJFHV^GGG znLdTVPo+<+8<=EFmA9HS>A#FE>E{^wCSxo(zNBqof&PU_-{|KN`ZuOEa>4-0HSxdY zz!sc2m(!=PkcMNkcs@ekx2utLQP+y=qZl`ly2$eAPGRNXxGqu`R$jq8P(yjnB5=AH z%elZ}FR;j_zj9W$2RLNY=e$sZmhO#=Hp{ryn|ysU(GQ;C2PTt=zN8NrTb~b)NHbaz*2VSKsu2Ix9-C-5{) zKWcDpVNZHL#(EfQe+7M#W0niAfKL>E7CD>s?K*tejvgt^E(fpWhg6f6-RFa<8IL`i z(|^&ck7kz&?3W#a7diXU*L3gX`uustE5{YS;_6SRVf?Qk)EG_9BSxchTcLI3;nH!= zvl;!Juau5;9xhpPYDa=6pJ7T{aAg7LGQG8OVoVYTasd_PQcZ6mI@z1sB$-ZfNSjw$z+_>nHtx`Gw`jns)s6mgVYSf716e z|F-g2(@X1H!o&aAa#(5jNp*~CEj>2Vys0Jp{y(k??~ym@=E?$qej6erqmBAs&+9)Xazi%571m&SogGDpBxj;zn9%y?UJ!* zV655r#?boAp@NJ-&h*l3rwO~fp>;gZHm8~K2mh`!Fa|A@>(77Esjq@$r+kks_<=(I-OCNkY+0IwAjdMkh6JmS88}9_77? z()@a_KUJN4PO1JIe!wqmwW3>eX5X6*+tHe;gXol3Slf4p7@Q&}Ugf(lI8W>Ew=B(( z^-H(1xJu4Vl660kA@NnPY(_5hr)7U!SIc_R%L?WXl{p99dV<#LAo7vP7FOUMI#~@X z7yvI_qnZnvSi?G-@6TJ#v*e8O|~*G z)tq4CECc3O-}*2<0$qgv%i6T~hcxATe7+#B3=U72Nx5>?qGz&pQqDRw{L?Z<<=iCV zw8Ev9WVL5O9`dW`=}N)wq2k;B3-(7(@GXA{2kd7&9G-Iv7GCk|H;5&$r@F!(I-H;UKVbTC3S-#lD;F z?4|0W8K%#d^U5ZqrM@43N}p!oV8>Mrp0=AVjn9I{?}XMzL-Th)`=ikDMzSXC*Ta8E ze-j-&?pNi<#BP9(OI2;g?^?3(3Az&UQH#Lmb7flr&8vHu^O1GC^jM5X&_ zrCQd6#djoa`prWH7JGHwJtgS$qJQs&c2n^O`I7H}v87=eXCzWDc+-kDg|E7Z4%RU* z?_A+ZgBs_IM-F;|_hP4F>{w(yIvu&IU_t&B)?IS?A(x9hT)_T^8OW0J)p+O}9RWE* z#>3>9O7l|aS;ozDcE750=3#;`;Gcs3pdEbxXp?fp70!#iEZTQjZCYX>%q@5#L z^@F9YZ}-ZcU&6ZULDpTrtNr%>r2V7+KW=}pjne)DwA)C3Zc$^if8+BP_+ef2Tx9Im z?sRQk5CZ*#LPwpTr_Rt7d~>`Jdx7aF{!bSS>P?l6>@n$f@02U7>sd~9SNEKFTF(D7 zvezrwvWInY`m;^7qSoRlfJ6A%C}c6QJX~k zON;PNv3befxo+A>%5wIt`z7rk(KZsAjd);s7_GFPSJf@I3+;en$ z?pZE-O#JpQDKn9DuP(~bDKYr|Q{P;jvghJ>)tkFQ%85-N*&^jG_fx&U^ySHVpMQVe zrID)l>OHDA(^sdg0VUG59@>`^Rj)Te^$sV0%R})K59+LYJ|Cgt%hJszy#65nNG?H1Z6;le?UkR0xnh;=G5z*OCyd)4lQ6x| znD9b0=U#FaPdMdkeje^R->sWd-h0Wn2g)4cz2pVco+p!Ul)Qlhq7!TbViFEgPb2V{ zPF`byZV!X?XyXm4HywSmafs?&7L6^Yx9Y8yI9c@yEM=~edE-2RIYjn>ScD%%5W@Jb z8Q-q+>OfNs0X}qeWxjMmZlXjCKb0O=!}_ ze!x@s0yY3kGybbqT~wW_i#gOw7m4{QwOrMy|JcqICMYlX}I*dNn$oie3{^ zm#Wj7^g5-S{XXUR1(Z)_Ki7FxwZV_-QgmzLGeVT3IeZt*`GQteE$7VQI^SKgA$OIZ zz=uAaIzq^gqKzk1ohdaWr#woD(#CTZVT!6RpGx5S@}>AKtzq7mdmwF!*?A-C;C}W6 z^e+r|jU&t&9N`MPIl^_WZ-)0{&IWC2o%~z{L63jux#SG*`Q91c3pZqVkE+%^Ed=DY zW@}-zYcN4AjB$l2VZb%UH2^zFg{nF$=OOR$J-&I)qx+L%h}9 z@ZRPj8D4yfwF~-4+l+$2wNXXt#2VtG&(Sq5vIh=`@ql+|;FG`-6Ghc~$ zlro}Eze*jlzX1H%&Z9?0!!u|f-$i+L`o4?gy9l#A@ZHY9cj)QQ)esuSXLyf~%jh>KH$zx7jM;(pyFPZV^26pMtg@KUHe37oMVSj}oe=YQLkv_>d6MrrX zKC4l^>#NS|yI9QNmvIlC44xSU1+^7@G}p4$$@LY$bw)wIT9x{%*~8>X@P99N668}3 z*`PT)wc3?M*=)+@Q?>wlN~Qe!oYO4(DVbk5OJ)r7O&0UcoyR;#~pXdFDc4{S1A$^HF^# z=M-@N7IybiHQd=(H8~lF&Tu8td7!nh-X5bIZDL--=jmvRqH{Je&n>@Dw6a9iIVbBn zdzzTbYWP-38GH3nz0P@#`R<4s?VOTky&BD2l|s35x2oP1)NR$>f3=DEVDpDRa(K^tGvr>TT+~CjL|AtMkmmpXgQZIp)$P<{z1# zE;A?1F4VgYCo0=(Qe!Hw>Z2@=(BBQZC}$rf%2_*oc5Sp8XVWc6p6J0B`No&y5(*2q znmo|#grevKNq3B6%yG8KI_`jsk4wnewCKL*h0zJtqMfdv!;ci6mATfH%EDS#j&7%m z!>#JAI()a`={Y+~;-%dGQe|`sM<~acVw4#3z3|*eX=_UH*V}lb{_FktCH*MwCTI1s zKNJ2{XH;$xx@yKZt_AvR(r0)FAsbB~VDGLQfGqPW@ckGb@#>Bh@l6ZH*^c06{s;1w z>%&cL9$uoZGo?e6RzWS-}Il{B=#`~{cr2HCR`Ma-P^5skUyRV+` zJ)1p(vzG_mef4ClGU;fna_de)31J#xG+_v#Ds$Q;uBc)p7;8~*ZyzKioo zc+4ZtkH_9PJkHKu?B>2p);n6ZthM(|+UYo5w!z-QIjIx1we~xcE;^3w+dQy--)4th z_s~m|ejaCkn0OX3Hm-zKMKKAd7wQv^aYpF5!kC1M%EK?MOp3ElqTc$RarPYUpqWD$ z&o_3ynMwRG@%h5-t|NuJTs4I+yIT16{K8$X*N6{81IPI82y1c|iI0`=?~=`qJC~$J z#?Z!xm!yuLM7u81zL=z4jzOJz&3c@4)bG|h9!~nqu|07R`-yh?+CRb9{$~2K-Eo1w zMRC_k=Ovr%n=6&@!&8;Y_jJme@0BX!NRPWvZXNq$VK9#NcZ5L={r)BlcGC8a{TJBD zcaOHiZaaP7<;p2~+2x1bF4sie!!OBq1Au{iI}jNBSM`4Y{m0Lxz5f~K+t>rn_<*iX zqYpMC2efq0@bP_-g&L7Zi`8(?<=z?W5eV0U^m+V0+9qAc{PaZKkhym@b?zIIc{NWT;bfh~ zd5-a(tVDYnm|OP^8F_VzKF)a>*d6)Rn)r|PF`jTG+}SWV^J)X~ikmsnpC9cp7&|*< zzFkhc8wQWO`V>6sm$dbfUi+$c@UK}Z`>I|f9fK|9Fm+W^Z&R_lXD@XQU=DpXB-D8W z|8K^hqu1c9t1Z35s(T?fxZyJw4Azz-z+^D8#Ur|BtBOmNW^+hM&ZGJer+crm$C_%p zdI&k75!s=H=PaGcIRp8?y#~J_WQ@j0|>!#)tv2bMqbH7 z&S-S;9+@GH{OQOWjmR5g`>Se@-kU1JhD&A_=@zbc&-M4eK$lTeKe;?VUW|YyD z&Us_lft=|XO6A#YrfPRT#hWF48-o7>vZ=Ji{gmQ0AXmBjcB`(wQoJ&cdsZ4RD&BNt zBPYQ<5r3Am3s<_w6U*HLb?kuvj*WfQJ=1BYyD#n38|q|VOB(-iZ_`!h_2xd3d%~+f zJI`L3TNSTK7wvRE$$vQi`b*?4#GaVO&9oi-x#tK>OwMb_Nv)HSm2Tip3S_kt+$D15 zfWr5&)s5@rm zkG(_tjCuZZ=J zq5Fp$GL+_##JxC2D3$Ys9weSdJc@IKMsuD}U*bW;JBW7@&mn${xQw~xUBYRZbC`n$ z6LJW12xW=f$3{3!h+8G2%9a6)b ztU)`)FQUok6CCE0HDz_N^-J{C9ht<^$4o+R`f(loxPw^wIgNfupEeStU(;y2^kXAI z`ZA67mPX}9YzXurHN5ndsnMmch;7J?FQ1&v?$#;0U!h%R7FfM?=pN^2pXjOSx^V0> zVNTYloabmK@|^S4>F%LXl#MK2VLGQqm{&|6RO=v5^jF!#5zM!fzYd$kL&!y)3HVWU zk^Y|JJc9v@8*I|1gUCFG2p+;&f`PjoIJcT(3ze=ltXa8*emJjTFZE_}htwa?;l{B} zf?cLr&O|syJJw<^JHcG&W(=MrE%pyYA5<_twGLs6V5VUf$s%LA|5_p&38z7>&I zMf@Uh8SpS*NBl=|*M$3uO$mBrt1Ud=p?~}7jK**eEm@~1oze z(20*T7s~ogqomOT{AWmVrxs~9GLOui3jEKFOrMNh!u_7roA1B>%lQ^_Y|DG&Y8v$> zt>u91BQ|J*;a`mtt=#E21Ebs2RDt4$9i~Zk?>hv3HvB~-N9SVQxhn{x<8$*B5 z`v^C{UqlBK{&Jpqr;&GZ?oOL(^z>rhiN2OmKc0Cf+2o&hRP5@F@RyV5TbF> z`;eEu(CGSvxCLCuSq;-!W9Stg?OdbNc}~D*rVbi&HIq3c4SV0Gfq6&aZaVDw&Q&@U zT_@5v?+E;pdvT@*yyfS{80VO|Q))jlM?0}K-Exw8Z>OEZ&>j9kIEjvS8XJ5nXMUW> zJ2m_^^w??G41#mdFv+O zU*x{3&AQIE$C-0ti=Q?z_s^cQ^H=fjaSzwD5T&{PPNlXlLFSybfjQ@2Mia^C=!^}a z2cZL@iH@|;rhG*Uy`h^RJv@Lc@=coH4#ux&f;xpJ>c2q~a{}{DN1BkclrLdh5}H_) ze`@#;@OnAsE1LKwPK72ugeGMdwBGyT2~5jOjfOH z3hRTMkyAOCc8(=#VHt#3wEQ^;l(b<$q#oqhrg2~ll?`_m4X>vBp2=;@EjY{^AkK}BY5hBYI_eZv$ z3GX$-XU{VSK7t)U)KFHNo;5USSZ(hm7g zBYicao6**;BKI8B8|!TRtAPK^;2#y#?;KF;DxlsO)VYSb3U>I_JGv@6K4J{}Q>y0{rzN7x3R84ov(nn}7X~yop@b zYzp9D)@{lyB6p-AV~8%3PMl3R%b2hc%eYv>xM)Jx#dlv@kIb=#_DmyQ0dBT|n{aTm z6TIvroQz~G9hp$@BjY0@BErQw!O@q)71vs1K;#7HUd}OH$C(UM2W4J80Zw}}zld&= zX^3!sUFVGq=)4i02KGpQO1*n&%bfw8_gzDjvmU)DsQ3Pyw$9P%(R=ky(Fc8cFFgE2 ze#7uvm?KunJX7|v1O3weKtQ*AiZjGMK{sB!Z~ed}`_?=5AWQ51H?}rs@u3#Ozi(Ys6zuoHcfBU-Y zdcNJncZ*B-Z^?S@ja%z@8J+kobm9kT+bGhxiKiS(cs{NxxqVUMr;Zc(YlmOPwx5gc zySIbRy9=H7&+wfmp#R_MVr_rcbu;%UUTu>3MCOuP_1(=fpLiGk*7av}+F`{B3Bwjx zR}L$#bzOeox30_Z(9Z*9Kck%JzK^5#%2kMaL0)i<57tvrSmTnqq#n_+{B>+|`M=-lD&zZ6e5c3e z5Q5END)3zdd`Dtm5d2R~{KU~Kv~+kbcCa(F-+iZlTphxnLHL<}EN%bK$I=~sekO4E zmyM$?jH40%MdOHi|JiXQwwaS1#?dI&(WYXnSqvOECZ^gqu=aO~akOdQhJl;+ZE$=9 zUj7VTT8Xa`Kiy#*3GK@`68e{MG$=5Rwv&E0v9G;zQeS)Udl^T;I%FLAzuoHcfBU*i z#-NP9O(p!dWP@WAxIF-#Pl9I|I}ehUv9p=y6O5zviKiVW|0j(jpZ?4E5uMi!4q6yj zGKMa!wtB_3+&+#1?+v-5yT;SbA3dIY@CwIX&^Kd`0sVdp`hfb2N6BX6xeO8WXaTvesAULwW9L#?Lz0w>RJn zGKc5pw%twJ##fJJjyj|_)fG^W*twVAVXe((z6@uK&*XUkvG`>Lzg_1=24gNh_62^! zUD#8AE`6)w$`SuEInywca1tNV>xfU`hjzJb+oSiVvK9e9{k+Y$FMm(6mvaOADwDi? zBer6L+M~|ES<;*Xv2rMW?&-a)>Eg3`X+f5)3LlWAIwfX|-kAL})nH!QDZw;-ffB>I zmQCUQ&4;+FL1iy{2zLzmecF??7s-<|H)M~yI^2D%m2_HX>mI4opvGq#3hy^B>trzD z=N2PA;q1S&8K_Ine#oJ$>{q|wi)GJp7j0RfKHvQe)YnK_&Z8JoaPyU6taX*jx&nO> zUvh&n(fK9)jEzim_CWtg+gu#z%NSo@meCjNt=S2x@mqZvLcP+LqwW7r*75`Y4))~` z>9nV8Cx;Z`6j~l^@;JArl;5Kc+6F=&IM+5(x)!~1JZ~QNh^mFrX zxdI(jChKE8sr>76U|?YV_maR580ff@MBx1KBJb+wbUl&T#qT=SGLPq>z~S&$cT`vo z`JQF3O|0cT-?Qxdj9pA8|%EC1x`F zpDMa3IU0MQRuqQ%_9r&6kLw8bxtdZ_xm}H5-(`g6VDA;akuk5Z?{|6gl=^4z*F)F9 z7dzYr4}ed^_k;NCK6O=2=!E^J&aBp@hh&fCgWyYWKV`x2 zE9`{;_lX|(ln)=lK0n$HUq4I^0|WnFe1G~NX+PcsjGla3&)hkr9tw}F?Zj&dzQdnW(?&n+bRp1TZVyx_GMpkwI z;fb9G+e&iQc2>u0#eSdL6Fi^ntc(u{?ZmY|R&OY0!CjC2=}to4=S3@J?r54Q@~lDI zKH6Hd75m4d|MG0_rs*??Jp$1%DY$Xakp-ExRYMB-^25sq+a$9Z`thF zjgOIw=T*eMO|svX9Ari@?6bH71b9b@VPy!kxuj(NjzIp&Rl_w&3e z=J$>dV}3tychXSD<)mTY@Mn%yNw+y}j?I|Wo$wgpZo-B5U)hgB2hSp3R_4Dld=)y{ z{-(A`Tg=MtMr@-V_@C_MwuBp;)42;h&xp?pzB60lGvidN*FJB~m1uZK3?Uo4+ctR0 z9|=3)C&vg4@RM0;q)laSa?5gApUbLnP&xD*&3qvQ4AYUcU zAulsZeBVRr%J64F2ah?eSL@y_i7v;kbo4s*J)ACyDbHX}!rMxSb`l;G8XG$CxT0!{ zQr@btUyg9g+ps8_b%OV{U56Cy8e$zqY>;E2xr_!%o|dRo>{r> zGvp4|<*xwm^;>?Ga~*QnskW+|6ZpaOz*ZsWksbK!%a4A740h_)ZI9l>-GvFZ+%Bc2m8qG%M2+l0#446smE^`*^jh?AI ziyWT_|4Qed$^#+e@l)0s`H$GSjjZXjA5EKzZai)JrQzA|l~L$U4`O==`a>*AeA&J} zalL)i7IYRu89J5dRf{OMo^sQs?;1W8UG+Hgs+^t6IfRqW&`)H7I`RD<1CJEm*{?8Z zVtS$3;wf5YnvP602KbDb{#fm|@~7WaOFJqvkcV%g%~#sWI3Hqr%q7|!r)+;zfk&32 z@9WTMy}+;$zUc*KvUgC{qU26($@87#i~PHYJ%AQqEPF+Lc2i_zJN=$%GB^hzQ~!Z5 zfzU#m#jjP?1f?FkdZ^Z8rzq_zU!bZY7_?a##<~cFW zev0(Fq&M*#^hw#6wl3mb!p42;2EI#p5WVst^vVtBly9R`E(RZ)z|RJB%Ehc1Eh*b5 zy07CM@}DOEG&tK%{0aK-JBiyVQ*wJ*-j3mAR`#MHOHNiJST~B$tnBLl;>>%oPnKZ|UaWL7Gfr)r$U9wBX8M@?jo7w7!L}^x zMxoesMiEMZ-&W>9p~Eu)oC+P{m*>N&&|@Z{5uBa@e}d0O@EXLayjSF9PZ4&wd zpYL?t<=O~71$RNbZBja$Pbs0c_sILQXtAjce7?K=>G;L^P&53x`Fe2qU;v-5h@C%K zY|HE$fxlh2jI9};r(@_6a)x&!)$(h1>w_AMDSud~-8GrSR z@7c^VYvMeQpzXr9GM^fI^(k=O41dfDQ*N~o%mnmqZ!-FKF1Qj|?N)FrboGAILikyf zkH3k}8+Yw!DMC}oPvZYJ6Q4@)e`6h{`A7J`MdAZD9v`?!eBj2HF?PgP>@?wD-~$&S zer5q5I6FRY5dj}K`wsl#UJh4kM8A8#ld@a-WrMEI0!tY$XMm&h=^(nC6WKaU{43zK z8Th+N{}vG&@PGRb-?vD7-^TwFzHbru@7Z(lecNDEYD7mHgIzz{WORz$@IL<(S;35c z*a)BO-)*1xvo$vrRhZBX%wys2GstUC&l~9D>-*vBKZXYc$G`Y6w&0r^4#@)8XHu2hTvRbIdEMU0FL^&HP{XgzY3A!8+9W9hLEu ziK8fYl)M`Dh)MnpyGNu)(yqh27dW)h-sS8+4%_(*cg!fB{?iB7iZ9)I*6iKDM#cd0 zObqhsqr$5*kyRCVwHuj6^FtO*FHB8x?oPt~vBRllcz0@zb(R_J{Xv z8u-Y*O^%E3x6|;qMAp9&SpS-X-{t9rhJ=Ule|e7e$kWI;4--E^`U20V6MNwo-phU( z*)__tF5)z@Yt&oo20mOueI=V5OUl;TPa(sGvJdKy{BJYqw-YZont6U3ndVetv*Vq- zwZq>H$TcIl!%5mKa!nsKv~Dyq&C`T>rL*l*WYI5*o->K;B67eWFLeS94d;57S)Cx8kemTRRV|_k9;FHe*}tNQ*+7 zU(sXKzla|F{P?@*G1L5i>G5AekI-K;HbJ3Bp+l1~%E>x~Q|zollmAt;cosRo2_ATj zeL+8!E=5le9olbm|A4da!`V|F?wpTZQz`VW&R|WcqkUw!B4;Ua{t08SqkZH>${lCj zf8MXi+k-mg_vw?zDHGHuQw?Fx{}G+?LwK#M zRd>`W-z)O#l$(hEXX%t;BlxL0i>y$s%Mi9iO_+|xh+5(>axIUD$ zX%L@cTl+qo=KhOxga1|W`9ESK_|NbuHi8S-1SaDLo`w8lU9^;Yw=%rD%`r}+Zr`wQ ze5~YLBhly2U>j^=-zw+snN8Smt98nrYCS%YTd-rof8>r>*$XE7O=TUIyI||a-4^az z!Fs2CV1&!8gw=(s;m!!`4YEfpObv5BqwX7aq39VC`&`X`V19fComA%A3vaE7m;LtS z+qS)vTq}C%0OYrG$Z<~U3qy`;LWYY#mMg%PQNnz=4jJw(k>~h#6EdB&rwMuP9Cp40 z`0tq^s<(mtkwQlm$ZsM)$X={9$SmmezP(suk?B4T*sNqPRtalvVvFy%=SKEoo#Nam zH+HLBePAz^Uh$;h(>Zm>kJ*bA=HH8D{%S8)6+X}(;zvIpUxlm4fj82|lgNP|2KHlJ zMFzaaeyq0(P7c41eON(zr3MeGh6mLV%U&GrF-%A&7zlUZ$COXp2VbVqJa;1gDfY^D z^#8fN^6i54!{6y#I$XuyPWDwvdxdVVvbOy`{$+=d0cBs65g92ReIqS(mv3K{QDl7Z zZP>9a-pHDDmTIuEAJptAT56h1zU&FjQw?T0tNb9c-}`}mRYJEG=)nU$$lND;vyITi z8EC=`O&C}cmAjiVpogghv2_J$g0m?#d?1`c8~+R~ES3FN*fC{~U63AR|5b2b-Wlj2 zkGbB+KCHbuqetjw>X59fLKotv_(@=Y#Mk%b1!&%u+^8QI$sD=i%1Zd$9agYxB zfcxptf$X))BEJ6rhqNI0m-EsFqZ5by+~8_q9a+{3nxKznbmKh6GW?`++4Q{Ha|8=; zNJkftea2(@>HUL@YzP_9UH7!&WPFqUmXFz-2!h_ zpH?P`uer2;8GRHxBlnxu87)RvIegI6%j7aB=DPovy*Ce!s>=5MjCC6#%eB!q}2 z1p+|?Y4K7Cija~Z0kze8UqG}?2o@raKnO$BK!F;G(l^!jf-Zr(Z7H-^f2*SE*d7vC8_O``i}%(%ScN8}S3KUvJB zM@1H6truS^nM=o`{~y9!TI$pPQ~#cfpXuy<^6`G=&=Vz*c9};f>LYDE!$WPG^^vX< z+PE2hzJjq9i9WL-%Y42Uvh_ai`0>aunXakHKM-`I;E>z-*L%%vfkA8QB3 z%?Drx_i%k1`=2wH9{Lfsf`iD@hwvAYxpbi#<&yf!T>8A)VMjId=u_HUy2Ks?&DEnv zY3SscOM{?Ik(CW=Uq}v87tjfNtggr-h$S3!41~f6I5rD=o~vS#&hv^_%-y6XPGNS-`Ej-V>0^2Jzjm|hv*mg zc=e5Uu>bs5);EgG>#uLz9a7)p zr85g6l$ytpk6aDN;evxIhi?!$tx#!sOV*ea;U$sj>X6qA;48&O<6_=z0^=$68Nmr0 zfmfUf9!hWm2kV0-9A*=|&x50Nk}K;Kp#_Q23=UqyDZlo#d%*>CG*1!J>;i2k z-}Zgu(RRLZp7(q5u_l|Q@ST15)yesOJ)xKm2)0*ZStpy$NFDqzvN~kzO!~@)l_h@n zu!CS_1HsBR&~L{FfH$GeKD=xs{a1c&+AA(2`1f$)ep2s?i?`g0EaO~B-38m0HAAVW z7-C*E0-UU1XYU3VE7;h|BYhSesGakB)1I_~o9zK^ zcEYo1Pgw0>N6!svvEF>gd27-G3-Xgw7UZAnFmOU5nA9Zjs0p0+OM5%NA6QY@PX>Q_ zW6$;0o57p@7sq{izGY2F+r<4kYmK~%IDv6#Z&~l*{E4($>!#Z_S=SFbWxd-8PIS;& zYajMsgCU(1y~$b`y{Y@8jyLgdeXJwEhxTTx;NN>mJg1I5^M^mbHh*o=ivGnp`0^1y zVBawMigB4q45rzwxx34e3r*yX%4(dlyDK^fp}oAYR9iRvTe9H8=0MMa9TiOJ(C5q= zc67BDFFHXDx9kKjdIF5-UhwCU@k&8=u%JTw(bED)2=203AH4&CZ&&ur@Htq6gLW8m7e?kvL7dUUzEoMh562T<>Pzd0zCG1MhAf+4b(AzF}-W z{`|pMl^BX?&bfS7a)XIZby%NJyVRjOV^eZD9b+s`8U5m@;^!ZUtu%6`vTG|CrD88esWX@);&VmZRt~r4DLK&buOvQK&oTK+ zdyWauB{tU>Vsn)l@b6>W7d&I-EOUT$i8;`!kKU}s=o-a;Z_RHVIrn^Pg6JJYuOTvp zA^nT0EVd@*pl-C&4b-uLx*4e({wy|=8ba)@2wN%GBEdA}bNvnC5;hT=WiQv>$R2Y3 zh<0pnJ;<@>O$I*II@0u1P~T8CU%R~S&|Qh#$7YfGm^67ET>{%usf{PMcvD)^J__+cw+k*JcNzJZ&~W z33ct8&^odbe=%8)rOl*1#~J?;V|EVzn#Ee0$L24yeMCF8BF9K9o6TytOWNmXhAnv^ z?tXxSeZ)8$Cu{1v4shz6<&32^jH6 zNgQT9mo?zSEsMH;zU6gmJu$)}nbWV}5*C9?SlsC-*RzgbrX5J_JWAu~rX* zNm$N19%I|3#gARnoj9`AFSo3*W+R)7Ve5%}GMcS`<1)5fj%TrDW2;LC6I#GNk}Vrq zMd7>`n9vIL5+^mPV`BbY97m_}4)(pd7Q?k{>KMzl0`{^7WrLw8V5^jK_Sw|AQm(O| z#I}q0vX$(=n7&4fGyCQAHP-8%Pmhpzv%lkiUJ#rG|J2MD&AfjjTZfJ(t)Ij5Tu*G= z3ijK|)(~@cZGL;@q|7$>oEO-}fNK|BOy-={jZqgp*xm*WgGtOK`p$)3=?MMMN&1IA zISOy`I_)R;%dzZ#1P1e0k3%@qFAm`hZydtgh(kEg8;5YatbL4O;pJpJxUz!n!HkV= z%wRQ6^tf063uV)1}{$2xBksz{d<&azVo4+@B7IZ%?M2<6Fi?k zKC?Z$x{Oi5YWv&O#Rj_*-xJZ>ejip_bPT@~R{O8$6!xG~@VBeq;l*ff`v=<9MZWvF zcJ;GkGY4%S~EKl3N*4~5ifGjx~k+y^g%|^#Xp4}e)%t;i*Jt( z_A~!`>@qsnkEa8VF20QpL=XRS=-?OB!~efX2R?qa^8jU}V0}eLA~;{svxl*s2+wTk zjUJx4Lgbd!VLIDj#jxW}t~rCr)xr8EI(MHAUi9%->))q;OaH#)f2Du#r9@lmroE!& zoDkjn<3B<7F1mK|AX!dMs|Xp6&z|Vrw<7nor^CE}+^fK|_;9=5#!Bjbl0JRHRr++n zhxzQ2V$W(%kGY>RK3%%#)qhF+?isH>JsJKq9^Q1LSD(Hde)DdxKK(OIF#P43M zPyfoRPd_{D)i!;)#0wJq?o(4YYWnm&V8LY$+=G4Q$=`0YZ$zKI+^bJt_C5M^k;#3! z%)$603O-VFng8r~-Cs(Nel`91Xisuqejoik_$y(@|5<47YCZZdO?&O?(ZT5!itp5~ zh|!gNQb)k({%k!uI&=+B%a}2sOBb0&=0VYoYx;6zxLo8z(Tj^td?5PphtP%3LJuz2 za?2K5bJgj$<`y04?|)CbUbM1*9(qL;+2SbQ3FH0SkzIl>=kAs<>d}t}ql5A2!!79O ziqVIIsTp33J{){AxGkmDR5ZS(-FrpdYQ!%^-Y+;q4af2VxUKZhs*WY()E<4w>=s>w ztYhWK8j0$hss??yWzMrjH5Po6E%+vvs)pjxujfxbvhd(^2$q2l)@F2l{j89@Yyw zDfIhy@lY!f*y zV4J~qoOp1OH%OUkOlbzc6G=?i9&FL*c80Ux1t#uAo{3>SJ;`wo%1QYfJBn^6BmYaD zDPTW|O>{e_DI@wFk8Wp4cZs`EK)oliX}TTm`E)ziqtmJ6`XlIcM9(vb^AqTGp66V2 zJG(dzLbtPqF)Ml=as^qhLw~cj=s$fW z=1A;6Lx@fUgM=1Vk1C^2cunovq6U<6iX!Hc{7}_la>{*&q-ZdWHc>+AMjri8x*+PkZ zE4g>V@O=ub24PTi$1 zJpS`#1=1Iy3l%--^nOZjFssojeUr;JnlUB1>my*)ga;@_ZzKNON5ET^GM>e+b{@D8 z3;4Q)UVPnJbT(`7LlbL2yxAIx`fyCbaEqjT- z*FoZNV=EBf>YoxX;m2U+4&jS-u<-T%^Mcr$F%6l#e$DTbTa+Z@^~mZ;`Viw}WOd2ykhuQelab#wS^b%-Wc6rb&)$+^S^c3pmj0A}G}E8&vX{P; z_^8CD(%vIBq~mHBm_}l1>pcDWen^C^%jCyuHq)Qa6Bkwbv)cPZI zOznf?_V=&%!$5wwKSSxyP;Y;Rdiyi~wSB-W_orO32 zPz~DgHGTQ-Z0Ep?wV)G}{!AEEt;Hm5(Rupw+&cPGmt-W4skc8DwDsq`#5S!*_wsxC zQ}T8AaF9Q(KRtR?8K3{V{*)B3N^E=mS@sk9^DO=O{#E^1!?@hUxD=i0f3cUoJV%WD zK*r;5IX=WX*Oz?<&JT0^bH?WfKcYWBpg-TIKlc#hsJ;H&Ltp-$Z4dqVHT@~MSI*vF ztzojhraxQ30q$A1Ao*+L$#{LdMf&(zuw624rJwtN?UMdnKws|p1^QF;W}fkh-t0$? z&jYL}zA^fJ{VDlledDtXjQ`&oqY@Xs?5aN9L|+O{Sz?|3g}wCW9=1d9Fw&Qz8;xgw znDd{j8-4Ca^yzc-X&HSgajX3MRCEV2M!%##7qC^*r?1hcq8s?KpxR!EUf?zQPxPae z#0`E;mtZ`ti?v8UKQpZ|#Mjrc`dF<`U!y<2^!BO9ZWegbd9zdSp|N9{*BpAI`pKZngb5 zxPI|1Z&pJzfAeVS(dKgw_VhThvmW#MD7C6##rtl#I1;^3b9yAPqtJK%_rBHy2f5-T zFJJ{caVx$bhmiI5v0gvM`IcTo&x@{3@CL2uQn&OPsNoG-bx|DOreO{C^2~I~g^6v5 za(gMaI{kyH>6AUHokzJ&qRX33dC3R3kn*$nS97nN^I4Q5N4fL3c0JN%=9v@PaTLe5 zop0uNfLFHKzpmi?flb6N*%Z{*$!234&o-2;J6iyvAheueKj^g)o41Qyum$zK(XGfd}pGQ8kVGnc7FQ-`qIn9RMxXcsB z<)&qk!=8foTu0ffW4bKm*-H52J!~7<+RJZtFYl@0`ATw`?O~H#puSvZ%lHnt&cexc zmVX!DsU)}Ad&G8;xH0caTo=j)tXP!)Vc^V_5<_OzaCOxg_G6+af@_$l@hyUT2%_8? zwr!CQ=g*3KID7`S$b*rOlSA$C@PSDl9#~}zl&@)R!T;aw2MTLSd*!3QJ$y<9oot)UTk>pR4_#Bca zj$AVpKHjb9EUGQTp7Il>$FiI|JPId#|QKG!{aZF z9GkC~I5^lfXC}>9xj1gd${hR?iX5#QyCQoC_C@&ep`DF(!Bgb3*W^h4Oa58@(}L|e z6dqLa)*L6M!cJA)C2@a_=Uj>RbF~ceNcp1tm)X{`eZh9MOmcNzyQ_1>)%ScbKeE?@ z;n}^$K%|X_g;8ygxk=Cu| z4%QEevGZP_x=QLi27Y7|{PXl%E{`-F?ARBK;JSC4uV7g;eTm6n?+Sk=ema7g5Uhlm zHZU=MLizt=#6G)0-o^j#{3rVVnf(8ZcK&}k|G$|3U*-M(0ZNFg)Bm|Va^InjeJ%X| zUrx3rT$=JWdDvC*vFpgot|vcxfaCPAKu7DWpk1e-XJP`HGMTgDl>p0}sl@!(E2dy# zyOswiQC+xRH%YB+{6=x#3NJi6Rrx$i?Okzjv*Nz#zQUG%MdMnkr(I*0Jgnv1GmN>Z zBAIIq`T)~>9r-WG?LM0Q-N8zw0U7Usj6GHN@=gQqZ|uCMYK)XgQQW$cBzqz8`x;{u z_Z)OO|B5c9$wsavuqbyt>RwRJGw$7ryC2WXvuCF$%;T}nK0G6sOuGUI;_09MyN}TCc6gIEwoxu(3AO zr#cF$*D$VuuiGU#XY0tLsS?lP!npv4Ygm#)^0PFM2P&IU_eSG>wP8pk9!YaY6s(G z5pO2t##S38?Qt{hA>F%m_r=f5?n}qbZjr6)!QCW+%WBvJ zu3B`69HW~sT?X5H8r|X~azPP$dDkTBEcu`&QRkvN9roQHj;bl9zEX!wsRKTJnQP05 zDXdH^T4zf}r(z7|I&1yJVEk#nywtk!55_p#W!^3CEq`xRO#?Bas}(~CwqnbWsa~H$ z@+xKGYgjn-&-Sh#jH;1u8~AqvzL5s#ps>@Q?bCR#OM6xHL;ty#Jm*vNp|*M@)K=|RhwbE0^wq(@_Y*0*l~_Ia4JI7_ z23`4k_c@MDF}sne3ry0Nw55@C<`0Y$17m9!y60tGb|yExsnniae4Aqi?bu9y+`RN% zRh`h`G}8}Z?9<@Yn#gT?bXJO^ZvDSH9F#LWx3FpevB&R3&(ko9oV(Wy3NVhSye#3<50@(-(hxN!&sloyCk+pu=L@LiH?=LBOjj| ze3@-W1Hs^~P|){>+MLW8Qbux;9z{ReNZ#IH+L@f|(Tx_xJ%sT+E{gJZaGmlK!wvb3 z10}bw&UOKsk!O$X2zE4fB|kB9Pb0Z}gQ?5W1cjLNJWrkSq>cJ2?%C8waua89zwrV2 zK6#LPP;M5nqSmvQ+{548<=FR<;yye{aW~&M{nlvalnaaRcI=5(Dx`hoT@o903V3ww znZ+XJ`dgE_9SdF#V zCZ~-EcEoyf2VdFyatF^2iPdN~Br8_S9egi&fHN6~hLQv?EpD)9rgIJ*2J=3lbIotO zq?&mv!8>o^3)!XmA66!jaaT$lbMgU=JOd588TW$Qufx_MnEh*M*8_~jL)aG{VXdm8 zPvpMblk0L{?v3W&zL&rOdFS`tP3Fr^|7Wbd_G$yE76DaiKhO{ zefmIi?dcBKB&frMHx+m1V6idW<7ik+?8kS8IGS!D-xK*2j!?H7imX~r!7TL}+t4CU z{J$`+890BmsD~CaY#(|{-`sX+k{Mdra;wa7)6;n`?+|;3tm%g{%`koendmH6mKy9Y5}Q@9%g32}KAmc?fBtN7O*1;_lf+{%6E7fV z-1r)uqFT^l8)r?M86r8c^vr`}rzU#Wo(*MQ27Fc9-PB`ii**n?}L0H?eC$Q{Z`f?|)&iL+0Z; z#=iWo%snoBs%aSe@zC1bl0+>})m(hN$7fgDU3#NQ@-WTg`OVPe+_m$-)rOB77iFs| zk19{jD{&GVDzPm#l!dZQ=^sfe+$D4(vEEEakkjUoJ8~8M zEP1+CK^yb>uC`l=N6b5SeNI11e7iTEK-NHd}{#TUge9chmK>F8fjd^b*a-T>hvaSxQqAZ zkt@x@_gzyg7JL~(R;WhHJnSs&jYs#I-7EOM3wje<>;PmU!J5sGczg7Lj~~kEO#X!v$n`UWbx-n=%_N3&cW5{S9hZ@<8`}+RqF39= z{L(;~#_1cJ6rtIZY3NjhAoY_fnCKJ?I>M38S#bN?tL^ zQQMlXG*5fx@tQY?IS>>aWxGIbF?8;I_VZ53EB2n`xT=@AKZ!Vg3C=0l!s=;*_X`j9 zk3)Ayto627F4g>>==HX;|A_tXXbXuwuxDBv_;h1RAhyWNlDL%Xv0aLeF9=&?CgprN z#9rq)i3Q_}W0XF1CF^3fy$j{H61%aQ{Mr%=<~q(L7EC)as;$eaJu#|3_;#EE>kC|$ zSb=NU`(jkTU$~_I2gE6m91&?cv27=5xwLgU-Ht*%d1BDP8A|?4%$LNgV!rsT-KuIN zceN!Q+IyZj1p}D7v)0Z?-cA7TT=cn(==}=4IV>fYw$O#pgwTkOE`(0Lk2WO7dV937 z9opFUA^f<@?AAdSLK6noA)yPQ2kJx|7vl3M_(?!Jl204^_U;U5#zz-IGyb%(4ZBJk zZSY>9jVaKE&_y-$aT(f>m@emdzvMO@>!pozj9s_BgY$1*+PJp(V1EPsDEUo&aeg*> z`&MW}u+bZdOOXYCBy_P9J@0lfVbZVCztXoJy2wUnm7V`f(nXhV#{z1XF0L(J(!Wd4 zjQ(3Sy3o1g|0LgSf-Ygl_BOhB=SS1UtA2D*tuq+Uv8D@MZ1>WI|EO@;0r%-O&VXo*8Iy9Ayk18^GMrmpP}xdW0{eq4>$DArMS(JBP&0rtJ+$wxX191yP zZoUou^Lxm32Htf$`!e_#k9@Vk-q2~SU2;r5!nMV0WyDIAcMgwUYdHjF8U2?S)6SY_p*6rFnL&I z{;!rY)Dyc?b2VjFQD%(a+e zQT|2d5%H@tFrI?hOl)1*WIRi3Fe$T84ReVNC^x}lpOx5PKKtxi)|Xdg4p|Nl%sT9| z&-R)YZ5JDDCuG3r&~V#ACE9gTn?KCww_wwKfLL{z#Da>J7*eb)C%tos&-N#AU(~&WjbG@ZEpKt{-@z#F<+|jy z?4^&^=97)gCnvo&rvG3*X`=r#nX3%sME#-lOK>NmI}tsH@ZR#A#KV#CA#ssLF+L>b z;Sk2fDB(@mTNoc%(9+P-V0#a88i;?*3FN zjgO40#z$wy$L)UOV=;1&Z+w(9KB|#};9r`{3vZ|?^NtUAQv5xkPk1(;93*2x#)Htl zZ%oJ-`Mz=S#*$VIx6tmmSi!h}Km1k31@HBZizofY#gji_TnO*wKQ4SWRT&pzCzo+? zj&UKpm-q#WZS|(oxVCX2{MY}B<3f|qkk4gYgs_%L{ItQ|SbiZgKWjRfIa<8q2AxuS zPUjgHMfk0rDJB0nv?V%@v&@N-TTo)n?q@rIj-5Pg&d!18M34>quX}VN@y-^)-RlI`omVp*6WE zAEs1{OG3vN9o+>EKtJ{(`9{e1Zc6VcPX z%C*h9L~_Y1PSJHVF23I}h5U8>pY`O|+Y2UihR7|ms54_o>MZq*p}ya#=j6hg3)J&z z>iMkHbFzOulZ-{)dM5eR^DA#XC;8Pgw4HhuUsca@&_V-rF$o>bMQ<)Zsp}Z(8q7R; zDn;la%_MpIF8|I=ObYDF-t+UEi|@UrCwsk5g&{217Td*~)$qXmj;ug3Eva#qGgBo0 zV!ZRlXVXSBj8$u)EmNT`*4SWCYybS2#JG_6#hKobW8_7TJ}yD@ai+7od@(TMOea3S zQuZjvLT`<%(c+II`m_tscRl>4A#8}PxHx6R@8J)i&D||_#a*nXSc0QMZRP19cGm-H zZ82jd>r(FSV)}dzblFG@p*uzI3SZHH?2!j;gQI<=NeO`lLtKU#bE+B_r#MQx!f(x2 zYm082TXo?>)8T2(6JwMLp}|sUQRuM2 zWp+5 zeY3sw{mievg;&*gdwcbTr`pK8)n0u=y!2SdKly0zKA}mC5A)FI-JGA{{%Pp$0{_HY)85z?W)JJGQ?4wV4 z+w~N@lmEN@-+B6xaqCV&f2VJ0IoZIt*~haAIqV+c+2D)h$y8!p=sZonT$yP~qAQgA zw&-e$w_K-;G+caQcPRA_{p6|jCTvFr;+0q=rycQ1ipiH*PQJ`X$(Kp4i)gU2JCFf( z&7EPG6Q+jEAzqJjD6vZLFN(IM@2DD2zDz6mGRX~z?k>~6gy-B#4!mPLn;lUx6thK{s*Z@@eGhf|@8m%0Br;PPv75y{ zJgD&Dni+~}`eI8j+qHwE>|?I|IQbQL;#u4qSlFdT^mS>vcyg#ICLMhGd(S>ra|~LQ zfBI4XLz}L`@9KyCXO-?B|33|uoZ6-ba%#yrXw1w~qF6hMLl~>$SdX%nDp3urJ$cMQ z9=-U&{5_3FNfS4#6On#(9Mx&&fK>&ZmFDc3VDHe$ry;*UZ_Y*FoKHNP zT_drT_v)fta&HZ~hVOr0=nuaSjL(|M-+tfcqGy^yo;&hx7x6u@u|)D;4Kd91{HxfR zW3VfqVI0ZaDe-NEk6rtad%+~+uS)nE`EPmd%qGRX6*?qWwh4Sp#pz+UgO|At+{{4m zGr8bsavYbYY^&a)AGN345MY@No})=0V3Il9uypqQ!J5r8&};Kt;%D;=xXLd2PgDk+ zMwS{N*aKr2w#w>~#puHVy?U@E_Ud%b(Om_ro_`3%mOAQMbZB~=sZk$jLSHq~lBo=T zv1BFjmV>qYEjzKT&F!~R%iZ!K&!Hp0{`R88j?aFN_63(;@S;H(&Kz$l=Kg2U_6h8D zQPbAg-|O;OGWL?;68}Z?d)eqRA_uLp3l=m=M;*`+M6Rnyt|(b!_b*d%JLicXlElNga3Q^t4G%qtB>AD|Ot7{pZb+)%N53$8pLW zr_8EbSKIR$cRRsSyh+&`ppz4nPvaZMvB|ugs=OSjySd^O;#MzaZCl=Dd)5Au751^6 zc2g5?>Deo11f7VuBG=nta`GiqKLvew>}eeP7JeSh!@O-GW;9C*|WdJmTCX0UDX>0ecW z?=p!zR|;md1*}_wA>P(GmU)5spfDuF_K_}RhXr2N#C9kCI?MyjVWpm2bl@qpTy$;c z&-T&svdZ`v8L8aVB~s~4ETP^0etO7^nqS^&WHg^&-VBaq-1Tm4T@Z&o$>VQRrsaGR ze;eXyfWb55i=RzrHeWpJuC%jYS7jX#EWgLkCf+qO%HwBKjIL%Ox|Mnex{e*r%m(Ysyovk6HN8-T~pCL~34Zg&$8L;P%(ar|>|{D;16^U?Hh zSLY@DDSkF*rcy^}aCt|MpUoNYS(~Bd`Zcd6pYi(H)artb$)z4Yn~m$P_}M&(E^fJ3 zA1ARg7$1X& z@G+Qlm5+hX4`??!Qt<(ANxKs7or|#~fF!i?v8OFhC|1Oo)^{s848@rn^GZf+zmy*wj~C*wqAA ze1vBOcQ5#2!H~ZWruao{>k`8Y{_CG2m#R08mzGP_8^kalMpf*qjdFyDj!$(e=+^eko2>P85T8yOZ;yV0e$Q7WOC!u}>(PP%}0{ z*-)WISPlnASnAP1^;#E^A~Mb?_*PkKhfj-2k!#=D_wk&6vE+sO2Vqmm2IIADYLu22 zc-z!B?FGr}wDo(CF2W-3C|LJ=vXuL0Ds$ZpA@)0TN=&^H5poi-xt=yDfT!PPFxQ@a zrl{sLZGbJ@boaDP*pQ;MvAYppoxAVZWPf_{6B-WH&HqUpks9`bx!nj(cL4iyjNOg+ z4Q=9jD`R{UzF`B@*cF1C*`rIaoZ;Qt`%7L6Ijf5|eof5pb9_Vm%FgkPJ^$*7_x-i^ zdGRgV#GJkn`C)(>=V~c@x~7&bc3^MY%_H8j$F`2zoj65_ZYk`m9cL-Y}+pQt!>Dp%L;pGaopDO4v~q(<~)G4 zX3VkHkxK%V-m?Og4P)4bKx2XfGm&pe_!9$V6~VNsde><51<0=^!3Z5eK6(+|U#Y4* zj-0*gP3)@SY$xEe!zPEBz!+JM>BB5L(T{yvGS9SH#fJ!-(NXjnJJ5ZkGY{d%(MRNA zWO$Rr6BYS>fMRroV}p8=?GrWB_#$-tNl9AFPIQCe*pq}u`-b)T^ss@9m0Z@}9EUsT zwicNyTL%X1x-=yLStgM+If;A8lu2PcrNTd|nlC^R<3@1)!b1)QU)>L^|8MSlu*JZb z`tQp*yJNX7HoxCyd{uRDfKq!4_|gN&up!`fW=>1CH-X(P5^O$g(l|hIUxTiop@-s@ z_1U2hfgila*?5ZrUNXdXBXft~aU1!z==S%aA8Cw0M~^Hvc#M0&O8ARo$j*WXZ0sxf zua${GUA{_oB}jZxu+3dQNp6gpoqPs6!8m=QtuX^VY#i+fp1<*cQac+Q|D5m;TjK=q zxLgyR%V4evK3C?6h7o*gfVuW2Vsw54Hunhnn|ScQX(H3%JFp9zQ(3Ti@_3FV{)>FK zB}H-nmj81tRBDa<8?uwlpeEQFb^H(4(NEbL7sNRl$^W9^bHNUe_hU>jk@9p<#fpk98>bf&mu)4Ccbw^kH>+ zuwAgkbt}+iE#w`WA{?n<=B&Z!k!(}aMjQlJ8SF^)VuG*i+c3e#R85`@$x78Q!GpoP zn7{;I1O4T3Odc+i*r4*jYh;n5N3ahj-aU#omE2KMR?7X;ltBhYhZZszyw-h;v1g%olX2b%PQ{JAK;o=`?X``27Hp%mw}L$cey|}Ur?xp`%dHK_M2iG3$99yw zU^BrI{Scl(z9D?(LN(B(0~00w=Iz>T-$d7l{^AGiw)AD^o*q0yffvu9GEWJfLGTkk ze$rJMgA|=Gs^6CFZ~s;$r=cTn-zNe;-EvxsT&zVz1@i2jCa3)8YkJf{Yp35Z|Awcf?s%&W5GN~TtVS$efWhX;1}KpzwjJ51s_K4(6{;5cCk?6!+xlP z2MfgGZ3t5O%DmSEeahOE<%fr0&C~D@f<^Y>A;Q2zeAb4Ch;zO; z?Ft^EP9N!1X)7J;PzL@=If`m5E1eZGOVJyzowgV})io)Cp(>mDM|(!}V*7)vvl&XN zhK;(7eL5J3h44u#yj#wiG7S%*vVJK_qE=tl%Cz6%6h*U zT%m6~`;X;g-mxsYAHiS<)=}^mf`65Bu`D|C&EB#68Dn`UGUHysmx#>B+Pw%K z;2dMF!FadBjSML{3w=53gg?mvtJozRwaz=@9GelEMT1V;Oh& zOt)bgWh{z}DfzY}#^*NHzx#<5vT<5$Th6T~N@G)k1oz5)kvU(`bQ{+Z@A& zx=$yvaoP&}ysGVjVS2K3rG0Q|wf#BD%UtmH@UBb0t@~(qEH5cs+<&PT@7k&+x#Zsj z*SJqrHC&_kyGxG4KEgkD5L+P{tCpXIT4Oa-bS(EY}$<8=%QoOUpwR!ecC5 zQ<+?itu7r5+Xswee_Z3`uk#!Yteg87&xfDBGN#3Lw_V2bfGgwqC}aB=`su-IJ>$9@ z9dW3aX3Nt(bqV#-tO1(+MDu0v(DYo!^>%z2ME~kvM#gn@k=jM34b|n+IRguZqxid0xZ+T-=oyu-{TsuzsDane~;T3 z*E-s66zw^Sy}!T5^l$llc*eExuvhzg9HAbbwKmY{@iADAf5kOk|BOF+b9Xa$Ft&aE z6&@c0&)B9vY76m`_q0KrHn;t~HW<%8Yi&RuNgK51XYtFofv3;fYl8;r0dB?V$zA^E zzx)5#knoR*(dM?F^WXB%$C(HI;r~rNo#PwFE-1AwcykwWL>+#6LZe6DG&?$A({6|` zyI;Ug?Fo@M!tBU;pNmhR@b+i$0l5YLo(61@#mE7{e@gMl09Wmcj459JKjmBef2x=N z_we=a`0@T?+iZ{b|G!g4WXCxE=?Ckj$p9%K;Jb|d;LTR!uPnF+53iJDvXpGJ7nh`J z^HFihJ9f(r8|_W{5R-@JNNM9a2H;~hBx+98lToi~{>mnvk?#)a@{ZlaJl>eTUGjZK z-AR3fPswA>=NZk%%qOFXT-MMz%r3IoL4Atp5c1eL@NnWsxWA=!K_fKY46Vw1c|1d# zyG%{+9^K%T=kh(_hvrhpt~ai*cY78d2fpJ)=~KS{DErNPSA5&{ve)c#YN&C%w?4u* zjq>_B3EyPG=HE0W&*IdDgp5-|EXAdBWN&nBGP`|pP?{R$+9wz`==dD-_;lo-F>I%i znS#L>$XeO>lHx9pQ+hv$Oe8$iF@2QN$43cYCA`#`7`4{NPs#sz_^Bw@Ok|_)xA0WrLnW9F z$vt?8xj_6ywxNF#-YO10$e*_oUm}V7w1vIMNWxngur;0o&#GXT5nrOg;8}z4894-x zbhR&$@K%d>PU1!h&RcjZWvYj_x*OiA0X{1*_1EI9u7S6@2Ki5?;kDKu>8Je>FW>Q3H)&r7eL{VphI(mO_^591nf_xT^F|*ZmKk|+}Gh?;=Mf~BhgmKxYObS=nNs-!HbQj-Owu;k3jF` zUU_8z<8G^ryB@?g@Q$#S%Td`02^mlQHe{)!XLv$MTJ_R^*n+?f7Gf{z3e) z28urxW9&3^cgfEmYl+t%%U=f}cyWP;FE1rqYN&K-yX8AsUtgm^; zSG>dDPjBB(^wV4VBmA+J;E%O5=!!p<{GZ4zvAS44f2_Chb3n(&e4gp0@nGm>fJR4> zo89N9=NVT67+2z_CvuDEAim>|#XQ`A&DM3}U5=&!(Dv>EZG6d`eclGfY-wp$F}jCL zWRM^FZWd!J%UiE3)|t%fJ!8wiZpiM<<>O4q*B*ZNFfvg6B)S4zF|iqCJ!I?dm2Dc1R>*Ker~{^uZcE`Axa{rr~3dgT?5-%_eqUU|oU z#cv6og!ami@#*zj62A=bTT+nu%JEw&Q#^HNY=6gZ$@LQR6Ll{{Cn)me549KTZ*w8@ z47lPpUR|EmYzIG}e-Xd@N0Cvk_@l%*SBpQS=8s|kLm24{=D!2bzjOwZG8_U{C9i$mj>!RM2{YnfA;5XJUZSh zd>%Yb^APZi_v=0X{IBro8ok-`9X@*Vr-yQ9P~WMV&Ej9NM?8RC;(qKC_hF~_Etso& z9oQ`@#C|a=Oxe(=7v9`lYh=r33n>YuR}z#Gk`M)ckU`@$`2cu_5w_9oK^`k}XPSu02WL3LW3jC(xeR zImo_?ypluvbg&QZ9BjX#&kC+N?Q3}-{@e4T*)z}2k9s$)=H%A28u3{qeo)0$Y+psp zh2R&k2kD$$;nf|NN_U49cC9&zjX#sU3%#n9cSC2*FR}j^{wg1v&d1nva?l+$>ARbV zfo_rV-AeLIp9!v2MX9 zs>FxWVNcRKhw`lapM2W^-+KekIK1C9P{&674U{)nj3q-%L--~>Qx?l@=9+GNZ!B$A ztOnFXG5PqB`p z*my+VI?z>dA7fpTdd>(?*6N9|o!RNrDrv*r*jmQxf^7?kRXjQmjK_$a+G66gi4VIA zJI)T`%x(??%W{2S*6aXfc%;~jh(jYXTjAxncHeLx$UDixy|#8M{W!A#F@H1 z(!Ou3$ZAQNtaf~YM^=0K47!B{=GyJ(VGqE^9(}|kvo)t}xiy}C?gVes*ma;o?09lN zXLji-1N>0l45cCif6Lq0e6jP!l)aumv+Rxh^w|SeWpV#?8P7Z?@09m7fH9d(9PY** zgB+4~txz%S5c?{!n$5!amif3_sV5e9S8putRS`;Wk=4>QdzIeV`R~}Pw13d-ReBc~ zk?+{6nkSjvf{nU5K5{npD6zpGKu!`~&}WPCV534^oqhltB|P9_Fxi!c88KE3t- z@T|md-3Ugra@u-LZ@m$@I;M1eo8J0&JoiI3s1JSw|M!8O*t_`A{%s(Asrk`*VkvjR z4kd9~1w-{Jn_#G(n3k%=Nt>Tvt6`{~&_RP5hN?3830<6Vy)MS`D%Wly==u zV!RltO6Fo8hUyL0*MrC~U>P^^sUGa`yPP57dpy74~2iyi50gw1aIJizxY(M zGo^atr_|a%!Ok?4xIoBGyWV7MN{pQs+52<}BI8IL6?{94^SHj5bFo*UH`C&$Sb_s= z&|*cNicd9oiDGXYlVZJ5;>26pXjJ5~VAUq_jm(Mr7vD)-7rj&JS_hrMBQ~c|#-JwK zu&<3ga|gZ=#ry|2jRwkz-bP~biG6DT-@%7*q~ts>V3#TK!;Y?izY4?8OYnuq@ZnfF zE!6%dI+GKW6%2c?am6(SU{h|V55#`3Zg8!=3%r5&_79@X_rgmF&gTyD$E_pR(qSdZ z(xnt%X09IwuM4d=bKQ8IPO0rRu4_#;So1N^J3OI=M+Nimnt{GykJt#QgUFVWFT+?| zsM(~(X>p1?dZ%$&wO&1VQkx!p2XuNxFI8**xV!T^WlFJYg%pd;^$f2g?@h23^3B zE?0t#fzy`TmrnJx;nJzK_Q3e%_8{7-m3C6dSF{Y?RN_N@z_ra>+k$@JN}MQ9{DAg! z=0XdecGEjUXtO+G{8*4pijkSxYcHW2Ut5SxunV}dQ;dQA@EabTaDwK~^YGc$1&3oS zntW8>1KTZQ2H(P3_#sn64DyQ_;u=Exh@STd_;u;GxoVJQ9OK6o0UiT>Kw=-ue8)GT zccbkTI=TVa2dCrrHDU5YHRuo|cDxDOpGjf~on-x*KyCx^r%^k7m@M}GojjYShP%?m zXQoJEC`XzeQz9*@F3K2r?I+3EQ`2HPanD@Txn>J=v{&ums?$en{xqW}TQz^0)5Au> zXN`d0DuC}A4*zu*JoPYm>OhUB7F(dNOdb4+l#}+5veG90<(j}bo>Xx_A60Qk zuU6FSvnmeKF4w_Bm25|E&$EXqTa>P>$uxplK@XJWp#5W&oA>jqx@dYq24!#RV(xcP zA7^U%bL)am^p%0@@x(fmcdM$hW4bQhCgr5eKFT2DZ7AfOao~=#C~Nr0>`qtXC>KY5 znWzdW8^AmFP_}{pQk3b@)hh2L9!FYWY;z8n(oD+GP8I57(+djYm74`GD$hOpr`82& zN_cafe&PMJPX+CRFG((KCjKMuY5pVfzVEwtIih3B>0z`l-#taUQrC(Z%an?6MXBth zw)CxoUNZ3q95P~hLAg%pSEN%I&)}AF&Q}|}uGThVNN!-`& z(cX3X?27kvNwj5xDUdRCp`P|mP?ErZWmQOfzo$#ENqHUb%;bFm#Ev-c*WO?wXzv8A zy;Y+!@=%buqK-b_M_u;w{sX)RTuQ~YyyG1A&gs;OL6J)3^kAiT9do%Fh)+BFXraZf z<_e{gS}{=Qj^lk?*KuF2<+fcDzxP3gnxw~Ox^-f9p?+zsV|6ji0hIM& zF)xF~yyV4V`r5yBTX6FjnNR4ekBDVv0Fxy58g4AFGMsPSV2U%}49~R7+1lFsD13s} zU*Gf2%cHK$&C<3qmZfc#!Vv1H<3IJZcYxN`C!o(o*a%-|ZV?-X#Cs6m)YF$+7nuF# znc3q)DyrM&8P7a+dDNA8%s03Bu3e6}rp32DOezd%&S1S8?4^~h=vjo8gigVmI?eQT z&Jv~KEOi@59Xrzo2kDE)TU!^5rVd;Aw#RQT#`(UCCun!QHs5*c5j4AjxY8z6_?xJvAZDF$NZp^qNYxMJxtBQWZ z`M>CD87q~S85g`yTQ6JnI`kMi)=@p{X#neLAai>M*25r2NNNuACb40A=GGc}=hhC! zzc|K_TN@jiTl?2}a|?nZb89=q=GOK^R}+w!TdPmat#yRHRG{mWTN{0CZtcCxo-0r@ zb8Dlz<<`EsdTzl4)sS~P<370i%Eyx*TK4$8-QIjW?x9tWH$;g2H^w-Gd<-sKka4B1 zgYgE%kk?%ooENDx=B>(^7js+<&D)vtVoYT2%Q4M4FU8DI!i-A;l!;@NaAU3#Y3u>) z@gYJ+jewW9LkY?|J^ZDZvb)M+Cg?ik9lq;@n0n5^#TZ{juee7s8jmQU#$YupZ-p*A z?^9i5UXL-eV`i&Sd5@2=#jF`KFQzZ&E_BjEbb4cyPG=;JW?pwSAn$-K#@Ly6ZhiR0 zn1}dI?n5(URzEy1rtG1z80u^sti&0gSK^Ixv4_;_!t#iznD+%x(t7g?F)yo;dB>@H zLGCNsf1FaHjANAuqeW*lPSmM+vG|jWQFM6^@|`{f6*04^Tfe(z#N^*KGv=1zvtvHe zg&BW?ANSX42ji3aP-CVVly|2-BJZd!Ixk{Oc}z9`F=Nc!n6=bDlJotvX)nRA@&3U| ze4d_|6c$}l-drU-FZSW`m_j8b?~#XXG0#6dHztPjeWzMShSFEn^kJYO(Pp5Z!s+iY z`a204K%ZocFENZT((l3a`;mGzD+#&?rSCh^_t((xR$aJ}ASt!~1%0GK11a?XTLDVH z_>#yGN%T3s4gH8wHsXGLlJPBr(r+IBbWf>aM0KdrZ*Xbk2p4_x5q-33x~|__WlFz$ zpdpDpau2jpU9R*?%TSsHZ+~xT;)oTBz8`VvMmVPH`)!)5^jiRpRR^eCiyV;vT?u~w zEk*6OXIkQjYJ=LZnzHLTUajc*RhP+m~oZ3c0sxuCCwF1aob5fS&Wn5yjlEHt73dqZzRxRNv1A ztyP!FdE|&J?yXP)cvi|%_qqChMN&Q>!1Juq(dY;b;94Z_kZZhSI_1mcIB|qUxyI-y z_uilDy{`mP??BIeU8>Px2=qK3D%a$B?w5J)cU4k&-g|$p_rB7B=R0W6yVmDqRfl%y z=P-2W*A=>%%h(qA&hwrQp7)k{${KZ{#v{lFj&kqyxpLhwVkKjBg%ZR&gFNrVChsr= zdFv$Cq)yx~^W1lob38Yw-`4+b9eH}#9n3o_`olqvG(~l{jJln9={Dx4f$*ET4(2Ou z-rBEMHu$d(rvG&O_sW{tpfl`{7z**(^Q&a7 zeRL%8^|@~#?sb}KXs*_&?sViSiEB{9`XPS&SFZ~{G;f~L2Wq|ta}?&f^xaj1*`HyZ zFmQa9`ng%RPNU;W2o1Isaqn=3>gX@!*v|7GE&RtN=G_at2aKy*DgM*V!t=zv$67u4 z)|Njp9;&bZrfM*<|6jsWZ4z_ET>M9^OekfxOzz+E2g;Ot%Lr~q%3R|A{~B(vb@G-~ zDXUERcG=TLVoFnX(YRXeeJ$^@eopDvf=^jRrtf`0p4cGx5SX^}KB;2>Je$P8k!z}U zoTwdNhTo|pC#77!pdAaoAjZ^H_zw71InLyGBfbO%)`m;)gemFYRC)R;-uVY)nE%j= z9FyX#Wv`>JJojQuE46nd@eYY&lH$BDLhi|VjA^NMPx?Da_#sn+Rws!iBC)XX|JTaO zd9rr@cUQfuq3vCX+Wr5d-Iwy7_kF3oPyFxY`4s1WYvtuU#`JvKyX4sv=T~j-iZPXH z_oSTXJ@4|K5gpL;&_|xS3;&kl?90FQi2#4Wvn}5C7JmK!F-;C?_>35n@cp@4MW&Ny z<-d}+A7c_5LNc)uwxXYTm;33&#*ue>_@WropSb3UN#tpZReU3s@15a&&wvZt&vTwO z7CtJ`Bz)AX#KtP@{Fmg;yi4ltyFNWX)Al0wgaH+-L|4`XC|=dY{IP&dyz<4i5Yzp8}xq@E{QX@kyRC7+}I zmDGnZd((94@^8>LIHWa(t*I62eUn-aLCe!Me(Q=a(Pc0HdU@Dphe65FVuq#tPf+tL zKC zh8$f*^9;4(v2jH=D?`k8ZqErd4aqT@GV;uKI&&gTCx-03vje_|r?_`L`>sj);l>i1 z5&g<=L&#LalpFVyZLppz+i1NxA${1{`1E1-%Cpa}w|-f+#CoP| zsrAJ3YpmPKUboicKXBmr#n!s#7g;w@ZZ}&b&m4|TA2y5QhdQKB*urr@eEI~*-5bC* zy=E;qrt3Opl~|0Oh#PZx*j7!hZ+%aNH&mH>b-;ZKDJMz8d7S7PE2(;s_c4si&LJ4DwycSiXfY;1G7wmgX+Qkn_7 zo3r#%P_rTHqpHE#G+o>}^R>&Gb986O%>!Hv9 zu}hmLk1M=+jF(n!fK~?U&9BHm1>=V)eVJ8~l9IeNi+UwHm+~(&bU9z_Wsi*I%%Og= z9t~h$SelX|F*fB{`R^*NOoH=f?s@({#kotnmZ-(z?8Wt9+TTgLOJ5l119>)&_RrGd z7I|V34Ip;Wm3AMjwY#*p#2PXX&&Y6T`p2o4%(m&J=J_Ss`;(k0e&5`nU5j@T40iY* zO3klqlDg6krT9oT@$LUuKc`CS?cXL-{o14f|D(bSrMpGuOX>1IRfVn3?3Q*-C$Fr$ z=lh=ft30>&F|F)Y_|hLL`&Jh% z>}n}HDsqJUTMj;!KU9asQg(nrE4%MV`(;(G%lz|u%Kn?^)0tOK4;#ezyWL?%251>| z8)I@HV>1`ND96EA)%c=g5%Cv~-l#t6>Z*IRF+>08r6~cF38ZWX#%~bM8yLUA@KF(x zGfCr9hA_XTq<>kZ&6Q(PD#mecxbLBsu3Q_!CVY(e3^u%Aa17==FVtuo0`H=pRwmRC zt9Wpz!Inz?75E-!KPdi+qWQldt?4-c{8xDNV`fbGkM<2gYdp& zr)#)-fqMjXsTW>R*6vu7swUaG!MEg`sALZET-z7D?&O$1e0=it{pU_PxwmhatiPT* zrMH#!oL?zhe{v!B&L&_V1+OIamH1?$A0W4e^FvL)C^58RO(*oksMPA1s@3ZQ>gB1Y ztk=oTtx`{|j&eVi_DFK-r5@NoJbXZ`sr8TYZ$5q})>N&XYy6q^jy1ePY_-1f>0mui zYGtHtJl|bT8PC6Y{<}%LFFc#nBi1y(t$eI0uFvCG*g2Z2FM+*QXm<*bq%xY!t-zlT1Xu&21_yCd}Jj4<;m z{NI|V2j{GstEv?b1>8BI3tRTcykUdb2eFOhIF2p7x-LJLZB1esdAPgfD;ytAd_MmX z?p1QWk!>v3vOE4c|IiC-$lHAb@$$RnAADh%bzABU`ITJX$QIdWwY5I=&-v?8v+}p~ zUTs~PYRaF_aT)u>Wu1maF6$I=Psc3lH%mGV`|l;4BA(`WQioe66tEpmy*dB-jy?1L zi{pxpw~&LdfBt!n<73qc32a}E96jvj<(+!OW!GBW9RC}~$=PpP``wNv9ri{~Nv&n7!2cWycNquW>CP zdx^C#W$vSVboM%{{Kv~_Z(A$hUS!?#cAfQ1$Bn$R&f1r{{w{5ubtBiCJFd4re)|UN z^0Zp(2e%!vcHn=$NC=uR>GqA*YX=>)*5B4*T^hO0x|?hDk?XpbMXtAQi(KD*X=(<2 zlWrYbc8EUfWGzeWY)vn#x8{}|v?^tXt?7xg@|DDy`JEEY`J)48^jBF&gr3CrKJPEB z8^?7BwHYHqZR7Q!J05+`+!Do@TFsbRD`N^;ev`O(I~i9e7*~54SCR2bLHC&ps{|Jn zJuPqq7_R7Mee@3StGlvihR^vzjh>UOi*}x5Y=QBL?%DbCs;HBrcPp1mc4zA%vE@Zs z$V1NF^GxK_yG+?L^XKg3x$e4f=ZWh+Pu|((v#JQ z$kX~9;tgtZp>zISGLQM@mssaZoU;z0PaeX$G??}24%VqbtXH?QrrqXf%oxZzmiy?@ z8*?5#7L<2U^!q=0eH$3LOKiax9>{eotW$C6AIkdnvVrwY)~6$^KcBKLy@{W^;l4*& zvbb-=hEj)5`V7{ksrm@pBGw;StNw%I5b}bpW(|9rywiedF{fk3cGe4|y!w;X*2bm6or@6G)=%^;<$i4+3j=Jkr$HC3P zj=G5Hx7J7K+!r!*jswIQIMdgIHSSbW&iqcS#fV&Y%G<3A77b**W4+vWFLU<+eMLi% z&i(9p;fsk0U%Ww+*^S7U)2H-q0XJJwejR!R^aOHW@!r>Se{?(d>&AJWzkp0?Zs-0M z@BLHUUv%|->gSEsX;P_Y9d(v9_HwNpi~JvJx}Y74>>F!p(T-((iZx|w>#(Ox7moKo zkPpqIVyBBoXQ6WjYIGxOSFGtx?z^Y(|I#MN!6MgQ8pb*W7Q`dt#+oK+@AG_raoe$H z%{r{rEgtzq>XGWa#B-tpI>I|V^%r?Q*7TtEoKN15HT^|<&QtdnwR@sxkh1a4|Iwb6 z^H|dh+C86qA8Y!U=gv+L%y*h|%j73Co@6oY*U8&{n{~0S9C(t`TKjq4v6i+uEBKE| z@}KyC@{RZ9AHh}m)@zAT-+^y=_!7^*UEwv(oh&;VCP60C6MVNlpjfI;*uWIu+(0p)>hcVksc^r@*gVqwy(Pj8OD7&G0Lp=cSL5o%86gvyXWH z*-JCOV8WbT_&0y&}dHR zBGL3)?O13o(R8;?y(Szuoghmrhf8bfUE_d*CmNT4Bt5{4KMM4&-Q@Hh~U3^KMNC>JH_ zeKIH_L8gSnbL7e_85j}cXcNky&ms5_q=!CeZSB7V}16n+O_wtsjE;Kg|S8< z`wL<;nJ?XQEaOd>vlZ$3{=t8fEca`EKV^+y{4sI9zn8>x7CWN&0)0U0zlPx#7+)u=#Cm^C$Cd=3v=-a|he9>)ZPKGO#T-?k%anp4`+Yr2A~Z zZ>*_{T|{KTKeKi%w#;$elu>u}K9(~ECHtbUx@|ps;@_KU-6k^ThqDrh|19ezkmR%8Q+D zJ!Rz^|BJN8ufE{0mGgblyXHK5^5(HOZEG$*ty*QkolRtedM|KKe%Pe2xkpxk9{=Ex$MVh?z!AqN!rtAGKYsdFOe3ztJqSW za^E-BKg>B-(%9HM-wt;^N%}pDXWy8o{z5z9&Ig;+zdL0-<)!^%BMEo*Z1Oyg=h8o( z_Cz|Ry?f~6yY%rF^zj$in&rKZ$oI6-gNsKmXQKR%PP;m#?fJ@hGM!<-XId%hp; z`~lwohB3{9zt+xuw8cfr{+Y7!Uk@H4on=4!c9`=d>7UV#n?EC*-Ds2a&p9_O`$~NpWzjIF!zIr>{JF52A$onJ)1Uu(cush*mD51lgP#cJddhpAd29eG&l>w*-u<5E9{hwkUu^i7 z$L`tES@5%WTR24r+hsjJIPpVc1|ZP-#fw8^MAK)>YPIQ4s*Ob;|v}=8s?lp-dUsK zTIj}43+FgV`zWsU4fy&eNe3z}8@9t;|72ynZ|2n;@m75GHS%k?^VNoLd-RP6=gXu$ z_%l1Z|M*Ps7van&?ZKai-&T@t#NR#K3r~5To1JYW4R3ky5$22{y$jy@34fx)GH>G( zqLDuT^gjBad#w8je_u9venOtpzTaA3mibuhKz?oiY?d||V!uFs@n)Wnu-w6?{&(EB zCWelznYTb*_y8aJvBXlJX^V5*EJ814|44h%m&y0=iL8l-A$v%?RkOwW2TvJKe|gr+ zHR>gM89ZZjE2oZsmL`k5B=jRXUWBFmUD4?z?a|l5-lN@&N0KMcKjisMXvwo?A7M$O z9zst?8|pNX^v~-Q>6VA2PRMNTdV9uTPn~|NkJ`LnAO2hWS#BYpH159?{C&z4D@EdCbHkqcmzLr)Q~F8vH;8;DdlX{XPw)zD z^7NO?3oV_kDKEC2XX!I}?s-RS56vylQPv{^$#+^ipK|xB(4X*sYv){dTGl8;_clA9 zB(1pjEO^#59w+_HF=g9o?0&c0eJy(`np=8vw)dQS-$S_b3I0)`3v=9zwiaz^*blLo zZ+N@wBD^kr+6w%KS-zpI>=$@vH4yo^F?s^NpMdxqr9PX~C zq@`ZXEhF9ZAapM2)=nZP(M}Iv$#VzKWp9p$ewtf^7JHKSQ~!9{F-ZP{93%TQCb-)z zdo{#n6XCA!Wqd$0&$t#-Un%3EX(`kEH}`3PqwsMGXBFVvA^24F?5UV_cNMgr2A?;s z%VS$|-njD<4_8p1aqh9uZKGl?!S2xH`B|wi&wq_vd)RwiR zw%YKhckS6x@7bSSvPIjxWV04*9>JQ_Agu0f8Q{?HwKrYEpIHdg0Vy_d6o@6uP| z-?%*E$()wJ9sKOweJU_AqMs5PKGu)>;F0*p&ob+SOyND(nD63uvbR1wxurhX6dh#E zejxWHV?@a-<~&{V>WGZ{a~{!$o65N+(4U)G1DA72#?jBDnzk&*$Ig<}tKhIJc)u6? z#j(!Ujd&Fy8PjumJY|aPj=zl59<4)14Dyfc!GHVd0<#j>YdWIGLUTyQy*V@Fd_fbR z!gZ5BcJF!le%|}6Kd7uj=%6<}>k?k9mwRu+hrN5e6P+|19a#2z%UGBfEb&7)56WKf zWxD3Y{T3>{8Cb8fl;GS?t6&m*JNe|3!|J_Iq>KQ&BsuZ;FxqmZr|ExuijBcNvoi zV#GPPC8==@JfSx5gdSdK2Uy^TWVb)@sQfGNLje46jlLBBY2wF0{8xxCm9c8Ln;&X8 zXP5~;DB$;kn^!zBtX23y`~)p#pa0jC7k-fVIH|0K98`kv>1eFp1g{7`4Aun`yV}>y z4;`p~J$>MUhbGUN?B<6{{yJ^6PIc7Luk3qtPRcs#=7(9FKOMuK-~Y+{FoW~2ld{%5 zG_SvhAEI@tn;#xv-;3;YZXAEI&#jjxvck$5RBt6$B0Am>Ycq^U6Dfgkz7eO3_sS-^EQ z`0EV51Hcb-kssLpi#5+@PRkjdF)b(PDg43Xn<@BrN@&pUjNHSAs()4p`+I|WZ=%)K5aNf4pIQsxV|E@aS3rJh+q4~zM;QJbAewh#ZN}+k9vMALA zeRgJF-CEU{HErQq@i|u8Nb|CG;;FY=zGn{m^*Bepcm0~refGI9Pn^Tov9#4Qhxjzi zA*!u${t%yD9)9^9{PIew%puollkiGC=S#0Lu3v|iw=s9rjwJm27I#-xw6q` z`|HR%-uNv2nsMVYeiVdXZQ}OXH(9=_&5(TZ+wa`<6F#qyO}?Z$4u^eB4)BZ)VWUU38XTf z&y+EJ$xg=kx0zEmY2AU)*EVQ9fmG&}nZWR;)4JZ^8`)fMDwFJAE0el5V@~PAoDu=_ z;QrIa>zFe(+w*(9ZGU3PI+-)Kl89sJFFUQFrXY(X;Fwq93;(j2Nl;ng(p?@K71_uwM35aE>|VE^EY$DY8!4BIAji_kb^S;mNYUzfbPV#xsG|?09{IDIzZ{ zvSnUiWFPn@KHV?!PwYD{D|p4+BICZCaCj(MZ_IL$_f3yi%=OH-sfiFLK?<9KMA)JRexX{ls3I>=Sxzv|nm9!`?1xl6_;u0By1C37}n> zI%PL|D~pX@oX>?8o6dzc_~hPP;dfI5zxy}vdm#KC;O2MX9~<+9%r8ynz(&9NziyZP zY5r@${Fg_ci0*d2ttUQBXXqXKMsX50$T*-2ef5UU-?0MdN<1d{=Z?Obk-a*m=lHiq zUSrx$`W$uX8P${zf0E@I`B3CMWKVp*|8m~?Db|h5TX|}WALlKJbtCiEdFm&Ai6!2j z%v+qDb-vELb?F!L)+YD7WvX5bKgzr{$USfQxcTrNoyk3KU53|v=1g+WTc0p*4QAfD z!@MQ>j!(n9)r@)T&i`;ZE|_`Chj}aF7xUJgyLly-k!y1@X6L-0IXfpJ&j>s%OPjI{D@5JpZzk*xhtvDCXot=}QQ+nNn@787J~ zGUId3=)$X2_nhrH9}tQCBnG~2Tu=GsT8f;J{7cU&kacD6Y9~4O9(!m_p4zNBh5MB{ ze9i*v7ACmkZ>=SN-NMAWs+ZQ9^VH_mG2~Zszt(-9Sa*f{kKFg8>O{xb`X}V>Kl%2~ z1d@TyKpuPl(wG-SzKLO85E?#&d{f0Z5`%nS$=u@cMb*q5D@kG`#UbyE=h}9o!Pai0 zA!s1iL0r?3`4A|tu!r<7zjlpfS{lRSl7X~bRGcjc0n`w+k6=n6i z<=-ObS=jF`|0dQ)K??T{WQOekF=LAph+$+PhSAep`G3%WCjb4>4-fx%n(wDEuWSI) z7=tTI>UXbX-PLbT+5b1|JCUf6Zrf&1W*XLw%2^K0E# znLp1Bh}_Ze{3`G7Xn0?qU*-As|KZQy$_@Ox+P8!D{WNzQ8s=^zbGM&+?!NxBx&1#r zzxJQ}|LEWOT=4T-_!a#8*7G;P|4Q(?9sIx9-N1eDNRjK`0>5u|f6lxjSBZ4+Jd5WU zJU8(?n&+G=F^%iK%q+H`zoesc#?Gyy%RY2Z%t*z#7CEJo{P(du{q90IR z^ab%fswlze3!+c^yY&T;QzEcINjz(@H$95X6^*?~?D`RNa@=x?caTnNi7sA;zVI#j z!X$i7iM{Fn9sPR4kNR~#o&IO~^#|zJxo-VB0-ZXbLBBRO=+`Fn>%d>=*FkRm`d=FK z>w5I-`3?H@2Tk;Ak@x?1;Z_G;+cv>%JGbp59GmRV@p`ZUubYrR*MV0;`GHrD-DGeB zUS(a!w~5^(0-e!?>{$oh56be`5l10^_W2)fHyMunIVkJ(hsHF>pZyx_h%TQ9#}`UO z@dH`uIS=WrbH-pdc?`VHL;stbW#m41Pn#dl?3R;_{X@R@A9S&X zZw=>L*_qRGZUF8We0(nzTTD~iq!rz4M2`jL?96*}hVwm%{n-{j8W!Xki7BdUsf?0y zI74GUTQddOMq;^5iSX#DL-~*BfStTsxZ~hT4BRYqm0^ru*hOof>pRT&IcFTEHP{H7 zH`vX8X)|xCXZcG zHM*7eoQdu+YZJQFAotiOXQK7!R_EMfmgrWOWBzB`1U$>-M z%jRd?v2hz^^RQ}}pU*zszdB zKy38mkjXn?14)4&8)J)3W$aFCh%4F#Sv(QBKe1JemVgYt5ZOBx9!R=SzdL}jNxpFy z-9r4@%D2R>bQL+^8g|Bg=o33sgX3wgvX0P1w+KSFu>B3XMIgF`wjSN$BC$!uUY1l; zzgzx2)yL=<#uy_1E=ISobC1ur;`P*@^Gt8=|0{Hgh3bO7PfywU(24|X;?PUhyY;&_ zu$Sv*z;+>bRB!JF7(WgR6+QHsZcBUwigJQ~4cG9Y;LyDI(CfJfTz@h|%8>nLfg zqhvL#qby?`r4#t!Ojogtl}X5bCSV%tC{4#mIlCh3C<%YX7@5Ku@Dy;i|NcNFNV6PQ_WU~IemiEd%GyIadZ5i(M zBE6wlbd*YL2Nos3@dno;0KR$L@pr_pV~{S$BsN^pfwF)Vz;@tX_+_u3GHQpqcg}R> zZf_|o^FlXxOmuvC?|F2o={z5SZMt4nA3q+l)=Yl#bv2|@d&V6pTfw+jfxnh$cv@^M z{W(AOnXXxJKhhUiFWAO2xnIP6oZ`7}%Y9`-nFIKpt(5gw%A~vRRrkG~dl^HBe~PUp z+-<9ov&9~JjmkOA=8UZ^7+ae;_lwOYR;lgZV3QfoTCCVbWUTGKF&G<4ux&Bxw0B3i^+*|GJofI0zrx<#!g=6-qfOL>y}J&bV^D*=`~Mw%W8IJX zM&mlItHItqH)BrDX=J4_*t;LY-tEyh{2KHPV^%IQ+1#FgY@%-jy7i5|4f=-IyT3%f z5`ANCMxXzpz5Bm{TlORU1Gngszm41P{!ZL}`zyGuW30kolI1bv?0uQ@a?S!B@z>u{ zZE4w2SO3x&WbU(>59UPc&DH0a3p{)N!Yu#HK1Pp^9Jjwl%kyuDpBW`t)~|6@X8h)n z0qj5N?;h{#CMU8dMf|NEbnj95hYa-(8S1aum-T-`h7x@+^1m)a*^!~Tp2sKAIzW6B z9pLJgq1bbvJL=H^hpKAlG z*;|duD2cx%|GZ*WR$T>j-il4{?PdG;lJE2d>5^i+$$z zi+9;)1KpoiY9Gee)EwYZ{7%gS#w^}xpAXDjvQbL~x&uoG?Y6HN^qxJK`(=aPwXYmh zWM4jLkNvqpAJ`p(-nTzL=tFz+G+*sSp!uKrZ8snzpF`e>)&*5p;DbH}dF;C0#Gcte zXLYPHqQ0+^tr1gF@&cPH@foylFS4NYf7A2-*B|_Ns^BBfTggtQj2}3RQ%%X+Vm~8x zl+x$d%8G7j1jmOcJ0!Pbp#eM_z;m>!`x%atz$tbIx33bxgZO{Sid8~bm#D@E*{Ckf ztnu4o{Vda3dj8$1{paSa`;^c;a9@G^ivP2GQ%>icYJC8B40N)dRh`aQZ^Z9yQfx6X z5iOaDx^|7!e;IRwiG0~pG?lsw9f}QOTkL@~)$B36s_$&ka;kEq{cF|0ti$~Oj2e)& zf~(ji`|)j+_E+h>EPQ*--$J_q{8wo27|@hHx5s{L-V2SMgGL*lA2%zQShDLo; zpL3bNob$UO%Hn zSu+y)7zUl#WA_u};B&K#59p`(1;Q^s?_MQ_(lz22UDxZ9v!P9FG9hDCT~=HhKa1>L z629)o+K|{EBwlxO`nZ-jOg-A4FsFi#1f9uvPOm1X>Qu{EU0_xW{3&@!sxG;oPM0Om zLRe>#=b<^>a$bkV8^3pe`%3sz>X;dO_-C|z{lTK2jg>#Nl{i2ie{r)~DWP%}WWgl! z$eZ|{mvMF}G`*Dl^)e=l9m7Ig8aeNI78rv58%vDN^Ta4PkgB|3We=C|g!sVvp)Kb~ z@PqYpp8wQ6K1jWeK;NJLg2uCAOU;eraN~1m{rE4(Vd-blKdbefEGyb5BSc0M{ZMGV zim?_Qm>33zTA}qFQ!?V?_^w9GZDN*ZUnf>oB|d|M)|b=YV;g8)-n)kVu5pY`g4TOM z>)Gsuv;7La%Q$_QaoUdk=SGt;`u_y2-}mQ!+Zp?R9HVbCehID16}lSHwf$l9SZLjj z-M5j}t8Ui!GBBpH2Q8Txz~&76X|I7MIzDP{LLe$a9#csNeqc5i>&++F8y>;c{0(1#}D z$Hqbo`7En@u2Hj+R5iHRfXv_VTzd*k~Jo3NT>#c4RJIRkRAh?fJ z)~24vS4<^zxDGz|&>=Aj9@+1f$7kZ(|8N7n6?3&RmP#5LJf6UqD)$$B_0tD1o=#*u z-OQXX<0*8;ISx;p6!9-3G=|+LAAfxo@hupG-SCaMl{wS!mzziInXKPC#%xzxhHi~D zSf=Irj?8GO^n3&Qc}_K%49qjdj01Vlp+Qx82%m~yt7t@um6Y*c@WPty(A{&yGx$gi ztlrW6xi#0|xq9p+2k>eBIP`dpe}{2B7GS+G1AWq_KEGx#GQ@CXh!JiXV3T%C4JytG z2ucoQEoT(6!taq2uJetDkrN(Syv3fngUm1&Sz#V>L$h=r zt(gz@Zt$>ORZJ2~One3r^NslyU-8)VnR`c&&JIK_uxG}^E9^y!1@}eZP3&|s4>k6k zGqW-$4m;FX`X_~cO8WisF)Qe!Vf4>Z`e`bCFob@BfkTk1LWu8XT1h_`7`rm*FAije zj-}81v3n`KR;)?x?qEy{u9ZHFr4Ng1>U-UE%Z1IV+b~`=${nm_m@^vcc1z+_G|<8? zX`^Xg6yPMp}ZkrfQJ5|76Z9*l!NqSd%e zYl9pj^%QyJm%dj;W|A}ba-OGo?EW<`DzBy9*|t129vhn2^_t^%`D{;Y`jnHiK5spY z|M}k5K9xPKeI%ZYrFBHlv1*H~L)0x9`(NBY<42qG^;x;$ZXX?4?B~GdnVi%oIyBQe z$&{2EFmlNHh{%k4lpL8?n(jw!^vznY_redU5gpis-P0evIDm5*f$(b3HmUDWcb)Z| z%h+#bZ^ll;wy1o===oW{4b_daDs==rv49Q(>mmF!oHhQ=y66J5y}6!SA{ z&HtpVNbN&A|ERncTFH58;m4(OAIzDD4nI~OS*=J6hDD8SZ{eISZSQZLlcx`_HhAwH z6kkN5D<>XaFCd6gvVtqcR@_Cd*peRd^{#4Rmw^YQd-YScKN{x2ue)MrpUHItE;Z zGRDLJd1^#;>cAe3af4zUscjap=PtZDrbhu+|7w->%pUWDMzTj`#07ZgJmvMAG5AsYHqWIZ#eog*=35$EFqlGiHXS?Q{t^fPPH6@TLZzLEZ&Z^(rX{ga8n2C8l^&S3DqUN!YC_<`RTH#zt0o4n zUo}x{<1VXb&y82UQZOS>EtsLj6l4d+7G!JIg2w|B3Le+S70e7wE10SMHQ)Nr${fI^ z?Wr$uYns$I?r*4XoTAT<{co(V;?=OO;lDo6@Q{C?s&B_*Lbe+ToWGTx%Q9u|KIMv7_W7nb^Tk?Vny%s ztM)#fX7@Qg!|r=}yuI1!YGl?3J=-biCHG?1JWBmabhWouxfcc2Vn6HbL81_N4Y$*&R(Qo2@lFHBp;i zc2}ETmZJrqx}Z11WsR`Q5Q|GkVr_wZ67bWG*E^DcqlG3cJl9JB6 zfm}I4bZlfEOLyjRIkz+wS+gI$h44AyKHIb~gtMvig@Ha$I$Kk`RO|PoYYbDYuJ)@w zwoL$nS6WjxmtNF1mQK*TX@?K(7);tqdSA{b+Q;#qXu6zFH6{L2P5)JzJr-zt^t`4X z9j`r8nyxJ=y`bqz8KXa0L$6qwh4< z|2%DYOKtRn+{}HhPxStu>--0&zRx!r+oM;k(^P-!_d4377{*7%0=oFLD5Yaslxnbk zKcVCJsPXaRquO>H7ZnpfF3QWGOw%jsw84DCV-Hr2$4S317kPp6Zs>8W2iL^WH`(BP z6mSDL4&2xHZ0I0Y&$1g@_p-;e7t3n29;G+6o~1Lj_eyKEw@b4%bLlslQu?H}uxy5w zQ*g>Qdd(@@c%VP`tLUGF^wT}`cl?-BHdp8=TN~g4_g;oIJq;}!RH`*(ux3!l`pU`@iUDA4#P1GVwXKVL?H*@J7trs|q@K;ho1C$h5kNUNK z7rwMWMznHr|h=YvFr(L47@ZHewhcqWWq16!YdAVC7=KH zffq#1>j+=8FFU9Gp1e80ptAE?C$5v}x25phPX5_<^)nar>eA9+T^R$9f=d~Ak zuLb|x1@9J~8n3lEm8q4&zaPTK{|*mh3`sdozaOCAYpLf&{uf$)Uh^&=uk|cHtKCyR zPJ4hdGXOo1fUKLqUh`kBMRa0Z>k55#_E$#W@4$TYlSEe+gEHb?#sL}YMEA^Md^~$J#;!_T`+c^7oq)e<>$0TG^(x)^vYNxglKggd%y{q{~@6mQnseI^en2%>7Q0kOs1WE$dAKr+fOxBJ0Cl4`ylMNtuJkkrR}u^$8AyM^$R&}Yf1i) z@+vKIxUKu>+N&TbsM8%(kqs%r;?#HDwmO^$0wc{&Jb^DXwElpMUhY z&6hR@mwu}~Fs975Ev(FTlJPmL{0{%Sr8O&`t-Z9m%obn%looj^PwP|ugBEqFUbDc9 zZQ#qcp=Gvzf(Jv&=4#4w)|4|jrP_OsmDz5WR%$KgeW?YP)oGVYr)Uq%`$`)MZ>7Sc ze>^?k{vnVE&uu-OXHPygTkARZl-B>$9qlF3!Nh+&7+;ZZ-@JFEPHXqzSK7dw1DfvxpK8IUGwq4-2ee_(Yzp++gLJG_`hABVlBR`Uh_FJPwQQlr};AmDDZb( z>EoKK^oBN)bOC&t51)>LH%G#oj|4JKsCfkjY%ob`sG~dS@z_Qa@u?F^Oi3B*#kaX_pa6yiJPZm?$k4H`pBGldN%WDjy;6&D)jUmyK;K2U4>^i!mq*b;lQ%5 zHDAWl-SFVUWs|fB##Q1!IUnnMEM){^hhJ5P`^Cn64nFpRf7=6tftoe&bRql|)(_Sx|ukEKF!@>Qe@)~VT`E6+H8|};T zyV~zW4{ze5x^aza2>ch_oHN61lu>DIlwMUq5#Lp|Rf)y$>v8r(K4C1a>8j|GSI!4UH}i8##${Z2C?VsUhrZ$5T?%Kk_Ymi<71!{T&W?zbct>aMTXNqj zwdGAAD1~6a@<$9YLfU-~}