From 3adf30035354deed1db69b0c7f760bf2ccf4b30a Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Fri, 9 Jan 2026 18:02:23 +0100 Subject: [PATCH 01/16] chore: init --- crate/cli/src/actions/kms/aws/mod.rs | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 crate/cli/src/actions/kms/aws/mod.rs diff --git a/crate/cli/src/actions/kms/aws/mod.rs b/crate/cli/src/actions/kms/aws/mod.rs new file mode 100644 index 0000000000..e69de29bb2 From 1efbdff2e0d3d2871704389dadb06cc287b73eb9 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Mon, 12 Jan 2026 16:00:19 +0100 Subject: [PATCH 02/16] feat: work --- .vscode/settings.json | 1 + crate/cli/src/actions/kms/aws/README.ms | 7 ++ .../kms/aws/byok/export_key_material.rs | 46 ++++++++++ .../src/actions/kms/aws/byok/import_kek.rs | 88 +++++++++++++++++++ crate/cli/src/actions/kms/aws/byok/mod.rs | 28 ++++++ .../kms/aws/byok/wrapping_algorithms.rs | 34 +++++++ crate/cli/src/actions/kms/aws/mod.rs | 22 +++++ crate/cli/src/actions/kms/mod.rs | 1 + 8 files changed, 227 insertions(+) create mode 100644 crate/cli/src/actions/kms/aws/README.ms create mode 100644 crate/cli/src/actions/kms/aws/byok/export_key_material.rs create mode 100644 crate/cli/src/actions/kms/aws/byok/import_kek.rs create mode 100644 crate/cli/src/actions/kms/aws/byok/mod.rs create mode 100644 crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs diff --git a/.vscode/settings.json b/.vscode/settings.json index 5bd0649e26..cf37d3c3be 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,6 +2,7 @@ "cSpell.words": [ "actix", "ascii", + "Byok", "canonicalize", "chacha", "ciphertext", diff --git a/crate/cli/src/actions/kms/aws/README.ms b/crate/cli/src/actions/kms/aws/README.ms new file mode 100644 index 0000000000..944cbdb681 --- /dev/null +++ b/crate/cli/src/actions/kms/aws/README.ms @@ -0,0 +1,7 @@ +## creating keys on amazon kms + +https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html + +"importing keys link" + +https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs new file mode 100644 index 0000000000..701da06088 --- /dev/null +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -0,0 +1,46 @@ +use std::{fs, path::PathBuf}; + +use base64::Engine; +use clap::Parser; +use cosmian_kmip::{ + kmip_0::kmip_types::{HashingAlgorithm, PaddingMethod}, + kmip_2_1::{ + kmip_data_structures::KeyValue, + kmip_types::{CryptographicAlgorithm, CryptographicParameters, Tag}, + }, +}; +use cosmian_kms_client::{ExportObjectParams, KmsClient, export_object}; +use serde_json::json; + +use crate::{ + actions::kms::{attributes::get_attributes, console}, + cli_bail, + error::result::{KmsCliResult, KmsCliResultHelper}, +}; + +/// Wrap a KMS key with an AWS Key Encryption Key (KEK), +/// previously imported using the `cosmian kms aws byok import` command. +/// Generate the `.byok` file that can be used to import the KMS key into AWS KMS. +/// See: +#[derive(Parser)] +#[clap(verbatim_doc_comment)] +pub struct ExportByokAction { + /// The unique ID of the KMS private key that will be wrapped and then exported + #[clap(required = true)] + pub(crate) wrapped_key_id: String, + + /// The AWS KEK ID in this KMS. + #[clap(required = true)] + pub(crate) kek_id: String, + + /// The file path to export the `.byok` file to. + /// If not specified, the file will be called `.byok` + #[clap(required = false)] + pub(crate) byok_file: Option, +} + +impl ExportByokAction { + pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult<()> { + Ok(()) + } +} diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs new file mode 100644 index 0000000000..19141527cf --- /dev/null +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -0,0 +1,88 @@ +use std::path::PathBuf; + +use crate::{ + actions::kms::{ + aws::byok::wrapping_algorithms::WrappingAlgorithm, shared::ImportSecretDataOrKeyAction, + }, + error::result::KmsCliResult, +}; +use base64::{Engine, prelude::BASE64_STANDARD}; +use clap::{ArgGroup, Parser}; +use cosmian_kms_client::{ + KmsClient, + reexport::cosmian_kms_client_utils::import_utils::{ImportKeyFormat, KeyUsage}, +}; + +/// Validate that the string is valid base64 and its decoded length is between 1 and 4096 bytes. +fn validate_kek_base64(s: &str) -> Result { + let decoded = BASE64_STANDARD + .decode(s) + .map_err(|e| format!("Invalid base64 encoding: {e}"))?; + + if decoded.is_empty() { + return Err("KEK decoded data is empty".to_owned()); + } + + if decoded.len() > 4096 { + return Err(format!( + "KEK decoded data exceeds maximum length of 4096 bytes (got {})", + decoded.len() + )); + } + Ok(s.to_owned()) +} +/// Import into the KMS an RSA Key Encryption Key (KEK) generated on Azure Key Vault. +/// See: +#[derive(Parser)] +#[clap(verbatim_doc_comment)] +#[clap(group(ArgGroup::new("kek_input").required(true).args(["kek_file", "kek_blob"])))] // At least one of kek_file or kek_blob must be provided +pub struct ImportKekAction { + /// The RSA Key Encryption public key (the KEK) as a base64-encoded string + #[clap(long,value_parser = clap::builder::ValueParser::new(validate_kek_base64))] + pub(crate) kek_base64: Option, + + /// In case of KEK provided as a file blob. + #[clap(long)] + pub(crate) kek_file: Option, + + /// The Amazon Resource Name (key ARN) of the KMS key. + #[clap(required = true, verbatim_doc_comment)] + pub(crate) key_arn: String, + + #[clap(required = true, verbatim_doc_comment)] + pub(crate) wrapping_algorithm: WrappingAlgorithm, + + /// The unique ID of the key in this KMS; a random UUID + /// is generated if not specified. + #[clap(required = false)] + pub(crate) key_id: Option, +} + +impl ImportKekAction { + #[allow(clippy::expect_used, clippy::unwrap_used)] // TODO + pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult<()> { + let import_action = ImportSecretDataOrKeyAction { + key_file: self + .kek_file + .clone() + .or_else(|| { + self.kek_base64.as_ref().map(|base64_str| { + let temp_path = + std::env::temp_dir().join(format!("{}", uuid::Uuid::new_v4())); + std::fs::write(&temp_path, BASE64_STANDARD.decode(base64_str).unwrap()) + .unwrap(); // TODO + temp_path + }) + }) + .expect("msg"), // TODO + key_id: self.key_id.clone(), + key_format: ImportKeyFormat::Pkcs8Pub, + tags: vec!["aws".to_owned(), format!("key_arn:{}", self.key_arn)], + key_usage: Some(vec![KeyUsage::WrapKey, KeyUsage::Encrypt]), + replace_existing: true, + ..Default::default() + }; + + import_action.run(kms_client).await.map(|_| ()) + } +} diff --git a/crate/cli/src/actions/kms/aws/byok/mod.rs b/crate/cli/src/actions/kms/aws/byok/mod.rs new file mode 100644 index 0000000000..e08a885522 --- /dev/null +++ b/crate/cli/src/actions/kms/aws/byok/mod.rs @@ -0,0 +1,28 @@ +mod export_key_material; +mod import_kek; +pub(crate) mod wrapping_algorithms; + +use clap::Subcommand; +use cosmian_kms_client::KmsClient; + +use crate::{ + actions::kms::aws::byok::{export_key_material::ExportByokAction, import_kek::ImportKekAction}, + error::result::KmsCliResult, +}; + +/// AWS BYOK support. +/// See: +#[derive(Subcommand)] +pub enum ByokCommands { + Import(ImportKekAction), + Export(ExportByokAction), +} + +impl ByokCommands { + pub async fn process(&self, kms_rest_client: KmsClient) -> KmsCliResult<()> { + match self { + Self::Import(action) => action.run(kms_rest_client).await, + Self::Export(action) => action.run(kms_rest_client).await, + } + } +} diff --git a/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs new file mode 100644 index 0000000000..fd1d0dc29f --- /dev/null +++ b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs @@ -0,0 +1,34 @@ +use clap::{Parser, ValueEnum}; + +/// The algorithm used with the RSA public key to protect key material during import. +/// +/// For `RSA_AES` wrapping algorithms, you encrypt your key material with an AES key +/// that you generate, then encrypt your AES key with the RSA public key from AWS KMS. +/// For RSAES wrapping algorithms, you encrypt your key material directly with the +/// RSA public key from AWS KMS. +#[derive(Parser, Debug, Clone, Copy, PartialEq, Eq, ValueEnum)] +pub(crate) enum WrappingAlgorithm { + /// Supported for all types of key material, except RSA key material (private key). + /// Cannot be used with RSA_2048 wrapping key spec to wrap `ECC_NIST_P521` key material. + #[clap(name = "RSAES_OAEP_SHA_1")] + RsaesOaepSha1, + + /// Supported for all types of key material, except RSA key material (private key). + /// Cannot be used with RSA_2048 wrapping key spec to wrap `ECC_NIST_P521` key material. + #[clap(name = "RSAES_OAEP_SHA_256")] + RsaesOaepSha256, + + /// Supported for wrapping RSA and ECC key material. + /// Required for importing RSA private keys. + #[clap(name = "RSA_AES_KEY_WRAP_SHA_1")] + RsaAesKeyWrapSha1, + + /// Supported for wrapping RSA and ECC key material. + /// Required for importing RSA private keys. + #[clap(name = "RSA_AES_KEY_WRAP_SHA_256")] + RsaAesKeyWrapSha256, + + /// Chinese SM2 public key encryption algorithm. + #[clap(name = "SM2PKE")] + Sm2Pke, +} diff --git a/crate/cli/src/actions/kms/aws/mod.rs b/crate/cli/src/actions/kms/aws/mod.rs index e69de29bb2..71e2e0f6af 100644 --- a/crate/cli/src/actions/kms/aws/mod.rs +++ b/crate/cli/src/actions/kms/aws/mod.rs @@ -0,0 +1,22 @@ +mod byok; + +use clap::Parser; +use cosmian_kms_client::KmsClient; + +use crate::{actions::kms::aws::byok::ByokCommands, error::result::KmsCliResult}; + +/// Support for AWS specific interactions. +#[derive(Parser)] +pub enum AwsCommands { + #[command(subcommand)] + Byok(ByokCommands), +} + +impl AwsCommands { + pub async fn process(&self, kms_rest_client: KmsClient) -> KmsCliResult<()> { + match self { + Self::Byok(command) => command.process(kms_rest_client).await?, + } + Ok(()) + } +} diff --git a/crate/cli/src/actions/kms/mod.rs b/crate/cli/src/actions/kms/mod.rs index 76f803e1df..5de34e88c3 100644 --- a/crate/cli/src/actions/kms/mod.rs +++ b/crate/cli/src/actions/kms/mod.rs @@ -1,6 +1,7 @@ pub mod access; pub mod actions; pub mod attributes; +pub mod aws; pub mod azure; pub mod bench; pub mod certificates; From d163f7fdef1f7cee10c03785699f54e588c0bed9 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 14 Jan 2026 21:00:00 +0100 Subject: [PATCH 03/16] feat: work advance --- crate/cli/src/actions/kms/aws/README.ms | 25 +++ .../kms/aws/byok/export_key_material.rs | 151 +++++++++++++++++- .../src/actions/kms/aws/byok/import_kek.rs | 6 +- .../kms/aws/byok/wrapping_algorithms.rs | 9 +- .../src/actions/kms/azure/byok/export_byok.rs | 2 +- crate/cli/src/tests/kms/aws/mod.rs | 1 + crate/crypto/README.md | 4 + 7 files changed, 186 insertions(+), 12 deletions(-) create mode 100644 crate/cli/src/tests/kms/aws/mod.rs diff --git a/crate/cli/src/actions/kms/aws/README.ms b/crate/cli/src/actions/kms/aws/README.ms index 944cbdb681..31a72c105e 100644 --- a/crate/cli/src/actions/kms/aws/README.ms +++ b/crate/cli/src/actions/kms/aws/README.ms @@ -5,3 +5,28 @@ https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual. "importing keys link" https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html + + +requirements for key material : +https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html#importing-keys-material-requirements + + + // TODO: export a file path, if specified + // test key : e8518bca-e1d0-4519-a915-d80da8e8f38a + + // aws kms get-parameters-for-import \ + // --key-id e8518bca-e1d0-4519-a915-d80da8e8f38a \ + // --wrapping-algorithm RSA_AES_KEY_WRAP_SHA_256 \ + // --wrapping-key-spec RSA_3072 + + // results : + // { + // "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/e8518bca-e1d0-4519-a915-d80da8e8f38a", + // "ImportToken": "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", + // "PublicKey": "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA020eGsIGUYdaNMP2Ty6b/YmpL+8eMopdaXg5I+x3TMzTT7QV7d3mfe5E/wgNRGDjYRdA74S8WwdwcSpfFpppVnDKX1dKIXS5woYa7hx/YAdY/3kv0VJKGKxt8Tf1Ajpekot0uVLbHOwR9DF8aBiDCtrZR7x94H1GPSXZ3VLZimBldcJ+Tszt4wITmwBjJxkPXJzkVa8zg2tnTKm/M5TwMDe5Q3DUOYKVgMKdcsJPX43q72radD1VdMazxzps+7wDT64AD5FZoXHcJH4ZytIMySbhlwsQntT5lNeyulg7kbFAFuSzGM7SipDwvVPzgxrDY1aw/VpJ9vuMqtO/V7TWwL8NSuoh/5bsVXCUFdSXHmz9oh/hj8zIPDLjHc/Z1guGanl+4/ZQbs4M4SgqN1KT/aayX+oDsvj6Q+GVzhCIpq7XQJekcOcRjCyYocCLfYOTv2N/vFMGxcKZZLM4LmCGMFsDEO1GaISPsv6mVUgewWMeBmzTBbyB6atA07Li9JMjAgMBAAE=", + // "ParametersValidTo": "2026-01-15T16:58:27.315000+01:00" + // } + + // aws kms import-key-material --key-id e8518bca-e1d0-4519-a915-d80da8e8f38a \ + // --encrypted-key-material fileb://EncryptedKeyMaterial.bin \ + // --import-token fileb://ImportToken.bin diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index 701da06088..d233a9cfac 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -10,12 +10,17 @@ use cosmian_kmip::{ }, }; use cosmian_kms_client::{ExportObjectParams, KmsClient, export_object}; -use serde_json::json; +use cosmian_logger::warn; use crate::{ - actions::kms::{attributes::get_attributes, console}, + actions::kms::{ + attributes::get_attributes, aws::byok::wrapping_algorithms::WrappingAlgorithm, console, + }, cli_bail, - error::result::{KmsCliResult, KmsCliResultHelper}, + error::{ + KmsCliError, + result::{KmsCliResult, KmsCliResultHelper}, + }, }; /// Wrap a KMS key with an AWS Key Encryption Key (KEK), @@ -33,14 +38,148 @@ pub struct ExportByokAction { #[clap(required = true)] pub(crate) kek_id: String, - /// The file path to export the `.byok` file to. - /// If not specified, the file will be called `.byok` + /// The file path containing the import token previously generated when importing the KEK. + /// This file isn't red and neither used by the KMS, it's simply for providing copy-paste ready output for + /// aws cli users upon a successful key material wrapping + #[clap(required = false)] + pub(crate) token_file_path: Option, + + /// If not specified, a base64 encoded blob containing the key material will be printed to stdout. #[clap(required = false)] - pub(crate) byok_file: Option, + pub(crate) output_file_path: Option, } impl ExportByokAction { pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult<()> { + // Recover the attributes of the KEK key + let (_kek_id, kek_attributes) = + get_attributes(&kms_client, &self.kek_id, &[Tag::Tag], &[]).await?; + let kek_tag_error = |msg: &str| -> String { + format!( + "The KEK is not an AWS Key Encryption Key: {msg}. Import it using the \ + `cosmian kms aws byok import` command." + ) + }; + + let tags: Vec = serde_json::from_value( + kek_attributes + .get("Tag") + .context(&kek_tag_error("no tags"))? + .clone(), + )?; + + if !tags.contains(&"aws".to_owned()) { + return Err(KmsCliError::InconsistentOperation(kek_tag_error( + "missing `aws` tag", + ))); + } + + let key_arn = tags + .iter() + .find(|t| t.starts_with("key_arn:")) + .context(&kek_tag_error("AWS key ARN not found"))? + .strip_prefix("key_arn:") + .ok_or(KmsCliError::Default(kek_tag_error("invalid arn tag")))?; + + let wrapping_algorithm_str = tags + .iter() + .find(|t| t.starts_with("wrapping_algorithm:")) + .context(&kek_tag_error("wrapping algorithm not found"))? + .strip_prefix("wrapping_algorithm:") + .ok_or(KmsCliError::Default(kek_tag_error( + "invalid wrapping algorithm tag", + )))? + .parse::() + .context(&kek_tag_error("invalid wrapping algorithm tag"))?; + + let wrapping_cryptographic_parameters = Some(match wrapping_algorithm_str { + WrappingAlgorithm::RsaesOaepSha1 => CryptographicParameters { + cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), + padding_method: Some(PaddingMethod::OAEP), + hashing_algorithm: Some(HashingAlgorithm::SHA1), + ..CryptographicParameters::default() + }, + WrappingAlgorithm::RsaesOaepSha256 => CryptographicParameters { + cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), + padding_method: Some(PaddingMethod::OAEP), + hashing_algorithm: Some(HashingAlgorithm::SHA256), + ..CryptographicParameters::default() + }, + WrappingAlgorithm::RsaAesKeyWrapSha1 => CryptographicParameters { + cryptographic_algorithm: Some(CryptographicAlgorithm::AES), + padding_method: Some(PaddingMethod::OAEP), + hashing_algorithm: Some(HashingAlgorithm::SHA1), + ..CryptographicParameters::default() + }, + WrappingAlgorithm::RsaAesKeyWrapSha256 => CryptographicParameters { + cryptographic_algorithm: Some(CryptographicAlgorithm::AES), + padding_method: Some(PaddingMethod::OAEP), + hashing_algorithm: Some(HashingAlgorithm::SHA256), + ..CryptographicParameters::default() + }, + // SM2PKE: SM2 public key encryption (China Regions only) + // Supported for: RSA private keys, ECC private keys, SM2 private keys + WrappingAlgorithm::Sm2Pke => { + warn!( + "This encrypted key material can only be imported into AWS KMS in China Regions." + ); + CryptographicParameters { + cryptographic_algorithm: Some(CryptographicAlgorithm::SM2), + padding_method: None, // SM2 uses its own encryption scheme per GM/T 0003.4-2012 + ..CryptographicParameters::default() + } + } + }); + + // Export the key wrapped with the KEK + // export the object + let export_params = ExportObjectParams { + unwrap: false, + wrapping_key_id: Some(&self.kek_id), + allow_revoked: false, + key_format_type: None, + encode_to_ttlv: false, + wrapping_cryptographic_parameters, + authenticated_encryption_additional_data: None, + }; + + let (_, object, _) = + export_object(&kms_client, &self.wrapped_key_id, export_params).await?; + + // Recover the wrapped bytes from the KeyBlock + let key_block = object.key_block()?; + let Some(KeyValue::ByteString(wrapped_key)) = &key_block.key_value else { + cli_bail!("The wrapped key should be a byte string"); + }; + + if let Some(file_path) = &self.output_file_path { + fs::write(file_path, wrapped_key)?; + + let stdout = console::Stdout::new(&format!( + "The encrypted key material ({} bytes) was written to {} for key {}.\n\n\ + To import into AWS KMS, run:\n\ + aws kms import-key-material \\\n\ + --key-id {} \\\n\ + --encrypted-key-material fileb://{} \\\n\ + --import-token fileb://{} \\\n\ + --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE", + wrapped_key.len(), + file_path.display(), + self.wrapped_key_id, + key_arn, + file_path.display(), + self.token_file_path.as_ref().map_or_else( + || "".to_owned(), + |p| { p.display().to_string() } + ) + )); + stdout.write()?; + } else { + let stdout = console::Stdout::new( + &base64::engine::general_purpose::STANDARD.encode(wrapped_key), + ); + stdout.write()?; + } Ok(()) } } diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index 19141527cf..f564c8c86c 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -77,7 +77,11 @@ impl ImportKekAction { .expect("msg"), // TODO key_id: self.key_id.clone(), key_format: ImportKeyFormat::Pkcs8Pub, - tags: vec!["aws".to_owned(), format!("key_arn:{}", self.key_arn)], + tags: vec![ + "aws".to_owned(), + format!("key_arn:{}", self.key_arn), + format!("wrapping_algorithm:{}", self.wrapping_algorithm), + ], key_usage: Some(vec![KeyUsage::WrapKey, KeyUsage::Encrypt]), replace_existing: true, ..Default::default() diff --git a/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs index fd1d0dc29f..4ff154494a 100644 --- a/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs +++ b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs @@ -1,20 +1,21 @@ use clap::{Parser, ValueEnum}; +use strum::{Display, EnumString}; /// The algorithm used with the RSA public key to protect key material during import. /// /// For `RSA_AES` wrapping algorithms, you encrypt your key material with an AES key /// that you generate, then encrypt your AES key with the RSA public key from AWS KMS. -/// For RSAES wrapping algorithms, you encrypt your key material directly with the +/// For `RSA_AES` wrapping algorithms, you encrypt your key material directly with the /// RSA public key from AWS KMS. -#[derive(Parser, Debug, Clone, Copy, PartialEq, Eq, ValueEnum)] +#[derive(Display, Parser, Debug, Clone, Copy, PartialEq, Eq, ValueEnum, EnumString)] pub(crate) enum WrappingAlgorithm { /// Supported for all types of key material, except RSA key material (private key). - /// Cannot be used with RSA_2048 wrapping key spec to wrap `ECC_NIST_P521` key material. + /// Cannot be used with `RSA_2048` wrapping key spec to wrap `ECC_NIST_P521` key material. #[clap(name = "RSAES_OAEP_SHA_1")] RsaesOaepSha1, /// Supported for all types of key material, except RSA key material (private key). - /// Cannot be used with RSA_2048 wrapping key spec to wrap `ECC_NIST_P521` key material. + /// Cannot be used with `RSA_2048` wrapping key spec to wrap `ECC_NIST_P521` key material. #[clap(name = "RSAES_OAEP_SHA_256")] RsaesOaepSha256, diff --git a/crate/cli/src/actions/kms/azure/byok/export_byok.rs b/crate/cli/src/actions/kms/azure/byok/export_byok.rs index 4b53a1e24b..3aba105ec5 100644 --- a/crate/cli/src/actions/kms/azure/byok/export_byok.rs +++ b/crate/cli/src/actions/kms/azure/byok/export_byok.rs @@ -103,7 +103,7 @@ impl ExportByokAction { "alg": "dir", "enc": "CKM_RSA_AES_KEY_WRAP" }, - "ciphertext": base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(wrapped_key), + "ciphertext": base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(wrapped_key), // TODO: check the docs, why use URL_SAFE_NO_PAD here instead of standard one "generator": "Cosmian_KMS;v5" }); // write byok file diff --git a/crate/cli/src/tests/kms/aws/mod.rs b/crate/cli/src/tests/kms/aws/mod.rs new file mode 100644 index 0000000000..bd7f3e31e4 --- /dev/null +++ b/crate/cli/src/tests/kms/aws/mod.rs @@ -0,0 +1 @@ +// TODO work here diff --git a/crate/crypto/README.md b/crate/crypto/README.md index 8a526c4234..d9a151877e 100644 --- a/crate/crypto/README.md +++ b/crate/crypto/README.md @@ -1,3 +1,7 @@ +// TODO : rewrite some stuff + + + # Cosmian KMS Crypto The **Crypto** crate provides core cryptographic operations and algorithm implementations for the Cosmian KMS. From 4fbe67d05bf6e6be2174bc7046e20abe375b2aad Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Thu, 15 Jan 2026 21:58:11 +0100 Subject: [PATCH 04/16] feat: first test --- .../kms/aws/byok/export_key_material.rs | 32 +++++++++---------- .../src/actions/kms/aws/byok/import_kek.rs | 12 ++++--- crate/cli/src/actions/kms/aws/byok/mod.rs | 15 ++++++--- .../kms/aws/byok/wrapping_algorithms.rs | 2 +- crate/cli/src/actions/kms/aws/mod.rs | 2 +- crate/cli/src/tests/kms/aws/mod.rs | 1 + crate/cli/src/tests/kms/mod.rs | 1 + 7 files changed, 37 insertions(+), 28 deletions(-) diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index d233a9cfac..4d584f6292 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -14,7 +14,8 @@ use cosmian_logger::warn; use crate::{ actions::kms::{ - attributes::get_attributes, aws::byok::wrapping_algorithms::WrappingAlgorithm, console, + attributes::get_attributes, aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm, + console, }, cli_bail, error::{ @@ -32,7 +33,7 @@ use crate::{ pub struct ExportByokAction { /// The unique ID of the KMS private key that will be wrapped and then exported #[clap(required = true)] - pub(crate) wrapped_key_id: String, + pub(crate) key_id: String, /// The AWS KEK ID in this KMS. #[clap(required = true)] @@ -50,7 +51,8 @@ pub struct ExportByokAction { } impl ExportByokAction { - pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult<()> { + #[allow(clippy::or_fun_call)] + pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult { // Recover the attributes of the KEK key let (_kek_id, kek_attributes) = get_attributes(&kms_client, &self.kek_id, &[Tag::Tag], &[]).await?; @@ -89,29 +91,29 @@ impl ExportByokAction { .ok_or(KmsCliError::Default(kek_tag_error( "invalid wrapping algorithm tag", )))? - .parse::() + .parse::() .context(&kek_tag_error("invalid wrapping algorithm tag"))?; let wrapping_cryptographic_parameters = Some(match wrapping_algorithm_str { - WrappingAlgorithm::RsaesOaepSha1 => CryptographicParameters { + AwsKmsWrappingAlgorithm::RsaesOaepSha1 => CryptographicParameters { cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), padding_method: Some(PaddingMethod::OAEP), hashing_algorithm: Some(HashingAlgorithm::SHA1), ..CryptographicParameters::default() }, - WrappingAlgorithm::RsaesOaepSha256 => CryptographicParameters { + AwsKmsWrappingAlgorithm::RsaesOaepSha256 => CryptographicParameters { cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), padding_method: Some(PaddingMethod::OAEP), hashing_algorithm: Some(HashingAlgorithm::SHA256), ..CryptographicParameters::default() }, - WrappingAlgorithm::RsaAesKeyWrapSha1 => CryptographicParameters { + AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha1 => CryptographicParameters { cryptographic_algorithm: Some(CryptographicAlgorithm::AES), padding_method: Some(PaddingMethod::OAEP), hashing_algorithm: Some(HashingAlgorithm::SHA1), ..CryptographicParameters::default() }, - WrappingAlgorithm::RsaAesKeyWrapSha256 => CryptographicParameters { + AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha256 => CryptographicParameters { cryptographic_algorithm: Some(CryptographicAlgorithm::AES), padding_method: Some(PaddingMethod::OAEP), hashing_algorithm: Some(HashingAlgorithm::SHA256), @@ -119,7 +121,7 @@ impl ExportByokAction { }, // SM2PKE: SM2 public key encryption (China Regions only) // Supported for: RSA private keys, ECC private keys, SM2 private keys - WrappingAlgorithm::Sm2Pke => { + AwsKmsWrappingAlgorithm::Sm2Pke => { warn!( "This encrypted key material can only be imported into AWS KMS in China Regions." ); @@ -143,14 +145,14 @@ impl ExportByokAction { authenticated_encryption_additional_data: None, }; - let (_, object, _) = - export_object(&kms_client, &self.wrapped_key_id, export_params).await?; + let (_, object, _) = export_object(&kms_client, &self.key_id, export_params).await?; // Recover the wrapped bytes from the KeyBlock let key_block = object.key_block()?; let Some(KeyValue::ByteString(wrapped_key)) = &key_block.key_value else { cli_bail!("The wrapped key should be a byte string"); }; + let b64_key = base64::engine::general_purpose::STANDARD.encode(wrapped_key); if let Some(file_path) = &self.output_file_path { fs::write(file_path, wrapped_key)?; @@ -165,7 +167,7 @@ impl ExportByokAction { --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE", wrapped_key.len(), file_path.display(), - self.wrapped_key_id, + self.key_id, key_arn, file_path.display(), self.token_file_path.as_ref().map_or_else( @@ -175,11 +177,9 @@ impl ExportByokAction { )); stdout.write()?; } else { - let stdout = console::Stdout::new( - &base64::engine::general_purpose::STANDARD.encode(wrapped_key), - ); + let stdout = console::Stdout::new(&b64_key); stdout.write()?; } - Ok(()) + Ok(b64_key) } } diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index f564c8c86c..bb7f2535c6 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -2,12 +2,14 @@ use std::path::PathBuf; use crate::{ actions::kms::{ - aws::byok::wrapping_algorithms::WrappingAlgorithm, shared::ImportSecretDataOrKeyAction, + aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm, + shared::ImportSecretDataOrKeyAction, }, error::result::KmsCliResult, }; use base64::{Engine, prelude::BASE64_STANDARD}; use clap::{ArgGroup, Parser}; +use cosmian_kmip::kmip_2_1::kmip_types::UniqueIdentifier; use cosmian_kms_client::{ KmsClient, reexport::cosmian_kms_client_utils::import_utils::{ImportKeyFormat, KeyUsage}, @@ -50,7 +52,7 @@ pub struct ImportKekAction { pub(crate) key_arn: String, #[clap(required = true, verbatim_doc_comment)] - pub(crate) wrapping_algorithm: WrappingAlgorithm, + pub(crate) wrapping_algorithm: AwsKmsWrappingAlgorithm, /// The unique ID of the key in this KMS; a random UUID /// is generated if not specified. @@ -59,8 +61,8 @@ pub struct ImportKekAction { } impl ImportKekAction { - #[allow(clippy::expect_used, clippy::unwrap_used)] // TODO - pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult<()> { + #[allow(clippy::expect_used, clippy::unwrap_used, clippy::missing_panics_doc)] // TODO + pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult { let import_action = ImportSecretDataOrKeyAction { key_file: self .kek_file @@ -87,6 +89,6 @@ impl ImportKekAction { ..Default::default() }; - import_action.run(kms_client).await.map(|_| ()) + import_action.run(kms_client).await } } diff --git a/crate/cli/src/actions/kms/aws/byok/mod.rs b/crate/cli/src/actions/kms/aws/byok/mod.rs index e08a885522..7ef5a31b64 100644 --- a/crate/cli/src/actions/kms/aws/byok/mod.rs +++ b/crate/cli/src/actions/kms/aws/byok/mod.rs @@ -1,6 +1,6 @@ -mod export_key_material; -mod import_kek; -pub(crate) mod wrapping_algorithms; +pub mod export_key_material; +pub mod import_kek; +pub mod wrapping_algorithms; use clap::Subcommand; use cosmian_kms_client::KmsClient; @@ -21,8 +21,13 @@ pub enum ByokCommands { impl ByokCommands { pub async fn process(&self, kms_rest_client: KmsClient) -> KmsCliResult<()> { match self { - Self::Import(action) => action.run(kms_rest_client).await, - Self::Export(action) => action.run(kms_rest_client).await, + Self::Import(action) => { + action.run(kms_rest_client).await?; + } + Self::Export(action) => { + action.run(kms_rest_client).await?; + } } + Ok(()) } } diff --git a/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs index 4ff154494a..4b8646cdff 100644 --- a/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs +++ b/crate/cli/src/actions/kms/aws/byok/wrapping_algorithms.rs @@ -8,7 +8,7 @@ use strum::{Display, EnumString}; /// For `RSA_AES` wrapping algorithms, you encrypt your key material directly with the /// RSA public key from AWS KMS. #[derive(Display, Parser, Debug, Clone, Copy, PartialEq, Eq, ValueEnum, EnumString)] -pub(crate) enum WrappingAlgorithm { +pub enum AwsKmsWrappingAlgorithm { /// Supported for all types of key material, except RSA key material (private key). /// Cannot be used with `RSA_2048` wrapping key spec to wrap `ECC_NIST_P521` key material. #[clap(name = "RSAES_OAEP_SHA_1")] diff --git a/crate/cli/src/actions/kms/aws/mod.rs b/crate/cli/src/actions/kms/aws/mod.rs index 71e2e0f6af..b3778d53c9 100644 --- a/crate/cli/src/actions/kms/aws/mod.rs +++ b/crate/cli/src/actions/kms/aws/mod.rs @@ -1,4 +1,4 @@ -mod byok; +pub mod byok; use clap::Parser; use cosmian_kms_client::KmsClient; diff --git a/crate/cli/src/tests/kms/aws/mod.rs b/crate/cli/src/tests/kms/aws/mod.rs index bd7f3e31e4..bb589ea641 100644 --- a/crate/cli/src/tests/kms/aws/mod.rs +++ b/crate/cli/src/tests/kms/aws/mod.rs @@ -1 +1,2 @@ // TODO work here +mod integration_tests; diff --git a/crate/cli/src/tests/kms/mod.rs b/crate/cli/src/tests/kms/mod.rs index 5ea705895e..50984140aa 100644 --- a/crate/cli/src/tests/kms/mod.rs +++ b/crate/cli/src/tests/kms/mod.rs @@ -2,6 +2,7 @@ mod access; mod attributes; mod auth_tests; mod azure; +mod aws; mod certificates; #[cfg(feature = "non-fips")] mod configurable_kem; From 995fda8bc1e339ad2e8eded4012f85a67a9dcecc Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Mon, 19 Jan 2026 23:30:23 +0100 Subject: [PATCH 05/16] feat: work --- .../kms/aws/byok/export_key_material.rs | 43 +- .../src/actions/kms/aws/byok/import_kek.rs | 19 +- crate/cli/src/actions/kms/console.rs | 11 +- .../cli/src/actions/kms/shared/import_key.rs | 2 +- .../src/tests/kms/aws/integration_tests.rs | 439 ++++++++++++++++++ crate/cli/src/tests/kms/aws/mod.rs | 1 + crate/cli/src/tests/kms/aws/unwrap_utils.rs | 244 ++++++++++ 7 files changed, 728 insertions(+), 31 deletions(-) create mode 100644 crate/cli/src/tests/kms/aws/integration_tests.rs create mode 100644 crate/cli/src/tests/kms/aws/unwrap_utils.rs diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index 4d584f6292..1a46336195 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -24,6 +24,7 @@ use crate::{ }, }; +// TODO : test the binary cli to see what it outputs /// Wrap a KMS key with an AWS Key Encryption Key (KEK), /// previously imported using the `cosmian kms aws byok import` command. /// Generate the `.byok` file that can be used to import the KMS key into AWS KMS. @@ -45,13 +46,13 @@ pub struct ExportByokAction { #[clap(required = false)] pub(crate) token_file_path: Option, - /// If not specified, a base64 encoded blob containing the key material will be printed to stdout. + /// If not specified, a base64 encoded blob containing the key material will be printed to stdout. Can be piped to desired file or command. #[clap(required = false)] pub(crate) output_file_path: Option, } impl ExportByokAction { - #[allow(clippy::or_fun_call)] + #[allow(clippy::print_stdout, clippy::or_fun_call)] // the kms console wrapper forces a println but this function does not want a line return for proper display pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult { // Recover the attributes of the KEK key let (_kek_id, kek_attributes) = @@ -108,19 +109,22 @@ impl ExportByokAction { ..CryptographicParameters::default() }, AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha1 => CryptographicParameters { - cryptographic_algorithm: Some(CryptographicAlgorithm::AES), - padding_method: Some(PaddingMethod::OAEP), + cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), + // Note: We use "None" padding to route toward RSA AES Key Wrap, this is not a mistake + // see: crate/crypto/src/crypto/wrap/unwrap_key.rs line 365 + padding_method: Some(PaddingMethod::None), hashing_algorithm: Some(HashingAlgorithm::SHA1), ..CryptographicParameters::default() }, AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha256 => CryptographicParameters { - cryptographic_algorithm: Some(CryptographicAlgorithm::AES), - padding_method: Some(PaddingMethod::OAEP), + cryptographic_algorithm: Some(CryptographicAlgorithm::RSA), + padding_method: Some(PaddingMethod::None), hashing_algorithm: Some(HashingAlgorithm::SHA256), ..CryptographicParameters::default() }, // SM2PKE: SM2 public key encryption (China Regions only) // Supported for: RSA private keys, ECC private keys, SM2 private keys + // TODO: gate this AwsKmsWrappingAlgorithm::Sm2Pke => { warn!( "This encrypted key material can only be imported into AWS KMS in China Regions." @@ -134,7 +138,6 @@ impl ExportByokAction { }); // Export the key wrapped with the KEK - // export the object let export_params = ExportObjectParams { unwrap: false, wrapping_key_id: Some(&self.kek_id), @@ -157,16 +160,18 @@ impl ExportByokAction { if let Some(file_path) = &self.output_file_path { fs::write(file_path, wrapped_key)?; - let stdout = console::Stdout::new(&format!( - "The encrypted key material ({} bytes) was written to {} for key {}.\n\n\ - To import into AWS KMS, run:\n\ - aws kms import-key-material \\\n\ - --key-id {} \\\n\ - --encrypted-key-material fileb://{} \\\n\ - --import-token fileb://{} \\\n\ - --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE", + // Print all formatting and instructions to stderr to not interfere with pipes + eprint!("The encrypted key material was successfully written to "); + print!("{}", file_path.display()); + eprintln!( + "{} for key {}.\n\n\ + To import into AWS KMS, run:\n\ + aws kms import-key-material \\\n\ + --key-id {} \\\n\ + --encrypted-key-material fileb://{} \\\n\ + --import-token fileb://{} \\\n\ + --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE", wrapped_key.len(), - file_path.display(), self.key_id, key_arn, file_path.display(), @@ -174,9 +179,11 @@ impl ExportByokAction { || "".to_owned(), |p| { p.display().to_string() } ) - )); - stdout.write()?; + ); } else { + // Same as above: descriptive info to stderr... + eprintln!("Wrapped key material (base64-encoded):"); + // And raw output goes to stdout (can be piped) let stdout = console::Stdout::new(&b64_key); stdout.write()?; } diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index bb7f2535c6..e5d84f0d97 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -37,26 +37,31 @@ fn validate_kek_base64(s: &str) -> Result { /// See: #[derive(Parser)] #[clap(verbatim_doc_comment)] -#[clap(group(ArgGroup::new("kek_input").required(true).args(["kek_file", "kek_blob"])))] // At least one of kek_file or kek_blob must be provided +#[clap(group(ArgGroup::new("kek_input").required(true).args(["kek_base64", "kek_file"])))] // At least one of kek_file or kek_blob must be provided pub struct ImportKekAction { /// The RSA Key Encryption public key (the KEK) as a base64-encoded string - #[clap(long,value_parser = clap::builder::ValueParser::new(validate_kek_base64))] + #[clap( + short = 'b', + long, + value_parser = clap::builder::ValueParser::new(validate_kek_base64), + group = "kek_input" + )] pub(crate) kek_base64: Option, /// In case of KEK provided as a file blob. - #[clap(long)] + #[clap(short = 'f', long, group = "kek_input")] pub(crate) kek_file: Option, /// The Amazon Resource Name (key ARN) of the KMS key. - #[clap(required = true, verbatim_doc_comment)] + #[clap(short = 'a', long, required = true, verbatim_doc_comment)] pub(crate) key_arn: String, - #[clap(required = true, verbatim_doc_comment)] + #[clap(short = 'w', long, required = true, verbatim_doc_comment)] pub(crate) wrapping_algorithm: AwsKmsWrappingAlgorithm, /// The unique ID of the key in this KMS; a random UUID /// is generated if not specified. - #[clap(required = false)] + #[clap(short = 'i', long, required = false)] pub(crate) key_id: Option, } @@ -78,7 +83,7 @@ impl ImportKekAction { }) .expect("msg"), // TODO key_id: self.key_id.clone(), - key_format: ImportKeyFormat::Pkcs8Pub, + key_format: ImportKeyFormat::Pkcs8Pub, // TODO: idk maybe this should be pkcs1 tags: vec![ "aws".to_owned(), format!("key_arn:{}", self.key_arn), diff --git a/crate/cli/src/actions/kms/console.rs b/crate/cli/src/actions/kms/console.rs index 856e8e4605..2294754aad 100644 --- a/crate/cli/src/actions/kms/console.rs +++ b/crate/cli/src/actions/kms/console.rs @@ -145,7 +145,7 @@ impl Stdout { // Print the unique identifier if present if let Some(id) = &self.unique_identifier { - println!("\t Unique identifier: {id}"); + println!("\tUnique identifier: {id}"); } // Print the list of unique identifiers if present @@ -157,12 +157,12 @@ impl Stdout { // Print the public key unique identifier if present if let Some(id) = &self.public_key_unique_identifier { - println!("\t Public key unique identifier: {id}"); + println!("\tPublic key unique identifier: {id}"); } // Print the private key unique identifier if present if let Some(id) = &self.private_key_unique_identifier { - println!("\t Private key unique identifier: {id}"); + println!("\tPrivate key unique identifier: {id}"); } // Print the attribute if present: attribute is a single element @@ -201,12 +201,13 @@ impl Stdout { // Print the list of tags if present if let Some(t) = &self.tags { if !t.is_empty() { - println!("\n Tags:"); + println!("\tTags:"); for tag in t { - println!(" - {tag}"); + println!("\t\t- {tag}"); } } } + println!(); // consecutive calls feel cluttered and become hard to read } OutputFormat::Json => { // Serialize the output as JSON and print it diff --git a/crate/cli/src/actions/kms/shared/import_key.rs b/crate/cli/src/actions/kms/shared/import_key.rs index 0cb35e79ec..977ec54202 100644 --- a/crate/cli/src/actions/kms/shared/import_key.rs +++ b/crate/cli/src/actions/kms/shared/import_key.rs @@ -142,7 +142,7 @@ impl ImportSecretDataOrKeyAction { // print the response let stdout = format!( - "The {:?} in file {} was imported with id: {}", + "The {:?} in file {} was successfully imported with id: {}.", object_type, self.key_file.display(), unique_identifier, diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs new file mode 100644 index 0000000000..ef8f6eb308 --- /dev/null +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -0,0 +1,439 @@ +//! Since AWS KMS is a managed service where private keys never leave the HSM, +//! we simulate the `ImportKeyMaterial` step by unwrapping with OpenSSL. +//! +//! ## Test Matrix +//! +//! | Test Function | Wrapping Algorithm | Key Source | KEK Import | Key Type | +//! |--------------------------------------|-------------------------|--------------------|------------|-------------| +//! | `aws_byok_with_rsaes_oaep_sha256` | `RSAES_OAEP_SHA_256` | Test file (imported) | Base64 | AES-256 | +//! | `aws_byok_with_rsaes_oaep_sha1` | `RSAES_OAEP_SHA_1` | KMS (generated) | File (DER) | HMAC | +//! | `aws_byok_with_rsa_aes_key_wrap_sha1`| `RSA_AES_KEY_WRA_SHA_1`| KMS (generated) | File (DER) | RSA (private key) | +//! | `aws_byok_with_rsa_aes_key_wrap_sha256`| `RSA_AES_KEY_WRAP_SHA_256`| KMS (generated) | Base64 | ECC (private key) | +//! +//! [AWS KMS Docs](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html) + +#![allow(unused_imports, clippy::unwrap_used)] +use crate::actions::kms::aws::byok::export_key_material::ExportByokAction; +use crate::actions::kms::aws::byok::import_kek::ImportKekAction; +use crate::actions::kms::aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm; +use crate::actions::kms::elliptic_curves::keys::create_key_pair::CreateKeyPairAction as CreateEccKeyPairAction; +use crate::actions::kms::rsa::keys::create_key_pair::CreateKeyPairAction as CreateRsaKeyPairAction; +use crate::actions::kms::shared::ImportSecretDataOrKeyAction; +use crate::actions::kms::symmetric::keys::create_key::CreateKeyAction; +use crate::error::result::KmsCliResult; +use crate::tests::kms::aws::unwrap_utils::{ + generate_rsa_keypair, rsa_aes_key_wrap_sha1_unwrap, rsa_aes_key_wrap_sha256_unwrap, + rsaes_oaep_sha1_unwrap, rsaes_oaep_sha256_unwrap, +}; +use base64::Engine; +use cosmian_kmip::kmip_2_1::kmip_types::CryptographicParameters; +use cosmian_kms_client::reexport::cosmian_kms_client_utils::create_utils::SymmetricAlgorithm; +use cosmian_kms_client::reexport::cosmian_kms_client_utils::import_utils::ImportKeyFormat; +use cosmian_kms_client::{ExportObjectParams, export_object}; +use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; +use cosmian_logger::log_init; +use jwt_simple::reexports::rand::RngCore as _; +use jwt_simple::reexports::rand::{SeedableRng, seq::SliceRandom as _}; +use openssl::cipher::{Cipher, CipherRef}; +use openssl::{encrypt::Decrypter, hash::MessageDigest}; +use test_kms_server::start_default_test_kms_server; + +use openssl::pkey::{PKey, Private, Public}; +use openssl::rsa::{Padding, Rsa}; +use uuid::Uuid; + +// Test constants from AWS KMS GetParametersForImport response +const TEST_KEY_ARN: &str = + "arn:aws:kms:eu-west-3:447182645454:key/e8518bca-e1d0-4519-a915-d80da8e8f38a"; + +const TEST_PUBLIC_KEY_BASE64: &str = "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEApujv1m1gfctmaIaWD4ns9b5MWrr2JwYJYo82Ri3AoQZkOq0BQKkBazO61Scn/+buRE57x5tYTfUTZdnwUe4OuGgTRmH/2SPbcILbpulLP31YnqEP5IxLnn7Z9NR6VODn0QiUyv/uaHE/uBD7mt1+KHKEOBn+rL53/ht3yrboGgqxKj84FITNPaiOZ7yTccB0yCqvlKWYpcrIPeTBdGlpXni10GyBxRqGfkmKuX9/rxwDlBbzdAXn9nHOmhhZlzBUHDzidXZvYrfWEqxfnYAuTbb0Dwj/7eTiFUKseV7NXU/KpAyIG3OghDjNF7PnKT7Zlf7CvSYE+9DOqadBzjQjbOu10lLdoo2nWfCtkvE5XrZkqJHHk+9DUBnkQX3I6MdCWlfTp8QWHiwbo8rFLC4ZSLCB/QqhTh8XnHwdVkmrDKhpYQH6m1pJcsG4sIICDwIkdMSkw/CHOk+bl76TIsVqCu/7QyvFLtsvIDG3Ia0qwshYpUuIoKxXfgwUuZiwSN2RAgMBAAE="; + +// Generate the key material locally, then import it to the kms using ImportSecretDataOrKeyAction +// The key material of this test will be a symmetric encryption key (32 bytes) +// Import kek as base64 string +// Export the key material wrapped with the kek as base64 string +#[tokio::test] +async fn aws_byok_with_rsaes_oaep_sha256() -> KmsCliResult<()> { + log_init(None); + let ctx = start_default_test_kms_server().await; + + // Test initialization steps : + // Generate a local RSA keypair for wrapping (simulating AWS KMS GetParametersForImport) + let (private_key, public_key) = generate_rsa_keypair().expect("Failed to generate RSA keypair"); + + let public_key_base64 = base64::engine::general_purpose::STANDARD.encode( + public_key + .public_key_to_der() + .expect("Failed to export public key to DER"), + ); + + let temp_dir = std::env::temp_dir(); + + // Generate a random symmetric key to be wrapped (simulating the key material to be imported) + let cosmian_key_id = "test-symmetric-key"; + let mut cosmian_key_bytes = [0_u8; 32]; + let mut rng = CsRng::from_entropy(); + rng.fill_bytes(&mut cosmian_key_bytes); + + let cosmian_key_file = temp_dir.join(format!("cosmian_key_test_{}.bin", uuid::Uuid::new_v4())); + std::fs::write(&cosmian_key_file, cosmian_key_bytes).expect("Failed to write public key file"); + + let import_key_action = ImportSecretDataOrKeyAction { + key_file: cosmian_key_file.clone(), + key_id: Some(cosmian_key_id.to_owned()), + key_format: ImportKeyFormat::Aes, // Indicates this is an AES symmetric key + ..Default::default() + }; + + import_key_action.run(ctx.get_owner_client()).await?; + + // We now have all necessary elements to start the test + // Step 1: Import the Kek + let import_action = ImportKekAction { + // TODO: check why the compiler complains abt an optional fields (the kek id) + kek_base64: Some(public_key_base64), + kek_file: None, + key_arn: TEST_KEY_ARN.to_owned(), + wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaesOaepSha256, + key_id: None, + }; + + let kek_id = import_action.run(ctx.get_owner_client()).await?; + + // Step 2: export the wrapped key + let export_action = ExportByokAction { + key_id: cosmian_key_id.to_string(), + kek_id: kek_id.to_string(), + token_file_path: None, + output_file_path: None, + }; + + let wrapped_key_b64 = export_action.run(ctx.get_owner_client()).await?; + + let wrapped_key_bytes = base64::engine::general_purpose::STANDARD + .decode(&wrapped_key_b64) + .expect("Failed to decode base64 wrapped key"); + + // Step 3: (simulating AWS KMS ImportKeyMaterial) Unwrap the key locally with the private key + let unwrapped_key_bytes = + rsaes_oaep_sha256_unwrap(&wrapped_key_bytes, &private_key).expect("Failed to unwrap key"); + + // Finally: Verify the unwrapped key matches the original key material + assert_eq!( + unwrapped_key_bytes, cosmian_key_bytes, + "Unwrapped key should match the original key material" + ); + + std::fs::remove_file(&cosmian_key_file)?; + Ok(()) +} + +// Generate the key material with the KMS, then export it using ExportObjectParams for later verification +// The key material of this test will be a HMAC keys +// Import kek as a file blob +// Export the key material wrapped with the kek as a file blob +#[tokio::test] +async fn aws_byok_with_rsaes_oaep_sha1() -> KmsCliResult<()> { + log_init(None); + + let ctx = start_default_test_kms_server().await; + // Test initialization steps : + // Generate a local RSA keypair for wrapping (simulating AWS KMS GetParametersForImport). + let (aws_private_key_mock, aws_public_key_mock) = + generate_rsa_keypair().expect("Failed to generate RSA keypair"); + + let temp_dir = std::env::temp_dir(); + + // Write the public key to a file (DER format) to import it later. + let kek_file_path = temp_dir.join(format!("kek_test_{}.der", uuid::Uuid::new_v4())); + std::fs::write( + &kek_file_path, + aws_public_key_mock + .public_key_to_der() + .expect("Failed to export public key to DER"), + ) + .expect("Failed to write KEK file"); + + let key_sizes = [224, 256, 384, 512]; + let mut rng = CsRng::from_entropy(); + let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + + // Generate a random symmetric key in the kms. + let cosmian_key_id = CreateKeyAction { + algorithm: SymmetricAlgorithm::Sha3, + number_of_bits: Some(bits), + ..Default::default() + } + .run(ctx.get_owner_client()) + .await?; + + let (_, cosmian_key_material, _attributes) = export_object( + &ctx.get_owner_client(), + &cosmian_key_id.to_string(), + ExportObjectParams::default(), + ) + .await?; + + // Keep this here for the final verification. + let cosmian_key_bytes = cosmian_key_material.key_block()?.key_bytes()?; + + // We now have all necessary elements to start the test + // Step 1: Import the KEK from file + let import_action = ImportKekAction { + kek_base64: None, + kek_file: Some(kek_file_path.clone()), + key_arn: TEST_KEY_ARN.to_owned(), + wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaesOaepSha1, + key_id: None, + }; + + let kek_id = import_action.run(ctx.get_owner_client()).await?; + + // Step 2: Export the wrapped key + let export_action = ExportByokAction { + key_id: cosmian_key_id.to_string(), + kek_id: kek_id.to_string(), + token_file_path: None, + output_file_path: None, + }; + + let wrapped_key_b64 = export_action.run(ctx.get_owner_client()).await?; + + let wrapped_key_bytes = base64::engine::general_purpose::STANDARD + .decode(&wrapped_key_b64) + .expect("Failed to decode base64 wrapped key"); + + // Verification step: (simulating AWS KMS ImportKeyMaterial) Unwrap the key locally with the private key + let unwrapped_key_bytes = rsaes_oaep_sha1_unwrap(&wrapped_key_bytes, &aws_private_key_mock) + .expect("Failed to unwrap key"); + + // Finally: Verify the unwrapped key matches the original key material + assert_eq!( + unwrapped_key_bytes, + cosmian_key_bytes.to_vec(), + "Unwrapped key should match the original key material" + ); + + // Cleanup temp files + std::fs::remove_file(&kek_file_path)?; + + Ok(()) +} + +// Generate the key material with the KMS, then export it using ExportObjectParams for later verification +// The key material of this test will be an RSA private key +// Import kek as a file blob +// Export the key material wrapped with the kek as a file blob +#[tokio::test] +async fn aws_byok_with_rsa_aes_key_wrap_sha1() -> KmsCliResult<()> { + log_init(None); + let ctx = start_default_test_kms_server().await; + let (aws_private_key_mock, aws_public_key_mock) = + generate_rsa_keypair().expect("Failed to generate RSA keypair"); + + let temp_dir = std::env::temp_dir(); + + // Write the public key to a file (DER format) to import it later + let kek_file_path = temp_dir.join(format!("kek_test_{}.der", Uuid::new_v4())); + std::fs::write( + &kek_file_path, + aws_public_key_mock + .public_key_to_der() + .expect("Failed to export public key to DER"), + ) + .expect("Failed to write KEK file"); + + // Generate an RSA keypair in the KMS (the key material to wrap will be the private key) + let key_sizes = [2048, 3072, 4096]; + let mut rng = CsRng::from_entropy(); + let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + + let create_keypair_action = CreateRsaKeyPairAction { + key_size: bits, + ..Default::default() + }; + + // we will discard the public key for the test - real world users will simply export it in plaintext + let (private_key_id, _public_key_id) = + create_keypair_action.run(ctx.get_owner_client()).await?; + + // Export the private key unwrapped and keep its plaintext bytes for later verification + let (_, cosmian_key_material, _) = export_object( + &ctx.get_owner_client(), + &private_key_id.to_string(), + ExportObjectParams::default(), + ) + .await?; + let cosmian_key_bytes = cosmian_key_material.key_block()?.key_bytes()?; + + // We now have all necessary elements to start the test + // Step 1: Import the KEK from file + let import_action = ImportKekAction { + kek_file: Some(kek_file_path.clone()), + kek_base64: None, + key_arn: TEST_KEY_ARN.to_owned(), + wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha1, + key_id: None, + }; + + let kek_id = import_action.run(ctx.get_owner_client()).await?; + let output_file_path = temp_dir.join(format!("wrapped_key_test_{private_key_id}.bin")); + + // Step 2: Export the wrapped key + let export_action = ExportByokAction { + key_id: private_key_id.to_string(), + kek_id: kek_id.to_string(), + token_file_path: None, + output_file_path: Some(output_file_path.clone()), + }; + + export_action.run(ctx.get_owner_client()).await?; + + // Verification step: Read the file and unwrap the key locally with the private key + let wrapped_key_bytes = std::fs::read(&output_file_path).expect("Failed to read KEK file"); + + let mut unwrapped_key_bytes = + rsa_aes_key_wrap_sha1_unwrap(&wrapped_key_bytes, &aws_private_key_mock) + .expect("Failed to unwrap key"); + + // IMPORTANT: Asymmetric key material must be BER-encoded or DER-encoded in Public-Key Cryptography Standards (PKCS) #8 format that complies with RFC 5208. + let pkey = openssl::pkey::PKey::private_key_from_pkcs8(&unwrapped_key_bytes) + .expect("Failed to parse PKCS#8 key"); + let rsa = pkey.rsa().expect("Key should be RSA"); + unwrapped_key_bytes = rsa + .private_key_to_der() + .expect("Failed to convert to PKCS#1"); + + // Finally: Verify the unwrapped key matches the original key material + assert_eq!( + unwrapped_key_bytes, + cosmian_key_bytes.to_vec(), + "Unwrapped key should match the original key material" + ); + + // Cleanup temp files + std::fs::remove_file(&kek_file_path)?; + std::fs::remove_file(&output_file_path)?; + + Ok(()) +} + +// // Generate the key material with the KMS, then export it using ExportObjectParams for later verification +// // Import kek as base64 string +// Export the key material wrapped with the kek as a file blob +#[tokio::test] +async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { + log_init(None); + let ctx = start_default_test_kms_server().await; + let (aws_private_key_mock, aws_public_key_mock) = + generate_rsa_keypair().expect("Failed to generate RSA keypair"); + + let public_key_base64 = base64::engine::general_purpose::STANDARD.encode( + aws_public_key_mock + .public_key_to_der() + .expect("Failed to export public key to DER"), + ); + + let temp_dir = std::env::temp_dir(); + + // Generate an ECC keypair in the KMS (the key material to wrap will be the private key) + let create_keypair_action = CreateEccKeyPairAction { + sensitive: false, + ..Default::default() + }; + + // we will discard the public key for the test - real world users will simply export it in plaintext + let (private_key_id, _public_key_id) = + create_keypair_action.run(ctx.get_owner_client()).await?; + + // Export the private key unwrapped and keep its plaintext bytes for later verification + let (_, cosmian_key_material, _) = export_object( + &ctx.get_owner_client(), + &private_key_id.to_string(), + ExportObjectParams::default(), + ) + .await?; + let cosmian_key_bytes = cosmian_key_material.key_block()?.key_bytes()?; + + // We now have all necessary elements to start the test + // Step 1: Import the KEK as base64 string + let import_action = ImportKekAction { + kek_base64: Some(public_key_base64), + kek_file: None, + key_arn: TEST_KEY_ARN.to_owned(), + wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha256, + key_id: None, + }; + + let kek_id = import_action.run(ctx.get_owner_client()).await?; + + let output_file_path = temp_dir.join(format!("wrapped_key_test_{private_key_id}.bin")); + + // Step 2: Export the wrapped key + let export_action = ExportByokAction { + key_id: private_key_id.to_string(), + kek_id: kek_id.to_string(), + token_file_path: None, + output_file_path: Some(output_file_path.clone()), + }; + + export_action.run(ctx.get_owner_client()).await?; + + // Verification step: Read the file and unwrap the key locally with the private key + let wrapped_key_bytes = + std::fs::read(&output_file_path).expect("Failed to read wrapped key file"); + + let unwrapped_key_bytes = + rsa_aes_key_wrap_sha256_unwrap(&wrapped_key_bytes, &aws_private_key_mock) + .expect("Failed to unwrap key"); + + // // Parse the unwrapped key as PKCS#8 (ECC private key) + // let pkey = openssl::pkey::PKey::private_key_from_pkcs8(&unwrapped_key_bytes) + // .expect("Failed to parse PKCS#8 key"); + + // // Extract the ECC key (not RSA) + // let ec_key = pkey.ec_key().expect("Key should be ECC"); + + // unwrapped_key_bytes = ec_key + // .private_key_to_der() + // .expect("Failed to convert to ECPrivateKey DER"); + + // Finally: Verify the unwrapped key matches the original key material + assert_eq!( + unwrapped_key_bytes, + cosmian_key_bytes.to_vec(), + "Unwrapped key should match the original key material" + ); + + // Cleanup temp files + std::fs::remove_file(&output_file_path)?; + + Ok(()) +} + +// #[cfg(feature = "non-fips")] +// pub(crate) fn sm2pke_unwrap( +// ciphertext: &[u8], +// private_key: &PKey, +// ) -> Result, Box> { +// // Verify the key is an SM2 key + +// use openssl::pkey_ctx::PkeyCtx; +// if private_key.id() != openssl::pkey::Id::SM2 { +// return Err("Private key is not an SM2 key".into()); +// } + +// // Create decryption context +// let mut ctx = PkeyCtx::new(private_key)?; +// ctx.decrypt_init()?; + +// // Calculate buffer size for decryption +// let buffer_len = ctx.decrypt(ciphertext, None)?; +// let mut plaintext = vec![0_u8; buffer_len]; + +// // Perform decryption +// let plaintext_len = ctx.decrypt(ciphertext, Some(&mut plaintext))?; +// plaintext.truncate(plaintext_len); + +// Ok(plaintext) +// } diff --git a/crate/cli/src/tests/kms/aws/mod.rs b/crate/cli/src/tests/kms/aws/mod.rs index bb589ea641..9fd81579ca 100644 --- a/crate/cli/src/tests/kms/aws/mod.rs +++ b/crate/cli/src/tests/kms/aws/mod.rs @@ -1,2 +1,3 @@ // TODO work here mod integration_tests; +mod unwrap_utils; diff --git a/crate/cli/src/tests/kms/aws/unwrap_utils.rs b/crate/cli/src/tests/kms/aws/unwrap_utils.rs new file mode 100644 index 0000000000..fc4d61567b --- /dev/null +++ b/crate/cli/src/tests/kms/aws/unwrap_utils.rs @@ -0,0 +1,244 @@ +//! AWS KMS is a managed service that can't be run locally for tests. By its design, private key materials never leave the AWS HSM, which makes it even harder to make tests that do not involve +//! actual calls to external infrastructure. Therefore, to verify the correct behavior of the AWS KMS BYOK import and export commands, we will unwrap using openssl. +//! As long as we can trust AWS KMS to behave correctly, we can consider these functions viable to verify the unwrapping process. +//! +//! If ever E2E tests with AWS KMS are to be implemented, simply edit the calls to the functions below to calls to AWS KMS `import-key-material` command. +use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; +use jwt_simple::reexports::rand::SeedableRng; +use jwt_simple::reexports::rand::seq::SliceRandom as _; +use openssl::cipher::{Cipher, CipherRef}; +use openssl::cipher_ctx::CipherCtx; +use openssl::{encrypt::Decrypter, hash::MessageDigest}; + +use openssl::pkey::{PKey, Private, Public}; +use openssl::rsa::{Padding, Rsa}; + +/// Generate RSA keypair using openssl (random size from 2048, 3072, or 4096 bits) +/// This replaces the AWS KMS keypair generation for testing purposes. +/// The aws API equivalent command (on cli) is: +/// ```sh +/// aws kms get-parameters-for-import \ +/// --key-id \ +/// --wrapping-algorithm RSAES_OAEP_SHA_256 \ +/// --wrapping-key-spec RSA_3072 # or RSA_2048 or RSA_4096 +/// ``` +pub(crate) fn generate_rsa_keypair() +-> Result<(PKey, PKey), Box> { + // Randomly select key size from AWS-supported sizes + let key_sizes = [2048, 3072, 4096]; + let mut rng = CsRng::from_entropy(); + let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + + let rsa = Rsa::generate(bits)?; + + let private_key = PKey::from_rsa(rsa.clone())?; + let public_key = PKey::from_rsa(Rsa::from_public_components( + rsa.n().to_owned()?, + rsa.e().to_owned()?, + )?)?; + + Ok((private_key, public_key)) +} + +/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-256 +/// This replaces the AWS KMS Import key material step for testing purposes. +/// The aws API equivalent command (on cli) is: +/// ```sh +/// aws kms import-key-material --key-id \ +/// --encrypted-key-material fileb:// \ +/// --import-token fileb:// \ +/// --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE +/// ``` +pub(crate) fn rsaes_oaep_sha256_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + let mut decrypter = Decrypter::new(private_key)?; + + // Set OAEP padding with SHA-256 + decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; + decrypter.set_rsa_oaep_md(MessageDigest::sha256())?; + decrypter.set_rsa_mgf1_md(MessageDigest::sha256())?; + + // Calculate buffer size + let buffer_len = decrypter.decrypt_len(ciphertext)?; + let mut decrypted = vec![0_u8; buffer_len]; + + // Decrypt + let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; + decrypted.truncate(decrypted_len); + + Ok(decrypted) +} + +/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-1 +/// This replaces the AWS KMS Import key material step for testing purposes. +pub(crate) fn rsaes_oaep_sha1_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + let mut decrypter = Decrypter::new(private_key)?; + + // Set OAEP padding with SHA-1 + decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; + decrypter.set_rsa_oaep_md(MessageDigest::sha1())?; + decrypter.set_rsa_mgf1_md(MessageDigest::sha1())?; + + // Calculate buffer size + let buffer_len = decrypter.decrypt_len(ciphertext)?; + let mut decrypted = vec![0_u8; buffer_len]; + + // Decrypt + let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; + decrypted.truncate(decrypted_len); + + Ok(decrypted) +} + +/// AES Key Unwrap with Padding (RFC 5649) using OpenSSL +fn aes_key_unwrap(ciphertext: &[u8], kek: &[u8]) -> Result, Box> { + const AES_WRAP_BLOCK_SIZE: usize = 8; + + // RFC 5649 requires ciphertext to be at least 16 bytes and a multiple of 8 bytes + if ciphertext.len() < 16 || !ciphertext.len().is_multiple_of(AES_WRAP_BLOCK_SIZE) { + return Err("Invalid ciphertext size for AES Key Unwrap".into()); + } + + // Select cipher based on KEK size + let cipher: &CipherRef = match kek.len() { + 16 => Cipher::aes_128_wrap_pad(), + 24 => Cipher::aes_192_wrap_pad(), // TODO delete those after fixingh the bug + 32 => Cipher::aes_256_wrap_pad(), + _ => { + return Err(format!( + "Invalid KEK size: {} bytes. Expected 16, 24, or 32", + kek.len() + ) + .into()); + } + }; + let mut ctx = CipherCtx::new()?; + ctx.decrypt_init(Some(cipher), Some(kek), None)?; + + // Allocate output buffer with extra space (defensive maneuver - the final result will be truncated to the actual size) + let mut plaintext = vec![0_u8; ciphertext.len() + 16]; + + let mut written = ctx.cipher_update(ciphertext, Some(&mut plaintext))?; + written += ctx.cipher_final(&mut plaintext[written..])?; + + // Truncate to actual output size + plaintext.truncate(written); + + Ok(plaintext) +} + +/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_1` +/// This is a two-step unwrapping process: +/// 1. RSA-OAEP with SHA-1 unwraps the ephemeral AES key +/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material +pub(crate) fn rsa_aes_key_wrap_sha1_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] + // RSA-encrypted part size equals the RSA key size in bytes + let rsa_key_size = private_key.size(); + + if ciphertext.len() <= rsa_key_size { + return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); + } + + // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material + let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); + + // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-1 + let aes_key = rsaes_oaep_sha1_unwrap(encrypted_aes_key, private_key)?; + + // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) + let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; + Ok(unwrapped_key) +} + +/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_256` +/// This is a two-step unwrapping process: +/// 1. RSA-OAEP with SHA-256 unwraps the ephemeral AES key +/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material +pub(crate) fn rsa_aes_key_wrap_sha256_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] + // RSA-encrypted part size equals the RSA key size in bytes + let rsa_key_size = private_key.size(); + + if ciphertext.len() <= rsa_key_size { + return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); + } + + // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material + let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); + + // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-256 + let aes_key = rsaes_oaep_sha256_unwrap(encrypted_aes_key, private_key)?; + + // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) + let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; + + Ok(unwrapped_key) +} + +/// Generate SM2 keypair using OpenSSL +/// This replaces the chinese AWS KMS keypair generation for testing purposes. +#[cfg(feature = "non-fips")] +pub(crate) fn generate_sm2_keypair() +-> Result<(PKey, PKey), Box> { + use openssl::ec::{EcGroup, EcKey}; + use openssl::nid::Nid; + + let group = EcGroup::from_curve_name(Nid::SM2)?; + + // Generate EC key on SM2 curve + let ec_key = EcKey::generate(&group)?; + + // Convert to PKey + let private_key = PKey::from_ec_key(ec_key.clone())?; + + // Extract public key + let public_ec_key = EcKey::from_public_key(&group, ec_key.public_key())?; + let public_key = PKey::from_ec_key(public_ec_key)?; + + Ok((private_key, public_key)) +} + +/// Unwrap (decrypt) the given ciphertext using SM2PKE (SM2 Public Key Encryption) +/// SM2PKE is a Chinese national standard encryption algorithm used in AWS China regions. +/// This replaces the AWS KMS Import key material step for testing purposes. +/// +/// Note: SM2 support requires OpenSSL 1.1.1+ compiled with SM2 support. +/// This is typically available in non-FIPS mode only. +#[cfg(feature = "non-fips")] +pub(crate) fn sm2pke_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + // Verify the key is an SM2 key + + use openssl::pkey_ctx::PkeyCtx; + if private_key.id() != openssl::pkey::Id::SM2 { + return Err("Private key is not an SM2 key".into()); + } + + // Create decryption context + let mut ctx = PkeyCtx::new(private_key)?; + ctx.decrypt_init()?; + + // Calculate buffer size for decryption + let buffer_len = ctx.decrypt(ciphertext, None)?; + let mut plaintext = vec![0_u8; buffer_len]; + + // Perform decryption + let plaintext_len = ctx.decrypt(ciphertext, Some(&mut plaintext))?; + plaintext.truncate(plaintext_len); + + Ok(plaintext) +} From 37871251ea1bfaef5d85d92cf46800b1a5d61e00 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Tue, 20 Jan 2026 19:02:16 +0100 Subject: [PATCH 06/16] feat: tests ok --- .../src/tests/kms/aws/integration_tests.rs | 52 +++++-------------- 1 file changed, 14 insertions(+), 38 deletions(-) diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs index ef8f6eb308..70ec888e0e 100644 --- a/crate/cli/src/tests/kms/aws/integration_tests.rs +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -3,12 +3,12 @@ //! //! ## Test Matrix //! -//! | Test Function | Wrapping Algorithm | Key Source | KEK Import | Key Type | -//! |--------------------------------------|-------------------------|--------------------|------------|-------------| -//! | `aws_byok_with_rsaes_oaep_sha256` | `RSAES_OAEP_SHA_256` | Test file (imported) | Base64 | AES-256 | -//! | `aws_byok_with_rsaes_oaep_sha1` | `RSAES_OAEP_SHA_1` | KMS (generated) | File (DER) | HMAC | -//! | `aws_byok_with_rsa_aes_key_wrap_sha1`| `RSA_AES_KEY_WRA_SHA_1`| KMS (generated) | File (DER) | RSA (private key) | -//! | `aws_byok_with_rsa_aes_key_wrap_sha256`| `RSA_AES_KEY_WRAP_SHA_256`| KMS (generated) | Base64 | ECC (private key) | +//! | Test Function | Wrapping Algorithm | Key Type | Key Source | KEK Import | Export Mode | +//! |----------------------------------------|---------------------------|--------------------|--------------------|------------|-------------| +//! | `aws_byok_with_rsa_aes_key_wrap_sha256`| `RSA_AES_KEY_WRAP_SHA_256`| ECC (private key) | KMS (generated) | Base64 | File (bin) | +//! | `aws_byok_with_rsaes_oaep_sha256` | `RSAES_OAEP_SHA_256` | AES-256 | Test file (imported) | Base64 | Base64 | +//! | `aws_byok_with_rsaes_oaep_sha1` | `RSAES_OAEP_SHA_1` | HMAC | KMS (generated) | File (DER) | Base64 | +//! | `aws_byok_with_rsa_aes_key_wrap_sha1` | `RSA_AES_KEY_WRA_SHA_1` | RSA (private key) | KMS (generated) | File (DER) | File (bin) | //! //! [AWS KMS Docs](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html) @@ -318,9 +318,10 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha1() -> KmsCliResult<()> { Ok(()) } -// // Generate the key material with the KMS, then export it using ExportObjectParams for later verification -// // Import kek as base64 string +// Generate the key material with the KMS, then export it using ExportObjectParams for later verification +// Import kek as base64 string // Export the key material wrapped with the kek as a file blob +// /!\ It's not possible to export cleartext ECC private keys from the KMS, so we skip the plaintext verification step #[tokio::test] async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { log_init(None); @@ -342,21 +343,9 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { ..Default::default() }; - // we will discard the public key for the test - real world users will simply export it in plaintext let (private_key_id, _public_key_id) = create_keypair_action.run(ctx.get_owner_client()).await?; - // Export the private key unwrapped and keep its plaintext bytes for later verification - let (_, cosmian_key_material, _) = export_object( - &ctx.get_owner_client(), - &private_key_id.to_string(), - ExportObjectParams::default(), - ) - .await?; - let cosmian_key_bytes = cosmian_key_material.key_block()?.key_bytes()?; - - // We now have all necessary elements to start the test - // Step 1: Import the KEK as base64 string let import_action = ImportKekAction { kek_base64: Some(public_key_base64), kek_file: None, @@ -369,7 +358,6 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { let output_file_path = temp_dir.join(format!("wrapped_key_test_{private_key_id}.bin")); - // Step 2: Export the wrapped key let export_action = ExportByokAction { key_id: private_key_id.to_string(), kek_id: kek_id.to_string(), @@ -387,25 +375,13 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { rsa_aes_key_wrap_sha256_unwrap(&wrapped_key_bytes, &aws_private_key_mock) .expect("Failed to unwrap key"); - // // Parse the unwrapped key as PKCS#8 (ECC private key) - // let pkey = openssl::pkey::PKey::private_key_from_pkcs8(&unwrapped_key_bytes) - // .expect("Failed to parse PKCS#8 key"); - - // // Extract the ECC key (not RSA) - // let ec_key = pkey.ec_key().expect("Key should be ECC"); - - // unwrapped_key_bytes = ec_key - // .private_key_to_der() - // .expect("Failed to convert to ECPrivateKey DER"); + // Parse the unwrapped key as PKCS#8 + let pkey = openssl::pkey::PKey::private_key_from_pkcs8(&unwrapped_key_bytes) + .expect("Failed to parse PKCS#8 key"); - // Finally: Verify the unwrapped key matches the original key material - assert_eq!( - unwrapped_key_bytes, - cosmian_key_bytes.to_vec(), - "Unwrapped key should match the original key material" - ); + // Extract the ECC key (and check it's valid) + let _ec_key = pkey.ec_key().expect("Key should be ECC"); - // Cleanup temp files std::fs::remove_file(&output_file_path)?; Ok(()) From 4ebc53fe2d484d29786dbdfbde656db94d3955d3 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 21 Jan 2026 15:07:52 +0100 Subject: [PATCH 07/16] fix: last fixes before ui update + rebase --- .../kms/aws/byok/export_key_material.rs | 11 +++------ .../src/actions/kms/aws/byok/import_kek.rs | 15 +++++++----- crate/cli/src/lib.rs | 4 +++- .../src/tests/kms/aws/integration_tests.rs | 24 +++++++++---------- crate/cli/src/tests/kms/aws/mod.rs | 1 - crate/cli/src/tests/kms/aws/unwrap_utils.rs | 5 ++-- 6 files changed, 28 insertions(+), 32 deletions(-) diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index 1a46336195..d844ff9125 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -77,12 +77,7 @@ impl ExportByokAction { ))); } - let key_arn = tags - .iter() - .find(|t| t.starts_with("key_arn:")) - .context(&kek_tag_error("AWS key ARN not found"))? - .strip_prefix("key_arn:") - .ok_or(KmsCliError::Default(kek_tag_error("invalid arn tag")))?; + let key_arn = tags.iter().find_map(|t| t.strip_prefix("key_arn:")); let wrapping_algorithm_str = tags .iter() @@ -165,7 +160,7 @@ impl ExportByokAction { print!("{}", file_path.display()); eprintln!( "{} for key {}.\n\n\ - To import into AWS KMS, run:\n\ + To import into AWS KMS using the API, run:\n\ aws kms import-key-material \\\n\ --key-id {} \\\n\ --encrypted-key-material fileb://{} \\\n\ @@ -173,7 +168,7 @@ impl ExportByokAction { --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE", wrapped_key.len(), self.key_id, - key_arn, + key_arn.unwrap_or(""), file_path.display(), self.token_file_path.as_ref().map_or_else( || "".to_owned(), diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index e5d84f0d97..211c033df1 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -52,13 +52,13 @@ pub struct ImportKekAction { #[clap(short = 'f', long, group = "kek_input")] pub(crate) kek_file: Option, - /// The Amazon Resource Name (key ARN) of the KMS key. - #[clap(short = 'a', long, required = true, verbatim_doc_comment)] - pub(crate) key_arn: String, - - #[clap(short = 'w', long, required = true, verbatim_doc_comment)] + #[clap(short = 'w', long, required = true)] pub(crate) wrapping_algorithm: AwsKmsWrappingAlgorithm, + /// The Amazon Resource Name (key ARN) of the KMS key. It's recommended to provide it for an easier export later. + #[clap(short = 'a', long, required = false)] + pub(crate) key_arn: Option, + /// The unique ID of the key in this KMS; a random UUID /// is generated if not specified. #[clap(short = 'i', long, required = false)] @@ -86,7 +86,10 @@ impl ImportKekAction { key_format: ImportKeyFormat::Pkcs8Pub, // TODO: idk maybe this should be pkcs1 tags: vec![ "aws".to_owned(), - format!("key_arn:{}", self.key_arn), + self.key_arn + .as_ref() + .map(|arn| format!("key_arn:{arn}")) + .unwrap_or_default(), format!("wrapping_algorithm:{}", self.wrapping_algorithm), ], key_usage: Some(vec![KeyUsage::WrapKey, KeyUsage::Encrypt]), diff --git a/crate/cli/src/lib.rs b/crate/cli/src/lib.rs index a1b58c4f80..5888cbd9b2 100644 --- a/crate/cli/src/lib.rs +++ b/crate/cli/src/lib.rs @@ -7,6 +7,7 @@ pub mod reexport { pub use cosmian_kms_crypto; } +// Clippy lints that are allowed in tests #[cfg(test)] #[allow( clippy::unwrap_used, @@ -19,6 +20,7 @@ pub mod reexport { clippy::large_stack_frames, clippy::ignore_without_reason, dead_code, - clippy::unwrap_in_result + clippy::unwrap_in_result, + clippy::as_conversions )] mod tests; diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs index 70ec888e0e..0602fe3da0 100644 --- a/crate/cli/src/tests/kms/aws/integration_tests.rs +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -5,14 +5,14 @@ //! //! | Test Function | Wrapping Algorithm | Key Type | Key Source | KEK Import | Export Mode | //! |----------------------------------------|---------------------------|--------------------|--------------------|------------|-------------| -//! | `aws_byok_with_rsa_aes_key_wrap_sha256`| `RSA_AES_KEY_WRAP_SHA_256`| ECC (private key) | KMS (generated) | Base64 | File (bin) | +//! | `aws_byok_with_rsa_aes_key_wrap_sha256`| `RSA_AES_KEY_WRAP_SHA_256`| ECC (private key) | KMS (generated) | Base64 | File (bin) | //! | `aws_byok_with_rsaes_oaep_sha256` | `RSAES_OAEP_SHA_256` | AES-256 | Test file (imported) | Base64 | Base64 | //! | `aws_byok_with_rsaes_oaep_sha1` | `RSAES_OAEP_SHA_1` | HMAC | KMS (generated) | File (DER) | Base64 | //! | `aws_byok_with_rsa_aes_key_wrap_sha1` | `RSA_AES_KEY_WRA_SHA_1` | RSA (private key) | KMS (generated) | File (DER) | File (bin) | //! //! [AWS KMS Docs](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html) -#![allow(unused_imports, clippy::unwrap_used)] +#![allow(unused_imports, clippy::unwrap_used, clippy::as_conversions)] use crate::actions::kms::aws::byok::export_key_material::ExportByokAction; use crate::actions::kms::aws::byok::import_kek::ImportKekAction; use crate::actions::kms::aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm; @@ -32,14 +32,12 @@ use cosmian_kms_client::reexport::cosmian_kms_client_utils::import_utils::Import use cosmian_kms_client::{ExportObjectParams, export_object}; use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; use cosmian_logger::log_init; -use jwt_simple::reexports::rand::RngCore as _; -use jwt_simple::reexports::rand::{SeedableRng, seq::SliceRandom as _}; use openssl::cipher::{Cipher, CipherRef}; -use openssl::{encrypt::Decrypter, hash::MessageDigest}; -use test_kms_server::start_default_test_kms_server; - use openssl::pkey::{PKey, Private, Public}; use openssl::rsa::{Padding, Rsa}; +use openssl::{encrypt::Decrypter, hash::MessageDigest}; +use sha2::digest::crypto_common::rand_core::{RngCore, SeedableRng}; +use test_kms_server::start_default_test_kms_server; use uuid::Uuid; // Test constants from AWS KMS GetParametersForImport response @@ -93,7 +91,7 @@ async fn aws_byok_with_rsaes_oaep_sha256() -> KmsCliResult<()> { // TODO: check why the compiler complains abt an optional fields (the kek id) kek_base64: Some(public_key_base64), kek_file: None, - key_arn: TEST_KEY_ARN.to_owned(), + key_arn: Some(TEST_KEY_ARN.to_owned()), wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaesOaepSha256, key_id: None, }; @@ -156,7 +154,7 @@ async fn aws_byok_with_rsaes_oaep_sha1() -> KmsCliResult<()> { let key_sizes = [224, 256, 384, 512]; let mut rng = CsRng::from_entropy(); - let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + let bits = key_sizes[(rng.next_u32() as usize) % key_sizes.len()]; // Generate a random symmetric key in the kms. let cosmian_key_id = CreateKeyAction { @@ -182,7 +180,7 @@ async fn aws_byok_with_rsaes_oaep_sha1() -> KmsCliResult<()> { let import_action = ImportKekAction { kek_base64: None, kek_file: Some(kek_file_path.clone()), - key_arn: TEST_KEY_ARN.to_owned(), + key_arn: Some(TEST_KEY_ARN.to_owned()), wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaesOaepSha1, key_id: None, }; @@ -246,7 +244,7 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha1() -> KmsCliResult<()> { // Generate an RSA keypair in the KMS (the key material to wrap will be the private key) let key_sizes = [2048, 3072, 4096]; let mut rng = CsRng::from_entropy(); - let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + let bits = key_sizes[(rng.next_u32() as usize) % key_sizes.len()]; let create_keypair_action = CreateRsaKeyPairAction { key_size: bits, @@ -271,7 +269,7 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha1() -> KmsCliResult<()> { let import_action = ImportKekAction { kek_file: Some(kek_file_path.clone()), kek_base64: None, - key_arn: TEST_KEY_ARN.to_owned(), + key_arn: Some(TEST_KEY_ARN.to_owned()), wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha1, key_id: None, }; @@ -349,7 +347,7 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { let import_action = ImportKekAction { kek_base64: Some(public_key_base64), kek_file: None, - key_arn: TEST_KEY_ARN.to_owned(), + key_arn: Some(TEST_KEY_ARN.to_owned()), wrapping_algorithm: AwsKmsWrappingAlgorithm::RsaAesKeyWrapSha256, key_id: None, }; diff --git a/crate/cli/src/tests/kms/aws/mod.rs b/crate/cli/src/tests/kms/aws/mod.rs index 9fd81579ca..f8ec3c087a 100644 --- a/crate/cli/src/tests/kms/aws/mod.rs +++ b/crate/cli/src/tests/kms/aws/mod.rs @@ -1,3 +1,2 @@ -// TODO work here mod integration_tests; mod unwrap_utils; diff --git a/crate/cli/src/tests/kms/aws/unwrap_utils.rs b/crate/cli/src/tests/kms/aws/unwrap_utils.rs index fc4d61567b..952431246f 100644 --- a/crate/cli/src/tests/kms/aws/unwrap_utils.rs +++ b/crate/cli/src/tests/kms/aws/unwrap_utils.rs @@ -4,11 +4,10 @@ //! //! If ever E2E tests with AWS KMS are to be implemented, simply edit the calls to the functions below to calls to AWS KMS `import-key-material` command. use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; -use jwt_simple::reexports::rand::SeedableRng; -use jwt_simple::reexports::rand::seq::SliceRandom as _; use openssl::cipher::{Cipher, CipherRef}; use openssl::cipher_ctx::CipherCtx; use openssl::{encrypt::Decrypter, hash::MessageDigest}; +use sha2::digest::crypto_common::rand_core::{RngCore, SeedableRng}; use openssl::pkey::{PKey, Private, Public}; use openssl::rsa::{Padding, Rsa}; @@ -27,7 +26,7 @@ pub(crate) fn generate_rsa_keypair() // Randomly select key size from AWS-supported sizes let key_sizes = [2048, 3072, 4096]; let mut rng = CsRng::from_entropy(); - let bits = *key_sizes.choose(&mut rng).expect("key_sizes is not empty"); + let bits = key_sizes[(rng.next_u32() as usize) % key_sizes.len()]; let rsa = Rsa::generate(bits)?; From 828cc1545a9cb9e25ddc387365b11d4507b30979 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 21 Jan 2026 20:47:19 +0100 Subject: [PATCH 08/16] feat: WIP on ui code --- .../src/actions/kms/aws/byok/import_kek.rs | 18 +- ui/eslint.config.js | 50 ++-- ui/src/App.tsx | 155 +++++------ ui/src/AwsExportKeyMaterial.tsx | 252 ++++++++++++++++++ ui/src/AwsImportKek.tsx | 227 ++++++++++++++++ ui/src/AzureExportByok.tsx | 66 ++--- ui/src/AzureImportKek.tsx | 53 ++-- ui/src/CseInfo.tsx | 10 +- ui/src/Sidebar.tsx | 6 +- ui/src/components/ExternalLink.tsx | 17 ++ ui/src/menuItems.tsx | 123 +++++---- 11 files changed, 733 insertions(+), 244 deletions(-) create mode 100644 ui/src/AwsExportKeyMaterial.tsx create mode 100644 ui/src/AwsImportKek.tsx create mode 100644 ui/src/components/ExternalLink.tsx diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index 211c033df1..170211ba00 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -68,6 +68,15 @@ pub struct ImportKekAction { impl ImportKekAction { #[allow(clippy::expect_used, clippy::unwrap_used, clippy::missing_panics_doc)] // TODO pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult { + // build tags + let mut tags = vec![ + "aws".to_owned(), + format!("wrapping_algorithm:{}", self.wrapping_algorithm), + ]; + if let Some(arn) = &self.key_arn { + tags.push(format!("key_arn:{arn}")); + } + let import_action = ImportSecretDataOrKeyAction { key_file: self .kek_file @@ -84,14 +93,7 @@ impl ImportKekAction { .expect("msg"), // TODO key_id: self.key_id.clone(), key_format: ImportKeyFormat::Pkcs8Pub, // TODO: idk maybe this should be pkcs1 - tags: vec![ - "aws".to_owned(), - self.key_arn - .as_ref() - .map(|arn| format!("key_arn:{arn}")) - .unwrap_or_default(), - format!("wrapping_algorithm:{}", self.wrapping_algorithm), - ], + tags, key_usage: Some(vec![KeyUsage::WrapKey, KeyUsage::Encrypt]), replace_existing: true, ..Default::default() diff --git a/ui/eslint.config.js b/ui/eslint.config.js index 092408a9f0..22904018ec 100644 --- a/ui/eslint.config.js +++ b/ui/eslint.config.js @@ -1,28 +1,26 @@ -import js from '@eslint/js' -import globals from 'globals' -import reactHooks from 'eslint-plugin-react-hooks' -import reactRefresh from 'eslint-plugin-react-refresh' -import tseslint from 'typescript-eslint' +import js from "@eslint/js"; +import globals from "globals"; +import reactHooks from "eslint-plugin-react-hooks"; +import reactRefresh from "eslint-plugin-react-refresh"; +import tseslint from "typescript-eslint"; +// TODO: update to match cosmian ai-client eslint config export default tseslint.config( - { ignores: ['dist'] }, - { - extends: [js.configs.recommended, ...tseslint.configs.recommended], - files: ['**/*.{ts,tsx}'], - languageOptions: { - ecmaVersion: 2020, - globals: globals.browser, - }, - plugins: { - 'react-hooks': reactHooks, - 'react-refresh': reactRefresh, - }, - rules: { - ...reactHooks.configs.recommended.rules, - 'react-refresh/only-export-components': [ - 'warn', - { allowConstantExport: true }, - ], - }, - }, -) + { ignores: ["dist"] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ["**/*.{ts,tsx}"], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + "react-hooks": reactHooks, + "react-refresh": reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + "react-refresh/only-export-components": ["warn", { allowConstantExport: true }], + }, + } +); diff --git a/ui/src/App.tsx b/ui/src/App.tsx index 1b7397f8bf..11153afd79 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -49,17 +49,19 @@ import SymmetricDecryptForm from "./SymmetricDecrypt"; import SymmetricEncryptForm from "./SymmetricEncrypt"; import { AuthMethod, fetchAuthMethod, fetchIdToken, getNoTTLVRequest } from "./utils"; import init from "./wasm/pkg"; +import ImportAwsKekForm from "./AwsImportKek"; +import AwsExportKeyMaterialForm from "./AwsExportKeyMaterial"; type AppContentProps = { isDarkMode: boolean; setIsDarkMode: (value: boolean) => void; }; -const LS_DARKMODE_KEY = 'darkMode'; -const initialDarkMode = localStorage.getItem(LS_DARKMODE_KEY) +const LS_DARKMODE_KEY = "darkMode"; +const initialDarkMode = localStorage.getItem(LS_DARKMODE_KEY); -const AppContent: React.FC = ({isDarkMode, setIsDarkMode}) => { - const {setServerUrl, setIdToken, setUserId} = useAuth(); +const AppContent: React.FC = ({ isDarkMode, setIsDarkMode }) => { + const { setServerUrl, setIdToken, setUserId } = useAuth(); const [isAuthenticated, setIsAuthenticated] = useState(false); const [isAuthLoading, setIsAuthLoading] = useState(false); const [authMethod, setAuthMethod] = useState("None"); @@ -71,7 +73,7 @@ const AppContent: React.FC = ({isDarkMode, setIsDarkMode}) => { useEffect(() => { localStorage.setItem(LS_DARKMODE_KEY, JSON.stringify(isDarkMode)); - }, [isDarkMode]) + }, [isDarkMode]); useEffect(() => { // Automatically use dev URL in development mode @@ -113,99 +115,102 @@ const AppContent: React.FC = ({isDarkMode, setIsDarkMode}) => { {!isAuthenticated && authMethod === "JWT" ? ( <> - }/> - }/> + } /> + } /> ) : ( <> - }/> - }> - }/> + } /> + }> + } /> - }/> - }/> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> - }/> - }/> - }/> - }/> - }/> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> - }/> - }/> - }/> + } /> + } /> + } /> - }/> - }/> + } /> + } /> - }/> + + } /> + } /> + + } /> - }/> + } /> )} @@ -326,7 +331,7 @@ function App() { }} > - + diff --git a/ui/src/AwsExportKeyMaterial.tsx b/ui/src/AwsExportKeyMaterial.tsx new file mode 100644 index 0000000000..7ba77ad55b --- /dev/null +++ b/ui/src/AwsExportKeyMaterial.tsx @@ -0,0 +1,252 @@ +import { Button, Card, Form, Input, Space, Upload } from "antd"; +import { UploadOutlined } from "@ant-design/icons"; +import React, { useEffect, useRef, useState } from "react"; +import { useAuth } from "./AuthContext"; +import { downloadFile, sendKmipRequest } from "./utils"; +import { + export_ttlv_request, + get_attributes_ttlv_request, + parse_export_ttlv_response, + parse_get_attributes_ttlv_response, +} from "./wasm/pkg/cosmian_kms_client_wasm"; +import ExternalLink from "./components/ExternalLink"; + +const getTags = (attributes: Map): string[] => { + const vendor_attributes: Array> | undefined = attributes.get("vendor_attributes"); + if (typeof vendor_attributes !== "undefined") { + const attrs_value_map: Map | undefined = (vendor_attributes as Array>) + .find((attribute: Map) => { + return attribute.get("AttributeName") === "tag"; + }) + ?.get("AttributeValue"); + if (typeof attrs_value_map === "undefined") { + return []; + } + const tags_string = (attrs_value_map as Map).get("_c"); + if (tags_string) { + try { + return JSON.parse(tags_string); + } catch (error) { + console.error("Error parsing tags JSON:", error); + return []; + } + } else { + return []; + } + } + return []; +}; + +interface AwsExportKeyMaterialFormData { + wrappedKeyId: string; + kekId: string; + tokenFile?: Uint8Array; + byokFile?: string; +} + +const AwsExportKeyMaterialForm: React.FC = () => { + const [form] = Form.useForm(); + const [res, setRes] = useState(undefined); + const [isLoading, setIsLoading] = useState(false); + const { idToken, serverUrl } = useAuth(); + const responseRef = useRef(null); + + useEffect(() => { + if (res && responseRef.current) { + responseRef.current.scrollIntoView({ behavior: "smooth" }); + } + }, [res]); + + const onFinish = async (values: AwsExportKeyMaterialFormData) => { + setIsLoading(true); + setRes(undefined); + try { + // Step 1: Get KEK attributes to retrieve AWS tags + const getAttrsRequest = get_attributes_ttlv_request(values.kekId); + const attrsResultStr = await sendKmipRequest(getAttrsRequest, idToken, serverUrl); + + if (!attrsResultStr) { + setRes("Failed to retrieve KEK attributes"); + return; + } + + const allAttributes = [ + "activation_date", + "cryptographic_algorithm", + "cryptographic_length", + "key_usage", + "key_format_type", + "object_type", + "vendor_attributes", + "public_key_id", + "private_key_id", + ]; + const attributes = await parse_get_attributes_ttlv_response(attrsResultStr, allAttributes); + + const tags = getTags(attributes); + + if (!tags.includes("aws")) { + setRes("The KEK is not an AWS Key Encryption Key: missing 'aws' tag. Import it using the Import KEK command."); + return; + } + + const keyArnTag = tags.find((t: string) => t.startsWith("key_arn:")); + const keyArn = keyArnTag ? keyArnTag.substring(8) : undefined; + + const wrappingAlgTag = tags.find((t: string) => t.startsWith("wrapping_algorithm:")); + if (!wrappingAlgTag) { + setRes("The KEK is not an AWS Key Encryption Key: wrapping algorithm not found. Import it using the Import KEK command."); + return; + } + const wrappingAlgorithm = wrappingAlgTag.substring(19); + + // Step 2: Export the wrapped key using the KEK + const exportRequest = export_ttlv_request( + values.wrappedKeyId, // Key ID to wrap + false, // Unwrap flag + undefined, // Key format (let server decide) + values.kekId, // Wrapping key ID + wrappingAlgorithm // Wrapping algorithm + ); + + const exportResultStr = await sendKmipRequest(exportRequest, idToken, serverUrl); + + if (!exportResultStr) { + setRes("Failed to export wrapped key"); + return; + } + + const wrappedKeyData = await parse_export_ttlv_response(exportResultStr, undefined); + + let wrappedKeyBytes: Uint8Array; + if (wrappedKeyData instanceof Uint8Array) { + wrappedKeyBytes = wrappedKeyData; + } else if (typeof wrappedKeyData === "string") { + const binaryString = atob(wrappedKeyData); + wrappedKeyBytes = new Uint8Array(binaryString.length); + for (let i = 0; i < binaryString.length; i++) { + wrappedKeyBytes[i] = binaryString.charCodeAt(i); + } + } else { + setRes("Unexpected wrapped key format"); + return; + } + + // Step 3: Generate output + if (values.byokFile) { + // Download as file + downloadFile(wrappedKeyBytes, values.byokFile, "application/octet-stream"); + + // Build AWS CLI command + const tokenPath = values.tokenFile ? "" : ""; + const awsCommand = `aws kms import-key-material \\ + --key-id ${keyArn || ""} \\ + --encrypted-key-material fileb://${values.byokFile} \\ + --import-token fileb://${tokenPath} \\ + --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE`; + + setRes( + `The encrypted key material (${wrappedKeyBytes.length} bytes) was successfully written to ${values.byokFile} for key ${values.wrappedKeyId}.\n\nTo import into AWS KMS using the CLI, run:\n\n${awsCommand}` + ); + } else { + // Display as base64 + const b64Key = btoa(String.fromCharCode(...wrappedKeyBytes)); + setRes(`Wrapped key material (base64-encoded):\n\n${b64Key}`); + } + } catch (e) { + setRes(`Error exporting key material: ${e}`); + console.error("Error exporting key material:", e); + } finally { + setIsLoading(false); + } + }; + + return ( +
+

Export AWS Key Material

+
+

Wrap a Cosmian KMS key with an AWS KMS wrapping key and generate the key material to be imported into.

+

The KEK must be previously imported using the Import KEK command.

+

+ See:{" "} + + AWS KMS Import Key Material + +

+
+
+ + +

Key Identifiers

+ + + + + + +
+ +

Import Token (Optional)

+ + { + const reader = new FileReader(); + reader.onload = (e) => { + const content = e.target?.result; + if (content instanceof ArrayBuffer) { + const bytes = new Uint8Array(content); + form.setFieldsValue({ tokenFile: bytes }); + } + }; + reader.readAsArrayBuffer(file); + return false; + }} + maxCount={1} + > + + + +
+ +

Output Options

+ + + +
+ + + +
+
+ {res && ( +
+ +
{res}
+
+
+ )} +
+ ); +}; + +export default AwsExportKeyMaterialForm; diff --git a/ui/src/AwsImportKek.tsx b/ui/src/AwsImportKek.tsx new file mode 100644 index 0000000000..335daa3cdd --- /dev/null +++ b/ui/src/AwsImportKek.tsx @@ -0,0 +1,227 @@ +import { UploadOutlined } from "@ant-design/icons"; +import { Button, Card, Form, Input, Select, Space, Upload, Tabs } from "antd"; +import React, { useEffect, useRef, useState } from "react"; +import { useAuth } from "./AuthContext"; +import { sendKmipRequest } from "./utils"; +import { import_ttlv_request, parse_import_ttlv_response } from "./wasm/pkg"; +import ExternalLink from "./components/ExternalLink"; + +interface ImportAwsKekFormData { + kekFile?: Uint8Array; + kekBase64?: string; + keyArn?: string; + wrappingAlgorithm: string; + keyId?: string; +} + +type KeyImportResponse = { + UniqueIdentifier: string; +}; + +const WRAPPING_ALGORITHMS = [ + { label: "RSAES_OAEP_SHA_1", value: "rsaes-oaep-sha1" }, + { label: "RSAES_OAEP_SHA_256", value: "rsaes-oaep-sha256" }, + { label: "RSA_AES_KEY_WRAP_SHA_1", value: "rsa-aes-key-wrap-sha1" }, + { label: "RSA_AES_KEY_WRAP_SHA_256", value: "rsa-aes-key-wrap-sha256" }, + { label: "SM2PKE (China region only)", value: "sm2pke" }, +]; + +const ImportAwsKekForm: React.FC = () => { + const [form] = Form.useForm(); + const [res, setRes] = useState(undefined); + const [isLoading, setIsLoading] = useState(false); + const { idToken, serverUrl } = useAuth(); + const responseRef = useRef(null); + const [inputType, setInputType] = useState<"file" | "base64">("file"); + + useEffect(() => { + if (res && responseRef.current) { + responseRef.current.scrollIntoView({ behavior: "smooth" }); + } + }, [res]); + + const onFinish = async (values: ImportAwsKekFormData) => { + setIsLoading(true); + setRes(undefined); + try { + const tags = ["aws", `wrapping_algorithm:${values.wrappingAlgorithm}`]; + // only include key_arn if provided: + if (values.keyArn) { + tags.push(`key_arn:${values.keyArn}`); + } + const keyUsage = ["WrapKey", "Encrypt"]; + + let kekData: Uint8Array | undefined = undefined; + let kekFormat: string | undefined = undefined; + + if (inputType === "file" && values.kekFile) { + kekData = values.kekFile; + kekFormat = "pkcs8"; + } else if (inputType === "base64" && values.kekBase64) { + // Decode base64 to Uint8Array + const binary = atob(values.kekBase64.replace(/\s/g, "")); + const bytes = new Uint8Array(binary.length); + for (let i = 0; i < binary.length; i++) { + bytes[i] = binary.charCodeAt(i); + } + kekData = bytes; + kekFormat = "pkcs8"; + } else { + setRes("Please provide the KEK as a file or base64 string."); + setIsLoading(false); + return; + } + + const request = import_ttlv_request( + values.keyId || null, // Custom key ID + kekData, // Key bytes + kekFormat, // Format type + undefined, // Public key ID + undefined, // Private key ID + undefined, // Certificate ID + false, // Unwrap flag + true, // Replace existing + tags, // Tags array + keyUsage, // Key usage + undefined // Wrapping key ID + ); + + const result_str = await sendKmipRequest(request, idToken, serverUrl); + if (result_str) { + const result: KeyImportResponse = await parse_import_ttlv_response(result_str); + setRes(`AWS KEK has been successfully imported - Key ID: ${result.UniqueIdentifier}`); + } + } catch (e) { + setRes(`Error importing AWS KEK: ${e}`); + console.error("Error importing AWS KEK:", e); + } finally { + setIsLoading(false); + } + }; + + return ( +
+

Import AWS Key Encryption Key (KEK)

+
+

Import an RSA Public Key Encryption Key (KEK) generated by AWS KMS.

+

+ The KEK should be provided as a raw binary file (recommended) or as a base64-encoded string. +

+ {/* prettier-ignore */} +

+ See AWS KMS developer documentation for {" "} + + downloading the wrapping public key and import token + . +

+
+
+ + + {/* prettier-ignore */} + setInputType(key as "file" | "base64")} + items={[ + { + key: "file", + label: "Upload KEK File (raw binary)", + children: ( + + { + const reader = new FileReader(); + reader.onload = (e) => { + const content = e.target?.result; + if (content instanceof ArrayBuffer) { + const bytes = new Uint8Array(content); + form.setFieldsValue({ kekFile: bytes }); + } + }; + reader.readAsArrayBuffer(file); + return false; + }} + maxCount={1} + > + + + + ), + }, + { + key: "base64", + label: "Paste Base64-encoded KEK", + children: ( + + Paste the base64-encoded KEK (as exported from{" "} + + AWS KMS API + ) + + } + > + + + ), + }, + ]} + /> + + +

Wrapping Algorithm

+ + + +
+ +

KMS Key ID

+ + + +
+ + + +
+
+ {res && ( +
+ {res} +
+ )} +
+ ); +}; + +export default ImportAwsKekForm; diff --git a/ui/src/AzureExportByok.tsx b/ui/src/AzureExportByok.tsx index 31b710e594..140f7dd0da 100644 --- a/ui/src/AzureExportByok.tsx +++ b/ui/src/AzureExportByok.tsx @@ -1,22 +1,25 @@ -import {Button, Card, Form, Input, Space} from "antd"; -import React, {useEffect, useRef, useState} from "react"; -import {useAuth} from "./AuthContext"; -import {downloadFile, sendKmipRequest} from "./utils"; +import { Button, Card, Form, Input, Space } from "antd"; +import React, { useEffect, useRef, useState } from "react"; +import { useAuth } from "./AuthContext"; +import { downloadFile, sendKmipRequest } from "./utils"; import { export_ttlv_request, get_attributes_ttlv_request_with_options, parse_export_ttlv_response, - parse_get_attributes_ttlv_response + parse_get_attributes_ttlv_response, } from "./wasm/pkg"; +import ExternalLink from "./components/ExternalLink"; const getTags = (attributes: Map): string[] => { const vendor_attributes: Array> | undefined = attributes.get("vendor_attributes"); if (typeof vendor_attributes !== "undefined") { - const attrs_value_map: Map | undefined = (vendor_attributes as Array>).find((attribute: Map) => { - return attribute.get("AttributeName") === "tag"; - })?.get("AttributeValue"); + const attrs_value_map: Map | undefined = (vendor_attributes as Array>) + .find((attribute: Map) => { + return attribute.get("AttributeName") === "tag"; + }) + ?.get("AttributeValue"); if (typeof attrs_value_map === "undefined") { - return [] + return []; } const tags_string = (attrs_value_map as Map).get("_c"); if (tags_string) { @@ -31,9 +34,8 @@ const getTags = (attributes: Map): string[] => { } } - - return [] -} + return []; +}; interface ExportAzureBYOKFormData { wrappedKeyId: string; @@ -45,12 +47,12 @@ const ExportAzureBYOKForm: React.FC = () => { const [form] = Form.useForm(); const [res, setRes] = useState(undefined); const [isLoading, setIsLoading] = useState(false); - const {idToken, serverUrl} = useAuth(); + const { idToken, serverUrl } = useAuth(); const responseRef = useRef(null); useEffect(() => { if (res && responseRef.current) { - responseRef.current.scrollIntoView({behavior: "smooth"}); + responseRef.current.scrollIntoView({ behavior: "smooth" }); } }, [res]); @@ -85,17 +87,13 @@ const ExportAzureBYOKForm: React.FC = () => { const tags = getTags(attributes); if (!tags.includes("azure")) { - setRes( - "The KEK is not an Azure Key Encryption Key: missing 'azure' tag. Import it using the Import KEK command." - ); + setRes("The KEK is not an Azure Key Encryption Key: missing 'azure' tag. Import it using the Import KEK command."); return; } const kidTag = tags.find((t: string) => t.startsWith("kid:")); if (!kidTag) { - setRes( - "The KEK is not an Azure Key Encryption Key: Azure kid not found. Import it using the Import KEK command." - ); + setRes("The KEK is not an Azure Key Encryption Key: Azure kid not found. Import it using the Import KEK command."); return; } @@ -178,42 +176,36 @@ const ExportAzureBYOKForm: React.FC = () => {

Export Azure BYOK File

-

Wrap a KMS key with an Azure Key Encryption Key (KEK) and generate a .byok file for Azure Key Vault - import.

+

Wrap a KMS key with an Azure Key Encryption Key (KEK) and generate a .byok file for Azure Key Vault import.

The KEK must be previously imported using the Import KEK command.

See:{" "} - + Azure BYOK Specification - +

- +

Key Identifiers (required)

- + - +
@@ -224,13 +216,12 @@ const ExportAzureBYOKForm: React.FC = () => { label="BYOK Filename" help="The filename for the exported .byok file. If not specified, it will be named .byok" > - + - @@ -246,5 +237,4 @@ const ExportAzureBYOKForm: React.FC = () => { ); }; - export default ExportAzureBYOKForm; diff --git a/ui/src/AzureImportKek.tsx b/ui/src/AzureImportKek.tsx index 82d1f48fd2..3fe63d8356 100644 --- a/ui/src/AzureImportKek.tsx +++ b/ui/src/AzureImportKek.tsx @@ -1,9 +1,10 @@ -import {UploadOutlined} from "@ant-design/icons"; -import {Button, Card, Form, Input, Space, Upload} from "antd"; -import React, {useEffect, useRef, useState} from "react"; -import {useAuth} from "./AuthContext"; -import {sendKmipRequest} from "./utils"; -import {import_ttlv_request, parse_import_ttlv_response} from "./wasm/pkg"; +import { UploadOutlined } from "@ant-design/icons"; +import { Button, Card, Form, Input, Space, Upload } from "antd"; +import React, { useEffect, useRef, useState } from "react"; +import { useAuth } from "./AuthContext"; +import { sendKmipRequest } from "./utils"; +import { import_ttlv_request, parse_import_ttlv_response } from "./wasm/pkg"; +import ExternalLink from "./components/ExternalLink"; interface ImportAzureKekFormData { kekFile: Uint8Array; @@ -19,12 +20,12 @@ const ImportAzureKekForm: React.FC = () => { const [form] = Form.useForm(); const [res, setRes] = useState(undefined); const [isLoading, setIsLoading] = useState(false); - const {idToken, serverUrl} = useAuth(); + const { idToken, serverUrl } = useAuth(); const responseRef = useRef(null); useEffect(() => { if (res && responseRef.current) { - responseRef.current.scrollIntoView({behavior: "smooth"}); + responseRef.current.scrollIntoView({ behavior: "smooth" }); } }, [res]); @@ -72,29 +73,20 @@ const ImportAzureKekForm: React.FC = () => {

The KEK should be exported from Azure in PKCS#8 PEM format.

See:{" "} - + Azure BYOK Specification - Generate KEK - +

- - + +

KEK File (required)

{ // For PEM files, we need to convert to bytes const encoder = new TextEncoder(); const bytes = encoder.encode(content); - form.setFieldsValue({kekFile: bytes}); + form.setFieldsValue({ kekFile: bytes }); } else if (content instanceof ArrayBuffer) { const bytes = new Uint8Array(content); - form.setFieldsValue({kekFile: bytes}); + form.setFieldsValue({ kekFile: bytes }); } }; reader.readAsText(file); @@ -117,7 +109,7 @@ const ImportAzureKekForm: React.FC = () => { }} maxCount={1} > - +
@@ -127,16 +119,16 @@ const ImportAzureKekForm: React.FC = () => { The Azure Key ID should be in the format: -
+
https://mypremiumkeyvault.vault.azure.net/keys/KEK-BYOK/664f5aa2797a4075b8e36ca4500636d8 } > - +
@@ -147,13 +139,12 @@ const ImportAzureKekForm: React.FC = () => { label="Key ID in KMS" help="The unique ID for this key in the KMS. A random UUID will be generated if not specified." > - + - diff --git a/ui/src/CseInfo.tsx b/ui/src/CseInfo.tsx index 1755e92a68..f1dfc51d8b 100644 --- a/ui/src/CseInfo.tsx +++ b/ui/src/CseInfo.tsx @@ -3,6 +3,7 @@ import React, { useCallback, useEffect, useState } from "react"; import { useAuth } from "./AuthContext"; import { getNoTTLVRequest, sendKmipRequest } from "./utils"; import { export_ttlv_request } from "./wasm/pkg/cosmian_kms_client_wasm"; +import ExternalLink from "./components/ExternalLink"; interface CseStatus { server_type: string; @@ -95,14 +96,9 @@ const CseInfo: React.FC = () => {

KACLS URL:{" "} - + {cseStatus.kacls_url} - +

diff --git a/ui/src/Sidebar.tsx b/ui/src/Sidebar.tsx index 7138305c17..854f216c1b 100644 --- a/ui/src/Sidebar.tsx +++ b/ui/src/Sidebar.tsx @@ -53,7 +53,7 @@ const Sidebar: React.FC = () => { const isCreateItem = item.key && (item.key.includes("/create") || item.key.includes("/create-") || item.label === "Create"); // Check if item is an Import item - const isImportItem = item.key && (item.key.includes("/import") || item.key.includes("/import-") || item.label === "Import"); + const isImportItem = 0; // TODO: restore this item.key && (item.key.includes("/import") || item.key.includes("/import-") || item.label === "Import"); // Handle disabled state based on access rights if (isCreateItem || isImportItem) { @@ -99,7 +99,9 @@ const Sidebar: React.FC = () => { .findIndex((key: string) => levelKeys[key] === levelKeys[currentOpenKey]); setStateOpenKeys( - openKeys.filter((_, index: number) => index !== repeatIndex).filter((key: string) => levelKeys[key] <= levelKeys[currentOpenKey]) + openKeys + .filter((_, index: number) => index !== repeatIndex) + .filter((key: string) => levelKeys[key] <= levelKeys[currentOpenKey]) ); } else { // close diff --git a/ui/src/components/ExternalLink.tsx b/ui/src/components/ExternalLink.tsx new file mode 100644 index 0000000000..21ae306a06 --- /dev/null +++ b/ui/src/components/ExternalLink.tsx @@ -0,0 +1,17 @@ +import React from "react"; + +interface ExternalLinkProps { + href: string; + children: React.ReactNode; + className?: string; +} + +const ExternalLink: React.FC = ({ href, children, className = "text-blue-600 hover:underline" }) => { + return ( + + {children} + + ); +}; + +export default ExternalLink; diff --git a/ui/src/menuItems.tsx b/ui/src/menuItems.tsx index edf92679cb..fcefa952fb 100644 --- a/ui/src/menuItems.tsx +++ b/ui/src/menuItems.tsx @@ -17,7 +17,7 @@ const baseMenu: MenuItem[] = [ { key: "locate", label: "Locate", - icon: , + icon: , }, { key: "sym", @@ -28,15 +28,15 @@ const baseMenu: MenuItem[] = [ key: "sym/keys", label: "Keys", children: [ - {key: "sym/keys/create", label: "Create"}, - {key: "sym/keys/export", label: "Export"}, - {key: "sym/keys/import", label: "Import"}, - {key: "sym/keys/revoke", label: "Revoke"}, - {key: "sym/keys/destroy", label: "Destroy"}, + { key: "sym/keys/create", label: "Create" }, + { key: "sym/keys/export", label: "Export" }, + { key: "sym/keys/import", label: "Import" }, + { key: "sym/keys/revoke", label: "Revoke" }, + { key: "sym/keys/destroy", label: "Destroy" }, ], }, - {key: "sym/encrypt", label: "Encrypt"}, - {key: "sym/decrypt", label: "Decrypt"}, + { key: "sym/encrypt", label: "Encrypt" }, + { key: "sym/decrypt", label: "Decrypt" }, ], }, { @@ -48,17 +48,17 @@ const baseMenu: MenuItem[] = [ key: "rsa/keys", label: "Keys", children: [ - {key: "rsa/keys/create", label: "Create"}, - {key: "rsa/keys/export", label: "Export"}, - {key: "rsa/keys/import", label: "Import"}, - {key: "rsa/keys/revoke", label: "Revoke"}, - {key: "rsa/keys/destroy", label: "Destroy"}, + { key: "rsa/keys/create", label: "Create" }, + { key: "rsa/keys/export", label: "Export" }, + { key: "rsa/keys/import", label: "Import" }, + { key: "rsa/keys/revoke", label: "Revoke" }, + { key: "rsa/keys/destroy", label: "Destroy" }, ], }, - {key: "rsa/encrypt", label: "Encrypt"}, - {key: "rsa/decrypt", label: "Decrypt"}, - {key: "rsa/sign", label: "Sign"}, - {key: "rsa/verify", label: "Verify"}, + { key: "rsa/encrypt", label: "Encrypt" }, + { key: "rsa/decrypt", label: "Decrypt" }, + { key: "rsa/sign", label: "Sign" }, + { key: "rsa/verify", label: "Verify" }, ], }, { @@ -70,17 +70,17 @@ const baseMenu: MenuItem[] = [ key: "ec/keys", label: "Keys", children: [ - {key: "ec/keys/create", label: "Create"}, - {key: "ec/keys/export", label: "Export"}, - {key: "ec/keys/import", label: "Import"}, - {key: "ec/keys/revoke", label: "Revoke"}, - {key: "ec/keys/destroy", label: "Destroy"}, + { key: "ec/keys/create", label: "Create" }, + { key: "ec/keys/export", label: "Export" }, + { key: "ec/keys/import", label: "Import" }, + { key: "ec/keys/revoke", label: "Revoke" }, + { key: "ec/keys/destroy", label: "Destroy" }, ], }, - {key: "ec/encrypt", label: "Encrypt"}, - {key: "ec/decrypt", label: "Decrypt"}, - {key: "ec/sign", label: "Sign"}, - {key: "ec/verify", label: "Verify"}, + { key: "ec/encrypt", label: "Encrypt" }, + { key: "ec/decrypt", label: "Decrypt" }, + { key: "ec/sign", label: "Sign" }, + { key: "ec/verify", label: "Verify" }, ], }, // Covercrypt section appended below @@ -89,11 +89,11 @@ const baseMenu: MenuItem[] = [ label: "Secret Data", collapsedlabel: "SD", children: [ - {key: "secret-data/create", label: "Create"}, - {key: "secret-data/export", label: "Export"}, - {key: "secret-data/import", label: "Import"}, - {key: "secret-data/revoke", label: "Revoke"}, - {key: "secret-data/destroy", label: "Destroy"}, + { key: "secret-data/create", label: "Create" }, + { key: "secret-data/export", label: "Export" }, + { key: "secret-data/import", label: "Import" }, + { key: "secret-data/revoke", label: "Revoke" }, + { key: "secret-data/destroy", label: "Destroy" }, ], }, { @@ -101,54 +101,54 @@ const baseMenu: MenuItem[] = [ label: "Opaque Object", collapsedlabel: "Opaque", children: [ - {key: "opaque-object/create", label: "Create"}, - {key: "opaque-object/export", label: "Export"}, - {key: "opaque-object/import", label: "Import"}, - {key: "opaque-object/revoke", label: "Revoke"}, - {key: "opaque-object/destroy", label: "Destroy"}, + { key: "opaque-object/create", label: "Create" }, + { key: "opaque-object/export", label: "Export" }, + { key: "opaque-object/import", label: "Import" }, + { key: "opaque-object/revoke", label: "Revoke" }, + { key: "opaque-object/destroy", label: "Destroy" }, ], }, { key: "certificates", label: "Certificates", - icon: , + icon: , children: [ { key: "certificates/certs", label: "Certs", children: [ - {key: "certificates/certs/certify", label: "Certify"}, - {key: "certificates/certs/export", label: "Export"}, - {key: "certificates/certs/import", label: "Import"}, - {key: "certificates/certs/revoke", label: "Revoke"}, - {key: "certificates/certs/destroy", label: "Destroy"}, - {key: "certificates/certs/validate", label: "Validate"}, + { key: "certificates/certs/certify", label: "Certify" }, + { key: "certificates/certs/export", label: "Export" }, + { key: "certificates/certs/import", label: "Import" }, + { key: "certificates/certs/revoke", label: "Revoke" }, + { key: "certificates/certs/destroy", label: "Destroy" }, + { key: "certificates/certs/validate", label: "Validate" }, ], }, - {key: "certificates/encrypt", label: "Encrypt"}, - {key: "certificates/decrypt", label: "Decrypt"}, + { key: "certificates/encrypt", label: "Encrypt" }, + { key: "certificates/decrypt", label: "Decrypt" }, ], }, { key: "attributes", label: "Attributes", - icon: , + icon: , children: [ - {key: "attributes/get", label: "Get"}, - {key: "attributes/set", label: "Set"}, - {key: "attributes/delete", label: "Delete"}, + { key: "attributes/get", label: "Get" }, + { key: "attributes/set", label: "Set" }, + { key: "attributes/delete", label: "Delete" }, ], }, { key: "access-rights", label: "Access Rights", - icon: , + icon: , children: [ - {key: "access-rights/grant", label: "Grant"}, - {key: "access-rights/revoke", label: "Revoke"}, - {key: "access-rights/list", label: "List"}, - {key: "access-rights/owned", label: "Owned"}, - {key: "access-rights/obtained", label: "Obtained"}, + { key: "access-rights/grant", label: "Grant" }, + { key: "access-rights/revoke", label: "Revoke" }, + { key: "access-rights/list", label: "List" }, + { key: "access-rights/owned", label: "Owned" }, + { key: "access-rights/obtained", label: "Obtained" }, ], }, { @@ -156,8 +156,17 @@ const baseMenu: MenuItem[] = [ label: "Azure", collapsedlabel: "Azure", children: [ - {key: "azure/import-kek", label: "Import KEK"}, - {key: "azure/export-byok", label: "Export BYOK"}, + { key: "azure/import-kek", label: "Import KEK" }, + { key: "azure/export-byok", label: "Export BYOK" }, + ], + }, + { + key: "aws", + label: "AWS", + collapsedlabel: "AWS", + children: [ + { key: "aws/import-kek", label: "Import KEK" }, + { key: "aws/export-byok", label: "Export BYOK" }, ], }, { From a533b05d74e98051291d25d95ff4a3eef0702eb3 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Fri, 30 Jan 2026 15:19:54 +0100 Subject: [PATCH 09/16] feat: ui is good --- ui/src/AwsExportKeyMaterial.tsx | 60 ++++++++++----------------------- ui/src/AwsImportKek.tsx | 28 ++++++++------- ui/src/AzureExportByok.tsx | 12 ++++--- 3 files changed, 41 insertions(+), 59 deletions(-) diff --git a/ui/src/AwsExportKeyMaterial.tsx b/ui/src/AwsExportKeyMaterial.tsx index 7ba77ad55b..e4c97359e2 100644 --- a/ui/src/AwsExportKeyMaterial.tsx +++ b/ui/src/AwsExportKeyMaterial.tsx @@ -1,14 +1,8 @@ -import { Button, Card, Form, Input, Space, Upload } from "antd"; -import { UploadOutlined } from "@ant-design/icons"; +import { Button, Card, Form, Input, Space } from "antd"; import React, { useEffect, useRef, useState } from "react"; import { useAuth } from "./AuthContext"; import { downloadFile, sendKmipRequest } from "./utils"; -import { - export_ttlv_request, - get_attributes_ttlv_request, - parse_export_ttlv_response, - parse_get_attributes_ttlv_response, -} from "./wasm/pkg/cosmian_kms_client_wasm"; +import * as wasm from "./wasm/pkg/cosmian_kms_client_wasm"; import ExternalLink from "./components/ExternalLink"; const getTags = (attributes: Map): string[] => { @@ -40,7 +34,7 @@ const getTags = (attributes: Map): string[] => { interface AwsExportKeyMaterialFormData { wrappedKeyId: string; kekId: string; - tokenFile?: Uint8Array; + tokenFile?: string; byokFile?: string; } @@ -62,7 +56,7 @@ const AwsExportKeyMaterialForm: React.FC = () => { setRes(undefined); try { // Step 1: Get KEK attributes to retrieve AWS tags - const getAttrsRequest = get_attributes_ttlv_request(values.kekId); + const getAttrsRequest = wasm.get_attributes_ttlv_request_with_options(values.kekId, true); const attrsResultStr = await sendKmipRequest(getAttrsRequest, idToken, serverUrl); if (!attrsResultStr) { @@ -81,7 +75,7 @@ const AwsExportKeyMaterialForm: React.FC = () => { "public_key_id", "private_key_id", ]; - const attributes = await parse_get_attributes_ttlv_response(attrsResultStr, allAttributes); + const attributes = await wasm.parse_get_attributes_ttlv_response(attrsResultStr, allAttributes); const tags = getTags(attributes); @@ -101,12 +95,12 @@ const AwsExportKeyMaterialForm: React.FC = () => { const wrappingAlgorithm = wrappingAlgTag.substring(19); // Step 2: Export the wrapped key using the KEK - const exportRequest = export_ttlv_request( + const exportRequest = wasm.export_ttlv_request( values.wrappedKeyId, // Key ID to wrap false, // Unwrap flag - undefined, // Key format (let server decide) + "raw", // Key format (raw bytes) values.kekId, // Wrapping key ID - wrappingAlgorithm // Wrapping algorithm + wrappingAlgorithm, // Wrapping algorithm ); const exportResultStr = await sendKmipRequest(exportRequest, idToken, serverUrl); @@ -116,7 +110,7 @@ const AwsExportKeyMaterialForm: React.FC = () => { return; } - const wrappedKeyData = await parse_export_ttlv_response(exportResultStr, undefined); + const wrappedKeyData = await wasm.parse_export_ttlv_response(exportResultStr, "raw"); let wrappedKeyBytes: Uint8Array; if (wrappedKeyData instanceof Uint8Array) { @@ -138,15 +132,14 @@ const AwsExportKeyMaterialForm: React.FC = () => { downloadFile(wrappedKeyBytes, values.byokFile, "application/octet-stream"); // Build AWS CLI command - const tokenPath = values.tokenFile ? "" : ""; const awsCommand = `aws kms import-key-material \\ --key-id ${keyArn || ""} \\ --encrypted-key-material fileb://${values.byokFile} \\ - --import-token fileb://${tokenPath} \\ + --import-token fileb://${values.tokenFile || ""} \\ --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE`; setRes( - `The encrypted key material (${wrappedKeyBytes.length} bytes) was successfully written to ${values.byokFile} for key ${values.wrappedKeyId}.\n\nTo import into AWS KMS using the CLI, run:\n\n${awsCommand}` + `The encrypted key material (${wrappedKeyBytes.length} bytes) was successfully written to ${values.byokFile} for key ${values.wrappedKeyId}.\n\nTo import into AWS KMS using the CLI, you can run:\n\n${awsCommand}`, ); } else { // Display as base64 @@ -196,39 +189,20 @@ const AwsExportKeyMaterialForm: React.FC = () => { -

Import Token (Optional)

+

Output Options (Optional)

- { - const reader = new FileReader(); - reader.onload = (e) => { - const content = e.target?.result; - if (content instanceof ArrayBuffer) { - const bytes = new Uint8Array(content); - form.setFieldsValue({ tokenFile: bytes }); - } - }; - reader.readAsArrayBuffer(file); - return false; - }} - maxCount={1} - > - - + -
- -

Output Options

- +
diff --git a/ui/src/AwsImportKek.tsx b/ui/src/AwsImportKek.tsx index 335daa3cdd..d3054eb3eb 100644 --- a/ui/src/AwsImportKek.tsx +++ b/ui/src/AwsImportKek.tsx @@ -3,7 +3,7 @@ import { Button, Card, Form, Input, Select, Space, Upload, Tabs } from "antd"; import React, { useEffect, useRef, useState } from "react"; import { useAuth } from "./AuthContext"; import { sendKmipRequest } from "./utils"; -import { import_ttlv_request, parse_import_ttlv_response } from "./wasm/pkg"; +import * as wasm from "./wasm/pkg"; import ExternalLink from "./components/ExternalLink"; interface ImportAwsKekFormData { @@ -56,7 +56,7 @@ const ImportAwsKekForm: React.FC = () => { if (inputType === "file" && values.kekFile) { kekData = values.kekFile; - kekFormat = "pkcs8"; + kekFormat = "pkcs8-pub"; } else if (inputType === "base64" && values.kekBase64) { // Decode base64 to Uint8Array const binary = atob(values.kekBase64.replace(/\s/g, "")); @@ -65,30 +65,30 @@ const ImportAwsKekForm: React.FC = () => { bytes[i] = binary.charCodeAt(i); } kekData = bytes; - kekFormat = "pkcs8"; + kekFormat = "pkcs8-pub"; } else { setRes("Please provide the KEK as a file or base64 string."); setIsLoading(false); return; } - const request = import_ttlv_request( + const request = wasm.import_ttlv_request( values.keyId || null, // Custom key ID kekData, // Key bytes kekFormat, // Format type - undefined, // Public key ID - undefined, // Private key ID - undefined, // Certificate ID + null, // Public key ID + null, // Private key ID + null, // Certificate ID false, // Unwrap flag true, // Replace existing - tags, // Tags array + tags, keyUsage, // Key usage - undefined // Wrapping key ID + null, // Wrapping key ID ); const result_str = await sendKmipRequest(request, idToken, serverUrl); if (result_str) { - const result: KeyImportResponse = await parse_import_ttlv_response(result_str); + const result: KeyImportResponse = await wasm.parse_import_ttlv_response(result_str); setRes(`AWS KEK has been successfully imported - Key ID: ${result.UniqueIdentifier}`); } } catch (e) { @@ -194,8 +194,12 @@ const ImportAwsKekForm: React.FC = () => {

AWS Key ARN

- - + +
diff --git a/ui/src/AzureExportByok.tsx b/ui/src/AzureExportByok.tsx index 140f7dd0da..3f3a6e345a 100644 --- a/ui/src/AzureExportByok.tsx +++ b/ui/src/AzureExportByok.tsx @@ -8,7 +8,6 @@ import { parse_export_ttlv_response, parse_get_attributes_ttlv_response, } from "./wasm/pkg"; -import ExternalLink from "./components/ExternalLink"; const getTags = (attributes: Map): string[] => { const vendor_attributes: Array> | undefined = attributes.get("vendor_attributes"); @@ -108,7 +107,7 @@ const ExportAzureBYOKForm: React.FC = () => { true, // unwrap - export the key in wrapped form "raw", // key_format - raw bytes values.kekId, // wrap_key_id - the KEK to wrap with - "rsa-aes-key-wrap-sha1" // wrapping_algorithm + "rsa-aes-key-wrap-sha1", // wrapping_algorithm ); const exportResultStr = await sendKmipRequest(exportRequest, idToken, serverUrl); @@ -180,9 +179,14 @@ const ExportAzureBYOKForm: React.FC = () => {

The KEK must be previously imported using the Import KEK command.

See:{" "} - + Azure BYOK Specification - +

From d361ccd0ddc19131ff1f0941db51200ba4d9ce7a Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Fri, 30 Jan 2026 19:23:41 +0100 Subject: [PATCH 10/16] feat: some last fixes --- .../src/tests/kms/aws/integration_tests.rs | 39 ++- crate/cli/src/tests/kms/aws/unwrap_utils.rs | 309 ++++-------------- crate/cli/src/tests/kms/azure/mod.rs | 86 +++-- crate/cli/src/tests/kms/shared/mod.rs | 1 + .../cli/src/tests/kms/shared/openssl_utils.rs | 186 +++++++++++ 5 files changed, 309 insertions(+), 312 deletions(-) create mode 100644 crate/cli/src/tests/kms/shared/openssl_utils.rs diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs index 0602fe3da0..62f1994639 100644 --- a/crate/cli/src/tests/kms/aws/integration_tests.rs +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -12,34 +12,33 @@ //! //! [AWS KMS Docs](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html) -#![allow(unused_imports, clippy::unwrap_used, clippy::as_conversions)] -use crate::actions::kms::aws::byok::export_key_material::ExportByokAction; -use crate::actions::kms::aws::byok::import_kek::ImportKekAction; -use crate::actions::kms::aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm; -use crate::actions::kms::elliptic_curves::keys::create_key_pair::CreateKeyPairAction as CreateEccKeyPairAction; -use crate::actions::kms::rsa::keys::create_key_pair::CreateKeyPairAction as CreateRsaKeyPairAction; -use crate::actions::kms::shared::ImportSecretDataOrKeyAction; -use crate::actions::kms::symmetric::keys::create_key::CreateKeyAction; -use crate::error::result::KmsCliResult; -use crate::tests::kms::aws::unwrap_utils::{ - generate_rsa_keypair, rsa_aes_key_wrap_sha1_unwrap, rsa_aes_key_wrap_sha256_unwrap, - rsaes_oaep_sha1_unwrap, rsaes_oaep_sha256_unwrap, -}; use base64::Engine; -use cosmian_kmip::kmip_2_1::kmip_types::CryptographicParameters; -use cosmian_kms_client::reexport::cosmian_kms_client_utils::create_utils::SymmetricAlgorithm; -use cosmian_kms_client::reexport::cosmian_kms_client_utils::import_utils::ImportKeyFormat; +use cosmian_kms_client::reexport::cosmian_kms_client_utils::{ + create_utils::SymmetricAlgorithm, import_utils::ImportKeyFormat, +}; use cosmian_kms_client::{ExportObjectParams, export_object}; use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; use cosmian_logger::log_init; -use openssl::cipher::{Cipher, CipherRef}; -use openssl::pkey::{PKey, Private, Public}; -use openssl::rsa::{Padding, Rsa}; -use openssl::{encrypt::Decrypter, hash::MessageDigest}; use sha2::digest::crypto_common::rand_core::{RngCore, SeedableRng}; use test_kms_server::start_default_test_kms_server; use uuid::Uuid; +use crate::actions::kms::{ + aws::byok::{ + export_key_material::ExportByokAction, import_kek::ImportKekAction, + wrapping_algorithms::AwsKmsWrappingAlgorithm, + }, + elliptic_curves::keys::create_key_pair::CreateKeyPairAction as CreateEccKeyPairAction, + rsa::keys::create_key_pair::CreateKeyPairAction as CreateRsaKeyPairAction, + shared::ImportSecretDataOrKeyAction, + symmetric::keys::create_key::CreateKeyAction, +}; +use crate::error::result::KmsCliResult; +use crate::tests::kms::shared::openssl_utils::{ + generate_rsa_keypair, rsa_aes_key_wrap_sha1_unwrap, rsa_aes_key_wrap_sha256_unwrap, + rsaes_oaep_sha1_unwrap, rsaes_oaep_sha256_unwrap, +}; + // Test constants from AWS KMS GetParametersForImport response const TEST_KEY_ARN: &str = "arn:aws:kms:eu-west-3:447182645454:key/e8518bca-e1d0-4519-a915-d80da8e8f38a"; diff --git a/crate/cli/src/tests/kms/aws/unwrap_utils.rs b/crate/cli/src/tests/kms/aws/unwrap_utils.rs index 952431246f..3200320a42 100644 --- a/crate/cli/src/tests/kms/aws/unwrap_utils.rs +++ b/crate/cli/src/tests/kms/aws/unwrap_utils.rs @@ -1,243 +1,66 @@ -//! AWS KMS is a managed service that can't be run locally for tests. By its design, private key materials never leave the AWS HSM, which makes it even harder to make tests that do not involve -//! actual calls to external infrastructure. Therefore, to verify the correct behavior of the AWS KMS BYOK import and export commands, we will unwrap using openssl. -//! As long as we can trust AWS KMS to behave correctly, we can consider these functions viable to verify the unwrapping process. -//! -//! If ever E2E tests with AWS KMS are to be implemented, simply edit the calls to the functions below to calls to AWS KMS `import-key-material` command. -use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; -use openssl::cipher::{Cipher, CipherRef}; -use openssl::cipher_ctx::CipherCtx; -use openssl::{encrypt::Decrypter, hash::MessageDigest}; -use sha2::digest::crypto_common::rand_core::{RngCore, SeedableRng}; - -use openssl::pkey::{PKey, Private, Public}; -use openssl::rsa::{Padding, Rsa}; - -/// Generate RSA keypair using openssl (random size from 2048, 3072, or 4096 bits) -/// This replaces the AWS KMS keypair generation for testing purposes. -/// The aws API equivalent command (on cli) is: -/// ```sh -/// aws kms get-parameters-for-import \ -/// --key-id \ -/// --wrapping-algorithm RSAES_OAEP_SHA_256 \ -/// --wrapping-key-spec RSA_3072 # or RSA_2048 or RSA_4096 -/// ``` -pub(crate) fn generate_rsa_keypair() --> Result<(PKey, PKey), Box> { - // Randomly select key size from AWS-supported sizes - let key_sizes = [2048, 3072, 4096]; - let mut rng = CsRng::from_entropy(); - let bits = key_sizes[(rng.next_u32() as usize) % key_sizes.len()]; - - let rsa = Rsa::generate(bits)?; - - let private_key = PKey::from_rsa(rsa.clone())?; - let public_key = PKey::from_rsa(Rsa::from_public_components( - rsa.n().to_owned()?, - rsa.e().to_owned()?, - )?)?; - - Ok((private_key, public_key)) -} - -/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-256 -/// This replaces the AWS KMS Import key material step for testing purposes. -/// The aws API equivalent command (on cli) is: -/// ```sh -/// aws kms import-key-material --key-id \ -/// --encrypted-key-material fileb:// \ -/// --import-token fileb:// \ -/// --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE -/// ``` -pub(crate) fn rsaes_oaep_sha256_unwrap( - ciphertext: &[u8], - private_key: &PKey, -) -> Result, Box> { - let mut decrypter = Decrypter::new(private_key)?; - - // Set OAEP padding with SHA-256 - decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; - decrypter.set_rsa_oaep_md(MessageDigest::sha256())?; - decrypter.set_rsa_mgf1_md(MessageDigest::sha256())?; - - // Calculate buffer size - let buffer_len = decrypter.decrypt_len(ciphertext)?; - let mut decrypted = vec![0_u8; buffer_len]; - - // Decrypt - let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; - decrypted.truncate(decrypted_len); - - Ok(decrypted) -} - -/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-1 -/// This replaces the AWS KMS Import key material step for testing purposes. -pub(crate) fn rsaes_oaep_sha1_unwrap( - ciphertext: &[u8], - private_key: &PKey, -) -> Result, Box> { - let mut decrypter = Decrypter::new(private_key)?; - - // Set OAEP padding with SHA-1 - decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; - decrypter.set_rsa_oaep_md(MessageDigest::sha1())?; - decrypter.set_rsa_mgf1_md(MessageDigest::sha1())?; - - // Calculate buffer size - let buffer_len = decrypter.decrypt_len(ciphertext)?; - let mut decrypted = vec![0_u8; buffer_len]; - - // Decrypt - let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; - decrypted.truncate(decrypted_len); - - Ok(decrypted) -} - -/// AES Key Unwrap with Padding (RFC 5649) using OpenSSL -fn aes_key_unwrap(ciphertext: &[u8], kek: &[u8]) -> Result, Box> { - const AES_WRAP_BLOCK_SIZE: usize = 8; - - // RFC 5649 requires ciphertext to be at least 16 bytes and a multiple of 8 bytes - if ciphertext.len() < 16 || !ciphertext.len().is_multiple_of(AES_WRAP_BLOCK_SIZE) { - return Err("Invalid ciphertext size for AES Key Unwrap".into()); - } - - // Select cipher based on KEK size - let cipher: &CipherRef = match kek.len() { - 16 => Cipher::aes_128_wrap_pad(), - 24 => Cipher::aes_192_wrap_pad(), // TODO delete those after fixingh the bug - 32 => Cipher::aes_256_wrap_pad(), - _ => { - return Err(format!( - "Invalid KEK size: {} bytes. Expected 16, 24, or 32", - kek.len() - ) - .into()); - } - }; - let mut ctx = CipherCtx::new()?; - ctx.decrypt_init(Some(cipher), Some(kek), None)?; - - // Allocate output buffer with extra space (defensive maneuver - the final result will be truncated to the actual size) - let mut plaintext = vec![0_u8; ciphertext.len() + 16]; - - let mut written = ctx.cipher_update(ciphertext, Some(&mut plaintext))?; - written += ctx.cipher_final(&mut plaintext[written..])?; - - // Truncate to actual output size - plaintext.truncate(written); - - Ok(plaintext) -} - -/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_1` -/// This is a two-step unwrapping process: -/// 1. RSA-OAEP with SHA-1 unwraps the ephemeral AES key -/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material -pub(crate) fn rsa_aes_key_wrap_sha1_unwrap( - ciphertext: &[u8], - private_key: &PKey, -) -> Result, Box> { - // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] - // RSA-encrypted part size equals the RSA key size in bytes - let rsa_key_size = private_key.size(); - - if ciphertext.len() <= rsa_key_size { - return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); - } - - // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material - let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); - - // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-1 - let aes_key = rsaes_oaep_sha1_unwrap(encrypted_aes_key, private_key)?; - - // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) - let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; - Ok(unwrapped_key) -} - -/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_256` -/// This is a two-step unwrapping process: -/// 1. RSA-OAEP with SHA-256 unwraps the ephemeral AES key -/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material -pub(crate) fn rsa_aes_key_wrap_sha256_unwrap( - ciphertext: &[u8], - private_key: &PKey, -) -> Result, Box> { - // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] - // RSA-encrypted part size equals the RSA key size in bytes - let rsa_key_size = private_key.size(); - - if ciphertext.len() <= rsa_key_size { - return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); - } - - // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material - let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); - - // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-256 - let aes_key = rsaes_oaep_sha256_unwrap(encrypted_aes_key, private_key)?; - - // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) - let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; - - Ok(unwrapped_key) -} - -/// Generate SM2 keypair using OpenSSL -/// This replaces the chinese AWS KMS keypair generation for testing purposes. -#[cfg(feature = "non-fips")] -pub(crate) fn generate_sm2_keypair() --> Result<(PKey, PKey), Box> { - use openssl::ec::{EcGroup, EcKey}; - use openssl::nid::Nid; - - let group = EcGroup::from_curve_name(Nid::SM2)?; - - // Generate EC key on SM2 curve - let ec_key = EcKey::generate(&group)?; - - // Convert to PKey - let private_key = PKey::from_ec_key(ec_key.clone())?; - - // Extract public key - let public_ec_key = EcKey::from_public_key(&group, ec_key.public_key())?; - let public_key = PKey::from_ec_key(public_ec_key)?; - - Ok((private_key, public_key)) -} - -/// Unwrap (decrypt) the given ciphertext using SM2PKE (SM2 Public Key Encryption) -/// SM2PKE is a Chinese national standard encryption algorithm used in AWS China regions. -/// This replaces the AWS KMS Import key material step for testing purposes. -/// -/// Note: SM2 support requires OpenSSL 1.1.1+ compiled with SM2 support. -/// This is typically available in non-FIPS mode only. -#[cfg(feature = "non-fips")] -pub(crate) fn sm2pke_unwrap( - ciphertext: &[u8], - private_key: &PKey, -) -> Result, Box> { - // Verify the key is an SM2 key - - use openssl::pkey_ctx::PkeyCtx; - if private_key.id() != openssl::pkey::Id::SM2 { - return Err("Private key is not an SM2 key".into()); - } - - // Create decryption context - let mut ctx = PkeyCtx::new(private_key)?; - ctx.decrypt_init()?; - - // Calculate buffer size for decryption - let buffer_len = ctx.decrypt(ciphertext, None)?; - let mut plaintext = vec![0_u8; buffer_len]; - - // Perform decryption - let plaintext_len = ctx.decrypt(ciphertext, Some(&mut plaintext))?; - plaintext.truncate(plaintext_len); - - Ok(plaintext) -} +// //! AWS KMS is a managed service that can't be run locally for tests. By its design, private key materials never leave the AWS HSM, which makes it even harder to make tests that do not involve +// //! actual calls to external infrastructure. Therefore, to verify the correct behavior of the AWS KMS BYOK import and export commands, we will unwrap using openssl. +// //! As long as we can trust AWS KMS to behave correctly, we can consider these functions viable to verify the unwrapping process. +// //! +// //! If ever E2E tests with AWS KMS are to be implemented, simply edit the calls to the functions below to calls to AWS KMS `import-key-material` command. +// use openssl::cipher::{Cipher, CipherRef}; +// use openssl::cipher_ctx::CipherCtx; +// use openssl::pkey::{PKey, Private, Public}; +// use openssl::rsa::Padding; +// use openssl::{encrypt::Decrypter, hash::MessageDigest}; + +// /// Generate SM2 keypair using OpenSSL +// /// This replaces the chinese AWS KMS keypair generation for testing purposes. +// #[cfg(feature = "non-fips")] +// pub(crate) fn generate_sm2_keypair() +// -> Result<(PKey, PKey), Box> { +// use openssl::ec::{EcGroup, EcKey}; +// use openssl::nid::Nid; + +// let group = EcGroup::from_curve_name(Nid::SM2)?; + +// // Generate EC key on SM2 curve +// let ec_key = EcKey::generate(&group)?; + +// // Convert to PKey +// let private_key = PKey::from_ec_key(ec_key.clone())?; + +// // Extract public key +// let public_ec_key = EcKey::from_public_key(&group, ec_key.public_key())?; +// let public_key = PKey::from_ec_key(public_ec_key)?; + +// Ok((private_key, public_key)) +// } + +// /// Unwrap (decrypt) the given ciphertext using SM2PKE (SM2 Public Key Encryption) +// /// SM2PKE is a Chinese national standard encryption algorithm used in AWS China regions. +// /// This replaces the AWS KMS Import key material step for testing purposes. +// /// +// /// Note: SM2 support requires OpenSSL 1.1.1+ compiled with SM2 support. +// /// This is typically available in non-FIPS mode only. +// #[cfg(feature = "non-fips")] +// pub(crate) fn sm2pke_unwrap( +// ciphertext: &[u8], +// private_key: &PKey, +// ) -> Result, Box> { +// // Verify the key is an SM2 key + +// use openssl::pkey_ctx::PkeyCtx; +// if private_key.id() != openssl::pkey::Id::SM2 { +// return Err("Private key is not an SM2 key".into()); +// } + +// // Create decryption context +// let mut ctx = PkeyCtx::new(private_key)?; +// ctx.decrypt_init()?; + +// // Calculate buffer size for decryption +// let buffer_len = ctx.decrypt(ciphertext, None)?; +// let mut plaintext = vec![0_u8; buffer_len]; + +// // Perform decryption +// let plaintext_len = ctx.decrypt(ciphertext, Some(&mut plaintext))?; +// plaintext.truncate(plaintext_len); + +// Ok(plaintext) +// } diff --git a/crate/cli/src/tests/kms/azure/mod.rs b/crate/cli/src/tests/kms/azure/mod.rs index bd1a5999bf..da0c65b446 100644 --- a/crate/cli/src/tests/kms/azure/mod.rs +++ b/crate/cli/src/tests/kms/azure/mod.rs @@ -1,55 +1,16 @@ -use std::fs; - -use openssl::{ - pkey::{PKey, Private, Public}, - rsa::Rsa, -}; -use tempfile::TempDir; -use test_kms_server::start_default_test_kms_server; - use crate::{ actions::kms::{ azure::byok::{ExportByokAction, ImportKekAction}, symmetric::keys::create_key::CreateKeyAction, }, error::{KmsCliError, result::KmsCliResult}, + tests::kms::shared::openssl_utils::{generate_rsa_keypair, rsa_aes_key_wrap_sha1_unwrap}, }; - -/// Generate RSA keypair using OpenSSL (random size from 2048, 3072, or 4096 bits). -/// -/// This mirrors AWS KMS "get-parameters-for-import" wrapping key specs and keeps -/// the test independent from KMS RSA key generation/export actions. -fn generate_rsa_keypair() -> KmsCliResult<(PKey, PKey)> { - let key_sizes = [2048_u32, 3072_u32, 4096_u32]; - // Avoid introducing new RNG deps in the CLI crate's dev-deps. - let bits = key_sizes[std::time::SystemTime::now() - .duration_since(std::time::UNIX_EPOCH) - .map(|d| { - let len_u32 = u32::try_from(key_sizes.len()).unwrap_or(1); - let idx_u32 = d.subsec_nanos() % len_u32; - usize::try_from(idx_u32).unwrap_or(0) - }) - .unwrap_or(0)]; - - let rsa = Rsa::generate(bits) - .map_err(|e| KmsCliError::Default(format!("Failed to generate RSA key: {e}")))?; - let private_key = PKey::from_rsa(rsa.clone()) - .map_err(|e| KmsCliError::Default(format!("Failed to build private key: {e}")))?; - let public_key = PKey::from_rsa( - Rsa::from_public_components( - rsa.n() - .to_owned() - .map_err(|e| KmsCliError::Default(format!("Failed to clone modulus: {e}")))?, - rsa.e() - .to_owned() - .map_err(|e| KmsCliError::Default(format!("Failed to clone exponent: {e}")))?, - ) - .map_err(|e| KmsCliError::Default(format!("Failed to build public RSA key: {e}")))?, - ) - .map_err(|e| KmsCliError::Default(format!("Failed to build public key: {e}")))?; - - Ok((private_key, public_key)) -} +use base64::Engine; +use cosmian_kms_client::{ExportObjectParams, export_object}; +use std::fs; +use tempfile::TempDir; +use test_kms_server::start_default_test_kms_server; #[tokio::test] async fn test_azure_byok_import_kek_then_export_byok() -> KmsCliResult<()> { @@ -61,7 +22,7 @@ async fn test_azure_byok_import_kek_then_export_byok() -> KmsCliResult<()> { let kek_pem_path = tmp_dir.path().join("kek_pub.pem"); // 2. Generate an RSA key pair locally, write the public key in PKCS#8 PEM, then import it as Azure KEK - let (_private_key, public_key) = generate_rsa_keypair()?; + let (private_key, public_key) = generate_rsa_keypair()?; let public_key_pem = public_key .public_key_to_pem() .map_err(|e| KmsCliError::Default(format!("Failed to serialize public key PEM: {e}")))?; @@ -88,6 +49,10 @@ async fn test_azure_byok_import_kek_then_export_byok() -> KmsCliResult<()> { .run(kms_client.clone()) .await? .to_string(); + // for later verification + let (_, cosmian_key_material, _) = + export_object(&kms_client, &sym_key_id, ExportObjectParams::default()).await?; + let original_key_bytes = cosmian_key_material.key_block()?.key_bytes()?; let byok_file = tmp_dir.path().join("out.byok"); @@ -99,10 +64,33 @@ async fn test_azure_byok_import_kek_then_export_byok() -> KmsCliResult<()> { .run(kms_client) .await?; + // 4. Post-export verifications + // Assert byok file written - let contents = std::fs::read_to_string(&byok_file)?; - assert!(contents.contains("\"ciphertext\"")); - assert!(contents.contains("\"kid\"")); + let byok_contents = std::fs::read_to_string(&byok_file)?; + assert!(byok_contents.contains("\"ciphertext\"")); + assert!(byok_contents.contains("\"kid\"")); + + // Unwrap and verify the key matches original (via helper function) + let json: serde_json::Value = serde_json::from_str(&byok_contents)?; + let ciphertext_b64url = json["ciphertext"] + .as_str() + .ok_or("Missing 'ciphertext' field in BYOK JSON") + .unwrap(); + + // Decode BASE64URL first + let ciphertext = base64::engine::general_purpose::URL_SAFE_NO_PAD + .decode(ciphertext_b64url) + .map_err(|e| KmsCliError::Default(format!("Failed to decode BASE64URL: {e}")))?; + + // now unwrap + let unwrapped_key_bytes = rsa_aes_key_wrap_sha1_unwrap(&ciphertext, &private_key).unwrap(); + + assert_eq!( + unwrapped_key_bytes, + original_key_bytes.to_vec(), + "Unwrapped key should match original" + ); Ok(()) } diff --git a/crate/cli/src/tests/kms/shared/mod.rs b/crate/cli/src/tests/kms/shared/mod.rs index e3eb9d945b..323d744faf 100644 --- a/crate/cli/src/tests/kms/shared/mod.rs +++ b/crate/cli/src/tests/kms/shared/mod.rs @@ -7,6 +7,7 @@ pub(super) mod import_export_encodings; pub(super) mod import_export_wrapping; #[cfg(feature = "non-fips")] pub(super) mod locate; +pub(super) mod openssl_utils; pub(super) mod revoke; #[cfg(feature = "non-fips")] pub(super) mod wrap_unwrap; diff --git a/crate/cli/src/tests/kms/shared/openssl_utils.rs b/crate/cli/src/tests/kms/shared/openssl_utils.rs new file mode 100644 index 0000000000..af0677293c --- /dev/null +++ b/crate/cli/src/tests/kms/shared/openssl_utils.rs @@ -0,0 +1,186 @@ +//! These functions use OpenSSL to simulate some cloud provider HSM operations +//! for testing purposes. Using OpenSSL avoids using vendor-specific SDKs in tests +//! and keeps the tests independent from KMS key generation/export actions. +use cosmian_kms_crypto::reexport::cosmian_crypto_core::CsRng; +use openssl::cipher::{Cipher, CipherRef}; +use openssl::cipher_ctx::CipherCtx; +use openssl::encrypt::Decrypter; +use openssl::hash::MessageDigest; +use openssl::pkey::{PKey, Private, Public}; +use openssl::rsa::{Padding, Rsa}; +use sha2::digest::crypto_common::rand_core::{RngCore, SeedableRng}; + +use crate::error::{KmsCliError, result::KmsCliResult}; + +/// Generate RSA keypair using OpenSSL (random size from 2048, 3072, or 4096 bits). +pub(crate) fn generate_rsa_keypair() -> KmsCliResult<(PKey, PKey)> { + let key_sizes = [2048, 3072, 4096]; + let mut rng = CsRng::from_entropy(); + let bits = key_sizes[(rng.next_u32() as usize) % key_sizes.len()]; + + let rsa = Rsa::generate(bits) + .map_err(|e| KmsCliError::Default(format!("Failed to generate RSA key: {e}")))?; + let private_key = PKey::from_rsa(rsa.clone()) + .map_err(|e| KmsCliError::Default(format!("Failed to build private key: {e}")))?; + let public_key = PKey::from_rsa( + Rsa::from_public_components( + rsa.n() + .to_owned() + .map_err(|e| KmsCliError::Default(format!("Failed to clone modulus: {e}")))?, + rsa.e() + .to_owned() + .map_err(|e| KmsCliError::Default(format!("Failed to clone exponent: {e}")))?, + ) + .map_err(|e| KmsCliError::Default(format!("Failed to build public RSA key: {e}")))?, + ) + .map_err(|e| KmsCliError::Default(format!("Failed to build public key: {e}")))?; + + Ok((private_key, public_key)) +} + +/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_1` +/// This is a two-step unwrapping process: +/// 1. RSA-OAEP with SHA-1 unwraps the ephemeral AES key +/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material +pub(crate) fn rsa_aes_key_wrap_sha1_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] + // RSA-encrypted part size equals the RSA key size in bytes + let rsa_key_size = private_key.size(); + + if ciphertext.len() <= rsa_key_size { + return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); + } + + // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material + let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); + + // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-1 + let aes_key = rsaes_oaep_sha1_unwrap(encrypted_aes_key, private_key)?; + + // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) + let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; + Ok(unwrapped_key) +} + +/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-256 +/// This replaces the AWS KMS Import key material step for testing purposes. +/// The aws API equivalent command (on cli) is: +/// ```sh +/// aws kms import-key-material --key-id \ +/// --encrypted-key-material fileb:// \ +/// --import-token fileb:// \ +/// --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE +/// ``` +pub(crate) fn rsaes_oaep_sha256_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + let mut decrypter = Decrypter::new(private_key)?; + + // Set OAEP padding with SHA-256 + decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; + decrypter.set_rsa_oaep_md(MessageDigest::sha256())?; + decrypter.set_rsa_mgf1_md(MessageDigest::sha256())?; + + // Calculate buffer size + let buffer_len = decrypter.decrypt_len(ciphertext)?; + let mut decrypted = vec![0_u8; buffer_len]; + + // Decrypt + let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; + decrypted.truncate(decrypted_len); + + Ok(decrypted) +} + +/// Unwrap (decrypt) the given ciphertext using RSAES-OAEP with SHA-1 +/// This replaces the AWS KMS Import key material step for testing purposes. +pub(crate) fn rsaes_oaep_sha1_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + let mut decrypter = Decrypter::new(private_key)?; + + // Set OAEP padding with SHA-1 + decrypter.set_rsa_padding(Padding::PKCS1_OAEP)?; + decrypter.set_rsa_oaep_md(MessageDigest::sha1())?; + decrypter.set_rsa_mgf1_md(MessageDigest::sha1())?; + + // Calculate buffer size + let buffer_len = decrypter.decrypt_len(ciphertext)?; + let mut decrypted = vec![0_u8; buffer_len]; + + // Decrypt + let decrypted_len = decrypter.decrypt(ciphertext, &mut decrypted)?; + decrypted.truncate(decrypted_len); + + Ok(decrypted) +} + +/// AES Key Unwrap with Padding (RFC 5649) using OpenSSL +fn aes_key_unwrap(ciphertext: &[u8], kek: &[u8]) -> Result, Box> { + const AES_WRAP_BLOCK_SIZE: usize = 8; + + // RFC 5649 requires ciphertext to be at least 16 bytes and a multiple of 8 bytes + if ciphertext.len() < 16 || !ciphertext.len().is_multiple_of(AES_WRAP_BLOCK_SIZE) { + return Err("Invalid ciphertext size for AES Key Unwrap".into()); + } + + // Select cipher based on KEK size + let cipher: &CipherRef = match kek.len() { + 16 => Cipher::aes_128_wrap_pad(), + 24 => Cipher::aes_192_wrap_pad(), + 32 => Cipher::aes_256_wrap_pad(), + _ => { + return Err(format!( + "Invalid KEK size: {} bytes. Expected 16, 24, or 32", + kek.len() + ) + .into()); + } + }; + let mut ctx = CipherCtx::new()?; + ctx.decrypt_init(Some(cipher), Some(kek), None)?; + + // Allocate output buffer with extra space (defensive maneuver - the final result will be truncated to the actual size) + let mut plaintext = vec![0_u8; ciphertext.len() + 16]; + + let mut written = ctx.cipher_update(ciphertext, Some(&mut plaintext))?; + written += ctx.cipher_final(&mut plaintext[written..])?; + + // Truncate to actual output size + plaintext.truncate(written); + + Ok(plaintext) +} + +/// Unwrap (decrypt) the given ciphertext using `RSA_AES_KEY_WRAP_SHA_256` +/// This is a two-step unwrapping process: +/// 1. RSA-OAEP with SHA-256 unwraps the ephemeral AES key +/// 2. AES Key Wrap (RFC 5649) unwraps the actual key material +pub(crate) fn rsa_aes_key_wrap_sha256_unwrap( + ciphertext: &[u8], + private_key: &PKey, +) -> Result, Box> { + // The ciphertext structure is: [RSA-encrypted AES key | AES-wrapped key material] + // RSA-encrypted part size equals the RSA key size in bytes + let rsa_key_size = private_key.size(); + + if ciphertext.len() <= rsa_key_size { + return Err("Ciphertext too short for RSA_AES_KEY_WRAP".into()); + } + + // Split the ciphertext into RSA-encrypted AES key and AES-wrapped key material + let (encrypted_aes_key, wrapped_key_material) = ciphertext.split_at(rsa_key_size); + + // Step 1: Unwrap the ephemeral AES key using RSA-OAEP with SHA-256 + let aes_key = rsaes_oaep_sha256_unwrap(encrypted_aes_key, private_key)?; + + // Step 2: Unwrap the key material using AES Key Wrap (RFC 5649) + let unwrapped_key = aes_key_unwrap(wrapped_key_material, &aes_key)?; + + Ok(unwrapped_key) +} From 97e7fd6ea52b98b887180a4b3b1069b0d0d7673c Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Mon, 2 Feb 2026 20:11:13 +0100 Subject: [PATCH 11/16] feat: more last fixes --- crate/cli/src/actions/kms/aws/byok/export_key_material.rs | 1 - crate/cli/src/actions/kms/aws/byok/import_kek.rs | 3 +-- crate/cli/src/tests/kms/mod.rs | 2 +- ui/src/AwsExportKeyMaterial.tsx | 2 +- ui/src/AwsImportKek.tsx | 2 +- 5 files changed, 4 insertions(+), 6 deletions(-) diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index d844ff9125..58f5fb912e 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -24,7 +24,6 @@ use crate::{ }, }; -// TODO : test the binary cli to see what it outputs /// Wrap a KMS key with an AWS Key Encryption Key (KEK), /// previously imported using the `cosmian kms aws byok import` command. /// Generate the `.byok` file that can be used to import the KMS key into AWS KMS. diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index 170211ba00..c7727a0bcd 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -33,8 +33,7 @@ fn validate_kek_base64(s: &str) -> Result { } Ok(s.to_owned()) } -/// Import into the KMS an RSA Key Encryption Key (KEK) generated on Azure Key Vault. -/// See: + #[derive(Parser)] #[clap(verbatim_doc_comment)] #[clap(group(ArgGroup::new("kek_input").required(true).args(["kek_base64", "kek_file"])))] // At least one of kek_file or kek_blob must be provided diff --git a/crate/cli/src/tests/kms/mod.rs b/crate/cli/src/tests/kms/mod.rs index 50984140aa..f936858154 100644 --- a/crate/cli/src/tests/kms/mod.rs +++ b/crate/cli/src/tests/kms/mod.rs @@ -1,8 +1,8 @@ mod access; mod attributes; mod auth_tests; -mod azure; mod aws; +mod azure; mod certificates; #[cfg(feature = "non-fips")] mod configurable_kem; diff --git a/ui/src/AwsExportKeyMaterial.tsx b/ui/src/AwsExportKeyMaterial.tsx index e4c97359e2..6007e7c021 100644 --- a/ui/src/AwsExportKeyMaterial.tsx +++ b/ui/src/AwsExportKeyMaterial.tsx @@ -97,7 +97,7 @@ const AwsExportKeyMaterialForm: React.FC = () => { // Step 2: Export the wrapped key using the KEK const exportRequest = wasm.export_ttlv_request( values.wrappedKeyId, // Key ID to wrap - false, // Unwrap flag + true, // Unwrap flag "raw", // Key format (raw bytes) values.kekId, // Wrapping key ID wrappingAlgorithm, // Wrapping algorithm diff --git a/ui/src/AwsImportKek.tsx b/ui/src/AwsImportKek.tsx index d3054eb3eb..f3c7c44d9c 100644 --- a/ui/src/AwsImportKek.tsx +++ b/ui/src/AwsImportKek.tsx @@ -110,7 +110,7 @@ const ImportAwsKekForm: React.FC = () => { {/* prettier-ignore */}

See AWS KMS developer documentation for {" "} - + downloading the wrapping public key and import token .

From 60eb1279bdbb14291aa697933acd8fdaaa59acd3 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Mon, 2 Feb 2026 21:21:04 +0100 Subject: [PATCH 12/16] feat: ui fixes fix: more work fix: more work2 fix: restore cli commands(I have no idea where that disappeared) fix: fix some docs fix: stuff --- crate/cli/src/actions/kms/actions.rs | 9 +- .../kms/aws/byok/export_key_material.rs | 5 +- .../src/actions/kms/aws/byok/import_kek.rs | 32 ++-- .../src/tests/kms/aws/integration_tests.rs | 1 + crate/crypto/README.md | 4 - documentation/docs/aws/aws_import_kek.png | Bin 0 -> 215911 bytes documentation/docs/aws/byok.md | 154 ++++++++++++++++++ ui/eslint.config.js | 52 +++--- ui/src/App.tsx | 151 ++++++++--------- ui/src/Sidebar.tsx | 12 +- ui/src/menuItems.tsx | 116 ++++++------- 11 files changed, 345 insertions(+), 191 deletions(-) create mode 100644 documentation/docs/aws/aws_import_kek.png create mode 100644 documentation/docs/aws/byok.md diff --git a/crate/cli/src/actions/kms/actions.rs b/crate/cli/src/actions/kms/actions.rs index 6be6e50998..29b0cf9756 100644 --- a/crate/cli/src/actions/kms/actions.rs +++ b/crate/cli/src/actions/kms/actions.rs @@ -11,9 +11,9 @@ use super::configurable_kem::ConfigurableKemCommands; use super::cover_crypt::CovercryptCommands; use crate::{ actions::kms::{ - access::AccessAction, attributes::AttributesCommands, azure::AzureCommands, - bench::BenchAction, certificates::CertificatesCommands, console::Stdout, - derive_key::DeriveKeyAction, elliptic_curves::EllipticCurveCommands, + access::AccessAction, attributes::AttributesCommands, aws::AwsCommands, + azure::AzureCommands, bench::BenchAction, certificates::CertificatesCommands, + console::Stdout, derive_key::DeriveKeyAction, elliptic_curves::EllipticCurveCommands, google::GoogleCommands, hash::HashAction, login::LoginAction, mac::MacCommands, opaque_object::OpaqueObjectCommands, rng::RngAction, rsa::RsaCommands, secret_data::SecretDataCommands, shared::LocateObjectsAction, symmetric::SymmetricCommands, @@ -30,6 +30,8 @@ pub enum KmsActions { Attributes(AttributesCommands), #[command(subcommand)] Azure(AzureCommands), + #[command(subcommand)] + Aws(AwsCommands), #[clap(hide = true)] Bench(BenchAction), #[cfg(feature = "non-fips")] @@ -81,6 +83,7 @@ impl KmsActions { match self { Self::AccessRights(action) => Box::pin(action.process(kms_rest_client)).await?, Self::Attributes(action) => Box::pin(action.process(kms_rest_client)).await?, + Self::Aws(action) => Box::pin(action.process(kms_rest_client)).await?, Self::Azure(action) => Box::pin(action.process(kms_rest_client)).await?, Self::Bench(action) => Box::pin(action.process(kms_rest_client)).await?, #[cfg(feature = "non-fips")] diff --git a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs index 58f5fb912e..982f978994 100644 --- a/crate/cli/src/actions/kms/aws/byok/export_key_material.rs +++ b/crate/cli/src/actions/kms/aws/byok/export_key_material.rs @@ -24,10 +24,7 @@ use crate::{ }, }; -/// Wrap a KMS key with an AWS Key Encryption Key (KEK), -/// previously imported using the `cosmian kms aws byok import` command. -/// Generate the `.byok` file that can be used to import the KMS key into AWS KMS. -/// See: +/// Wrap a KMS key with an AWS Key Encryption Key (KEK). #[derive(Parser)] #[clap(verbatim_doc_comment)] pub struct ExportByokAction { diff --git a/crate/cli/src/actions/kms/aws/byok/import_kek.rs b/crate/cli/src/actions/kms/aws/byok/import_kek.rs index c7727a0bcd..176f005458 100644 --- a/crate/cli/src/actions/kms/aws/byok/import_kek.rs +++ b/crate/cli/src/actions/kms/aws/byok/import_kek.rs @@ -5,7 +5,7 @@ use crate::{ aws::byok::wrapping_algorithms::AwsKmsWrappingAlgorithm, shared::ImportSecretDataOrKeyAction, }, - error::result::KmsCliResult, + error::{KmsCliError, result::KmsCliResult}, }; use base64::{Engine, prelude::BASE64_STANDARD}; use clap::{ArgGroup, Parser}; @@ -34,6 +34,7 @@ fn validate_kek_base64(s: &str) -> Result { Ok(s.to_owned()) } +/// Import an AWS Key Encryption Key (KEK) into the KMS. #[derive(Parser)] #[clap(verbatim_doc_comment)] #[clap(group(ArgGroup::new("kek_input").required(true).args(["kek_base64", "kek_file"])))] // At least one of kek_file or kek_blob must be provided @@ -65,7 +66,6 @@ pub struct ImportKekAction { } impl ImportKekAction { - #[allow(clippy::expect_used, clippy::unwrap_used, clippy::missing_panics_doc)] // TODO pub async fn run(&self, kms_client: KmsClient) -> KmsCliResult { // build tags let mut tags = vec![ @@ -77,21 +77,21 @@ impl ImportKekAction { } let import_action = ImportSecretDataOrKeyAction { - key_file: self - .kek_file - .clone() - .or_else(|| { - self.kek_base64.as_ref().map(|base64_str| { - let temp_path = - std::env::temp_dir().join(format!("{}", uuid::Uuid::new_v4())); - std::fs::write(&temp_path, BASE64_STANDARD.decode(base64_str).unwrap()) - .unwrap(); // TODO - temp_path - }) - }) - .expect("msg"), // TODO + key_file: match (&self.kek_file, &self.kek_base64) { + (Some(file), _) => file.clone(), + (None, Some(base64_str)) => { + let temp_path = std::env::temp_dir().join(format!("{}", uuid::Uuid::new_v4())); + std::fs::write(&temp_path, BASE64_STANDARD.decode(base64_str)?)?; + temp_path + } + (None, None) => { + return Err(KmsCliError::Default( + "KEK file or base64 data must be provided".to_owned(), + )); + } + }, key_id: self.key_id.clone(), - key_format: ImportKeyFormat::Pkcs8Pub, // TODO: idk maybe this should be pkcs1 + key_format: ImportKeyFormat::Pkcs8Pub, tags, key_usage: Some(vec![KeyUsage::WrapKey, KeyUsage::Encrypt]), replace_existing: true, diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs index 62f1994639..f9c45c1e1a 100644 --- a/crate/cli/src/tests/kms/aws/integration_tests.rs +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -410,3 +410,4 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { // Ok(plaintext) // } + diff --git a/crate/crypto/README.md b/crate/crypto/README.md index d9a151877e..8a526c4234 100644 --- a/crate/crypto/README.md +++ b/crate/crypto/README.md @@ -1,7 +1,3 @@ -// TODO : rewrite some stuff - - - # Cosmian KMS Crypto The **Crypto** crate provides core cryptographic operations and algorithm implementations for the Cosmian KMS. diff --git a/documentation/docs/aws/aws_import_kek.png b/documentation/docs/aws/aws_import_kek.png new file mode 100644 index 0000000000000000000000000000000000000000..8c863aab538f09eba83f8ba773e17afcd6f4a455 GIT binary patch literal 215911 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�^%>-(cIi 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

qz14K4skHIr<0Q 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

tsE-#Hso*HuvlH&S~)h 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 N@iTv>9lh|^{{V4X8_WOz literal 0 HcmV?d00001 diff --git a/documentation/docs/aws/byok.md b/documentation/docs/aws/byok.md new file mode 100644 index 0000000000..03c3613860 --- /dev/null +++ b/documentation/docs/aws/byok.md @@ -0,0 +1,154 @@ +# AWS KMS - Bring Your Own Key (BYOK) + +Cosmian KMS provides an `aws byok` command in its CLI (also available in the ui) to facilitate the import of an AWS wrapping key (KEK) in Cosmian KMS, and the export of the wrapped keys for direct import in AWS KMS. To use the AWS KMS terminology, the key that will be created in the [Cosmian KMS](https://cosmian.com/data-protection-suite/cosmian-kms/) will be called the _external key material_ as stated in the [AWS KMS docs](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html). + +The **key material** refers to the actual cryptographic key bytes that form the basis of a KMS key. While AWS KMS keys include additional metadata, policies, and access controls, the BYOK process allows Cosmian KMS users to maintain full control over key generation while leveraging AWS KMS's infrastructure for other usages. + +## Overview + +Since AWS KMS is a managed service where private key material never leaves AWS HSMs. The key import process requires: + +1. Creating a KMS key with `EXTERNAL` origin (no key material) +2. Download the wrapping public key and import token from AWS +3. Wrap your key material using Cosmian KMS +4. Import the wrapped key material into AWS KMS + +Supported wrapping algorithms: + +| Wrapping Algorithm | Description | Supported Key Material Types | +|-------------------|-------------|------------------------------| +| **RSAES_OAEP_SHA_256**
**RSAES_OAEP_SHA_1** | The RSA encryption algorithm with Optimal Asymmetric Encryption Padding (OAEP) with SHA-256 or SHA-1 hash function. | • 256-bit AES Symmetric keys
• HMAC keys
• Asymmetric ECC private keys* | +| **RSA_AES_KEY_WRAP_SHA_256**
**RSA_AES_KEY_WRAP_SHA_1** | Hybrid wrapping (RSA + AES Key Wrap) with SHA-256 or SHA-1 hash function. | • Asymmetric RSA private keys
• Asymmetric ECC private keys | + +**Wrapping Key Specs :** +- RSA_2048 (***Note**: cannot be used to wrap _ECC_NIST_P521_ keys with _RSAES_OAEP_SHA_*_ ) +- RSA_3072 +- RSA_4096 + +> ⚠️ **WARNING:** Invalid combinations of wrapping algorithms, key material types may lead to errors. Ensure that your selected key material type is supported by the chosen wrapping algorithm and that the wrapping key spec is compatible with both. + +The following guide will detail how to export a symmetric key material wrapped using _RSAES_OAEP_SHA_256_ and the **[AWS KMS API](https://docs.aws.amazon.com/kms/latest/APIReference/Welcome.html)**. + +## 1. Create a KMS key with `EXTERNAL` origin + +To use the AWS KMS API to create a symmetric encryption KMS key with no key material, send a CreateKey request with the Origin parameter set to EXTERNAL : + +```bash + aws kms create-key --origin EXTERNAL +``` + +If successful, the output should look like : + +``` +{ + "KeyMetadata": { + "AWSAccountId": "447182645454", + "KeyId": "4b84a92a-8c1e-4551-9cd8-b1027ac35a19", + "Arn": "arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19", + "CreationDate": "2026-01-25T22:00:14.906000+01:00", + "Enabled": false, + "Description": "", + "KeyUsage": "ENCRYPT_DECRYPT", + "KeyState": "PendingImport", + "Origin": "EXTERNAL", + "KeyManager": "CUSTOMER", + "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", + "KeySpec": "SYMMETRIC_DEFAULT", + "EncryptionAlgorithms": [ + "SYMMETRIC_DEFAULT" + ], + "MultiRegion": false + } +} + +``` + +> **Copy the key ARN, you will need it in the next step.** + +#### Note : + +If no key spec is specified, a symmetric key is created by default. To create a different key, pass the `key-spec` argument like below for an _ECC_NIST_P384_ key : + +```bash + aws kms create-key \ + --origin EXTERNAL \ + --key-spec ECC_NIST_P384 \ + --description "External NIST-P384 key for signing" +``` + +## 2. Generate a symmetric key in the Cosmian KMS + +Navigate to the [Create a symmetric key](https://demo-kms.cosmian.dev/ui/sym/keys/create) tab and generate your key material. In this example, we will use **symmetric_key_material** as the ID for the sake of simplicity. + +You should have the following response : + +``` +symmetric_key_material has been created. +``` +arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70 + +{ + "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70", + "ImportToken": "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", + "PublicKey": "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtsNt+rdszE71mmBzRXTO+izYjup03vlga1a0/QpbjxkOWEppjVMeblh4MyQAD8HKLxyEabnnlRFcGFUxXfdWDX94mqjeW27Eu8mFVS+tnm0UZDQvLCEHcGRtOfuvGNjOAYmUd7I+7tRsnnG578r3o2DEp/WYqqBzKeMS2KgTooEfnLEgoca/ferFxOvjsJ7wJqahkh+zKSx6enSeJNh/R+XjxkT4MQFSCX0UkPCv7hzK7w+VaBC+KugaiPo+uVSL+LEbB2DIhBCXZoA6eeZzQ3gpiOPb9MNWtOAGdnhVhhobyYgH/Zlg0misZVy4h33hlUfXuh4JvNPhV1xYB8SFY/J/mwKkWbkB+8nGkEhfIL6fJbgD/+Oj5p9boGUTdVb1NAymbFk5wmGyHttOHPi3hDpc2GhouCG9KzNqVW1QNPYwHfFnaXeDVOG92dqNxSqxRN/p/3QEnW6KtO+x31ZnPa7OvDXxDAIkrIVB5ETB02NTLDX18Ri/4v5zBNNwudL0+jO5v53+JxtP3C+A8f7nxjJijUDAebmNVziDyfFrHA5m4+E5/qWDZhY/zygCKs+b4dMKk0iaS5SFqRKu79PKkz2+QIPKcmUZHEeXVA7PmE5yoYHODID0r44gcXZqthFxKxzWW9XE5WcCVRgN8VLoaQidA7MaWVtm+qIimw/Mt40CAwEAAQ==", + "ParametersValidTo": "2026-02-13T18:39:25.085000+01:00" +} +~ +~ +~ +~ +(END) + + +## 3. Download the wrapping public key and import token from AWS + +After you create a AWS KMS key with no key material, download a wrapping public key and an import token for that KMS key by using the AWS KMS console or the GetParametersForImport API. The wrapping public key and import token are an indivisible set that must be used together. + +A very detailed example on how to do this is [detailed on this page, please refer to it for more info](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html). + +If you use the AWS CLI, the command should look like : + +```bash +aws kms get-parameters-for-import \ + --key-id arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19 \ + --wrapping-algorithm RSAES_OAEP_SHA_256 \ + --wrapping-key-spec RSA_4096 +``` + +And have an output like this : + +``` +{ + "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19", + "ImportToken": "", + "PublicKey": "", + "ParametersValidTo": "2026-01-26T22:07:07.717000+01:00" +} +~ +~ +~ +(END) +``` + +As mentioned in the [AWS documentation for importing key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html#importing-keys-get-public-key-and-token-api), you will have to convert the base64 values to their binary counterparts before importing them. This can be done with the method of your choice, the most straightforward method (If you have [openssl](https://openssl.org/) on your cli), would be to copy the token and paste it with the following command to get the file `token.bin` : + +```bash +echo -n "" | openssl enc -d -base64 -A -out token.bin +``` + +Then, navigate to **[Import AWS Key Encryption Key (KEK)](https://demo-kms.cosmian.dev/ui/aws/import-kek)** option of the **AWS** tab, on Cosmian KMS ui, fill the key arn you saved from the previous steps and the base64 key in the form like shown below then select the _RSAES_OAEP_SHA_256_ algorithm : + +![image](aws_import_kek.png) + +> we will call the kek _aws_byok_ in this example + +You + +## References + +- [AWS KMS Developer Guide – Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) +- [AWS KMS – Requirements for Imported Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html#importing-keys-material-requirements) +- [AWS KMS – Get Public Key and Import Token](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html) +- [RFC 3447 – PKCS #1: RSA Cryptography Specifications](https://tools.ietf.org/html/rfc3447) +- [RFC 5208 – PKCS #8: Private-Key Information Syntax](https://tools.ietf.org/html/rfc5208) +- [RFC 5649 – AES Key Wrap with Padding](https://tools.ietf.org/html/rfc5649) diff --git a/ui/eslint.config.js b/ui/eslint.config.js index 22904018ec..34a6099eb2 100644 --- a/ui/eslint.config.js +++ b/ui/eslint.config.js @@ -1,26 +1,28 @@ -import js from "@eslint/js"; -import globals from "globals"; -import reactHooks from "eslint-plugin-react-hooks"; -import reactRefresh from "eslint-plugin-react-refresh"; -import tseslint from "typescript-eslint"; +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' +import tseslint from 'typescript-eslint' -// TODO: update to match cosmian ai-client eslint config -export default tseslint.config( - { ignores: ["dist"] }, - { - extends: [js.configs.recommended, ...tseslint.configs.recommended], - files: ["**/*.{ts,tsx}"], - languageOptions: { - ecmaVersion: 2020, - globals: globals.browser, - }, - plugins: { - "react-hooks": reactHooks, - "react-refresh": reactRefresh, - }, - rules: { - ...reactHooks.configs.recommended.rules, - "react-refresh/only-export-components": ["warn", { allowConstantExport: true }], - }, - } -); +export default tseslint.config( // TODO: must be updated - this signature is deprecated + { ignores: ['dist'] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index 11153afd79..5f2718fc50 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -57,11 +57,11 @@ type AppContentProps = { setIsDarkMode: (value: boolean) => void; }; -const LS_DARKMODE_KEY = "darkMode"; -const initialDarkMode = localStorage.getItem(LS_DARKMODE_KEY); +const LS_DARKMODE_KEY = 'darkMode'; +const initialDarkMode = localStorage.getItem(LS_DARKMODE_KEY) -const AppContent: React.FC = ({ isDarkMode, setIsDarkMode }) => { - const { setServerUrl, setIdToken, setUserId } = useAuth(); +const AppContent: React.FC = ({isDarkMode, setIsDarkMode}) => { + const {setServerUrl, setIdToken, setUserId} = useAuth(); const [isAuthenticated, setIsAuthenticated] = useState(false); const [isAuthLoading, setIsAuthLoading] = useState(false); const [authMethod, setAuthMethod] = useState("None"); @@ -73,7 +73,7 @@ const AppContent: React.FC = ({ isDarkMode, setIsDarkMode }) => useEffect(() => { localStorage.setItem(LS_DARKMODE_KEY, JSON.stringify(isDarkMode)); - }, [isDarkMode]); + }, [isDarkMode]) useEffect(() => { // Automatically use dev URL in development mode @@ -115,102 +115,103 @@ const AppContent: React.FC = ({ isDarkMode, setIsDarkMode }) => {!isAuthenticated && authMethod === "JWT" ? ( <> - } /> - } /> + }/> + }/> ) : ( <> - } /> - }> - } /> + }/> + }> + }/> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + }/> + }/> + }/> + }/> + }/> + }/> + }/> + }/> - } /> - } /> - } /> + }/> + }/> + }/> - } /> - } /> + }/> + }/> } /> - } /> + } /> - } /> + }/> - } /> + }/> )} @@ -331,7 +332,7 @@ function App() { }} > - + diff --git a/ui/src/Sidebar.tsx b/ui/src/Sidebar.tsx index 854f216c1b..ecef4a1ce9 100644 --- a/ui/src/Sidebar.tsx +++ b/ui/src/Sidebar.tsx @@ -53,12 +53,12 @@ const Sidebar: React.FC = () => { const isCreateItem = item.key && (item.key.includes("/create") || item.key.includes("/create-") || item.label === "Create"); // Check if item is an Import item - const isImportItem = 0; // TODO: restore this item.key && (item.key.includes("/import") || item.key.includes("/import-") || item.label === "Import"); + const isImportItem = item.key && (item.key.includes("/import") || item.key.includes("/import-") || item.label === "Import"); - // Handle disabled state based on access rights - if (isCreateItem || isImportItem) { - newItem.disabled = !hasCreateAccess; - } + // // Handle disabled state based on access rights + // if (isCreateItem || isImportItem) { + // newItem.disabled = !hasCreateAccess; + // } // Process children recursively if they exist if (newItem.children) { @@ -101,7 +101,7 @@ const Sidebar: React.FC = () => { setStateOpenKeys( openKeys .filter((_, index: number) => index !== repeatIndex) - .filter((key: string) => levelKeys[key] <= levelKeys[currentOpenKey]) + .filter((key: string) => levelKeys[key] <= levelKeys[currentOpenKey]), ); } else { // close diff --git a/ui/src/menuItems.tsx b/ui/src/menuItems.tsx index fcefa952fb..6190ed6284 100644 --- a/ui/src/menuItems.tsx +++ b/ui/src/menuItems.tsx @@ -17,7 +17,7 @@ const baseMenu: MenuItem[] = [ { key: "locate", label: "Locate", - icon: , + icon: , }, { key: "sym", @@ -28,15 +28,15 @@ const baseMenu: MenuItem[] = [ key: "sym/keys", label: "Keys", children: [ - { key: "sym/keys/create", label: "Create" }, - { key: "sym/keys/export", label: "Export" }, - { key: "sym/keys/import", label: "Import" }, - { key: "sym/keys/revoke", label: "Revoke" }, - { key: "sym/keys/destroy", label: "Destroy" }, + {key: "sym/keys/create", label: "Create"}, + {key: "sym/keys/export", label: "Export"}, + {key: "sym/keys/import", label: "Import"}, + {key: "sym/keys/revoke", label: "Revoke"}, + {key: "sym/keys/destroy", label: "Destroy"}, ], }, - { key: "sym/encrypt", label: "Encrypt" }, - { key: "sym/decrypt", label: "Decrypt" }, + {key: "sym/encrypt", label: "Encrypt"}, + {key: "sym/decrypt", label: "Decrypt"}, ], }, { @@ -48,17 +48,17 @@ const baseMenu: MenuItem[] = [ key: "rsa/keys", label: "Keys", children: [ - { key: "rsa/keys/create", label: "Create" }, - { key: "rsa/keys/export", label: "Export" }, - { key: "rsa/keys/import", label: "Import" }, - { key: "rsa/keys/revoke", label: "Revoke" }, - { key: "rsa/keys/destroy", label: "Destroy" }, + {key: "rsa/keys/create", label: "Create"}, + {key: "rsa/keys/export", label: "Export"}, + {key: "rsa/keys/import", label: "Import"}, + {key: "rsa/keys/revoke", label: "Revoke"}, + {key: "rsa/keys/destroy", label: "Destroy"}, ], }, - { key: "rsa/encrypt", label: "Encrypt" }, - { key: "rsa/decrypt", label: "Decrypt" }, - { key: "rsa/sign", label: "Sign" }, - { key: "rsa/verify", label: "Verify" }, + {key: "rsa/encrypt", label: "Encrypt"}, + {key: "rsa/decrypt", label: "Decrypt"}, + {key: "rsa/sign", label: "Sign"}, + {key: "rsa/verify", label: "Verify"}, ], }, { @@ -70,17 +70,17 @@ const baseMenu: MenuItem[] = [ key: "ec/keys", label: "Keys", children: [ - { key: "ec/keys/create", label: "Create" }, - { key: "ec/keys/export", label: "Export" }, - { key: "ec/keys/import", label: "Import" }, - { key: "ec/keys/revoke", label: "Revoke" }, - { key: "ec/keys/destroy", label: "Destroy" }, + {key: "ec/keys/create", label: "Create"}, + {key: "ec/keys/export", label: "Export"}, + {key: "ec/keys/import", label: "Import"}, + {key: "ec/keys/revoke", label: "Revoke"}, + {key: "ec/keys/destroy", label: "Destroy"}, ], }, - { key: "ec/encrypt", label: "Encrypt" }, - { key: "ec/decrypt", label: "Decrypt" }, - { key: "ec/sign", label: "Sign" }, - { key: "ec/verify", label: "Verify" }, + {key: "ec/encrypt", label: "Encrypt"}, + {key: "ec/decrypt", label: "Decrypt"}, + {key: "ec/sign", label: "Sign"}, + {key: "ec/verify", label: "Verify"}, ], }, // Covercrypt section appended below @@ -89,11 +89,11 @@ const baseMenu: MenuItem[] = [ label: "Secret Data", collapsedlabel: "SD", children: [ - { key: "secret-data/create", label: "Create" }, - { key: "secret-data/export", label: "Export" }, - { key: "secret-data/import", label: "Import" }, - { key: "secret-data/revoke", label: "Revoke" }, - { key: "secret-data/destroy", label: "Destroy" }, + {key: "secret-data/create", label: "Create"}, + {key: "secret-data/export", label: "Export"}, + {key: "secret-data/import", label: "Import"}, + {key: "secret-data/revoke", label: "Revoke"}, + {key: "secret-data/destroy", label: "Destroy"}, ], }, { @@ -101,54 +101,54 @@ const baseMenu: MenuItem[] = [ label: "Opaque Object", collapsedlabel: "Opaque", children: [ - { key: "opaque-object/create", label: "Create" }, - { key: "opaque-object/export", label: "Export" }, - { key: "opaque-object/import", label: "Import" }, - { key: "opaque-object/revoke", label: "Revoke" }, - { key: "opaque-object/destroy", label: "Destroy" }, + {key: "opaque-object/create", label: "Create"}, + {key: "opaque-object/export", label: "Export"}, + {key: "opaque-object/import", label: "Import"}, + {key: "opaque-object/revoke", label: "Revoke"}, + {key: "opaque-object/destroy", label: "Destroy"}, ], }, { key: "certificates", label: "Certificates", - icon: , + icon: , children: [ { key: "certificates/certs", label: "Certs", children: [ - { key: "certificates/certs/certify", label: "Certify" }, - { key: "certificates/certs/export", label: "Export" }, - { key: "certificates/certs/import", label: "Import" }, - { key: "certificates/certs/revoke", label: "Revoke" }, - { key: "certificates/certs/destroy", label: "Destroy" }, - { key: "certificates/certs/validate", label: "Validate" }, + {key: "certificates/certs/certify", label: "Certify"}, + {key: "certificates/certs/export", label: "Export"}, + {key: "certificates/certs/import", label: "Import"}, + {key: "certificates/certs/revoke", label: "Revoke"}, + {key: "certificates/certs/destroy", label: "Destroy"}, + {key: "certificates/certs/validate", label: "Validate"}, ], }, - { key: "certificates/encrypt", label: "Encrypt" }, - { key: "certificates/decrypt", label: "Decrypt" }, + {key: "certificates/encrypt", label: "Encrypt"}, + {key: "certificates/decrypt", label: "Decrypt"}, ], }, { key: "attributes", label: "Attributes", - icon: , + icon: , children: [ - { key: "attributes/get", label: "Get" }, - { key: "attributes/set", label: "Set" }, - { key: "attributes/delete", label: "Delete" }, + {key: "attributes/get", label: "Get"}, + {key: "attributes/set", label: "Set"}, + {key: "attributes/delete", label: "Delete"}, ], }, { key: "access-rights", label: "Access Rights", - icon: , + icon: , children: [ - { key: "access-rights/grant", label: "Grant" }, - { key: "access-rights/revoke", label: "Revoke" }, - { key: "access-rights/list", label: "List" }, - { key: "access-rights/owned", label: "Owned" }, - { key: "access-rights/obtained", label: "Obtained" }, + {key: "access-rights/grant", label: "Grant"}, + {key: "access-rights/revoke", label: "Revoke"}, + {key: "access-rights/list", label: "List"}, + {key: "access-rights/owned", label: "Owned"}, + {key: "access-rights/obtained", label: "Obtained"}, ], }, { @@ -156,8 +156,8 @@ const baseMenu: MenuItem[] = [ label: "Azure", collapsedlabel: "Azure", children: [ - { key: "azure/import-kek", label: "Import KEK" }, - { key: "azure/export-byok", label: "Export BYOK" }, + {key: "azure/import-kek", label: "Import KEK"}, + {key: "azure/export-key-material", label: "Export BYOK"}, ], }, { @@ -166,7 +166,7 @@ const baseMenu: MenuItem[] = [ collapsedlabel: "AWS", children: [ { key: "aws/import-kek", label: "Import KEK" }, - { key: "aws/export-byok", label: "Export BYOK" }, + { key: "aws/export-key-material", label: "Export key material" }, ], }, { From 8748da38d6cbca8b9ca72c3969b2b4133256babc Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 18 Feb 2026 14:24:35 +0100 Subject: [PATCH 13/16] fix: work --- documentation/docs/aws/byok.md | 7 ++----- ui/src/AwsImportKek.tsx | 11 +++++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/documentation/docs/aws/byok.md b/documentation/docs/aws/byok.md index 03c3613860..e9c86e9888 100644 --- a/documentation/docs/aws/byok.md +++ b/documentation/docs/aws/byok.md @@ -21,6 +21,7 @@ Supported wrapping algorithms: | **RSA_AES_KEY_WRAP_SHA_256**
**RSA_AES_KEY_WRAP_SHA_1** | Hybrid wrapping (RSA + AES Key Wrap) with SHA-256 or SHA-1 hash function. | • Asymmetric RSA private keys
• Asymmetric ECC private keys | **Wrapping Key Specs :** + - RSA_2048 (***Note**: cannot be used to wrap _ECC_NIST_P521_ keys with _RSAES_OAEP_SHA_*_ ) - RSA_3072 - RSA_4096 @@ -84,7 +85,6 @@ You should have the following response : ``` symmetric_key_material has been created. -``` arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70 { @@ -98,7 +98,7 @@ arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70 ~ ~ (END) - +``` ## 3. Download the wrapping public key and import token from AWS @@ -149,6 +149,3 @@ You - [AWS KMS Developer Guide – Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) - [AWS KMS – Requirements for Imported Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html#importing-keys-material-requirements) - [AWS KMS – Get Public Key and Import Token](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html) -- [RFC 3447 – PKCS #1: RSA Cryptography Specifications](https://tools.ietf.org/html/rfc3447) -- [RFC 5208 – PKCS #8: Private-Key Information Syntax](https://tools.ietf.org/html/rfc5208) -- [RFC 5649 – AES Key Wrap with Padding](https://tools.ietf.org/html/rfc5649) diff --git a/ui/src/AwsImportKek.tsx b/ui/src/AwsImportKek.tsx index f3c7c44d9c..14697c07b7 100644 --- a/ui/src/AwsImportKek.tsx +++ b/ui/src/AwsImportKek.tsx @@ -18,12 +18,15 @@ type KeyImportResponse = { UniqueIdentifier: string; }; +// These values MUST match the WrappingAlgorithm enum's strum kebab-case serialization +// in crate/client_utils/src/export_utils.rs (used by wasm.export_ttlv_request). +// RsaOaepSha1 -> "rsa-oaep-sha1", RsaOaep (SHA-256) -> "rsa-oaep", +// RsaAesKeyWrapSha1 -> "rsa-aes-key-wrap-sha1", RsaAesKeyWrap (SHA-256) -> "rsa-aes-key-wrap" const WRAPPING_ALGORITHMS = [ - { label: "RSAES_OAEP_SHA_1", value: "rsaes-oaep-sha1" }, - { label: "RSAES_OAEP_SHA_256", value: "rsaes-oaep-sha256" }, + { label: "RSAES_OAEP_SHA_1", value: "rsa-oaep-sha1" }, + { label: "RSAES_OAEP_SHA_256", value: "rsa-oaep" }, { label: "RSA_AES_KEY_WRAP_SHA_1", value: "rsa-aes-key-wrap-sha1" }, - { label: "RSA_AES_KEY_WRAP_SHA_256", value: "rsa-aes-key-wrap-sha256" }, - { label: "SM2PKE (China region only)", value: "sm2pke" }, + { label: "RSA_AES_KEY_WRAP_SHA_256", value: "rsa-aes-key-wrap" }, ]; const ImportAwsKekForm: React.FC = () => { From 6d05b2c9cb9da5d27171c3606a687afd3dd1dbb6 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:52:00 +0100 Subject: [PATCH 14/16] feat: docs are finally written --- documentation/mkdocs.yml | 4 +++- ui/src/AwsImportKek.tsx | 19 ++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/documentation/mkdocs.yml b/documentation/mkdocs.yml index 03c33d3a98..d9a9a33b41 100644 --- a/documentation/mkdocs.yml +++ b/documentation/mkdocs.yml @@ -74,7 +74,9 @@ nav: - Other HSMs: hsms/other_hsms.md - Integrations: - API Endpoints: api.md - - AWS ECS Fargate: aws_fargate.md + - AWS: + - ECS Fargate: aws/fargate.md + - BYOK (Bring Your Own Key): aws/byok.md - Azure: - BYOK (Bring Your Own Key): azure/byok.md - Google GCP: diff --git a/ui/src/AwsImportKek.tsx b/ui/src/AwsImportKek.tsx index 14697c07b7..a05cfc7d26 100644 --- a/ui/src/AwsImportKek.tsx +++ b/ui/src/AwsImportKek.tsx @@ -10,7 +10,7 @@ interface ImportAwsKekFormData { kekFile?: Uint8Array; kekBase64?: string; keyArn?: string; - wrappingAlgorithm: string; + wrappingAlgorithm: WrappingAlgorithm; keyId?: string; } @@ -20,13 +20,18 @@ type KeyImportResponse = { // These values MUST match the WrappingAlgorithm enum's strum kebab-case serialization // in crate/client_utils/src/export_utils.rs (used by wasm.export_ttlv_request). -// RsaOaepSha1 -> "rsa-oaep-sha1", RsaOaep (SHA-256) -> "rsa-oaep", -// RsaAesKeyWrapSha1 -> "rsa-aes-key-wrap-sha1", RsaAesKeyWrap (SHA-256) -> "rsa-aes-key-wrap" +export enum WrappingAlgorithm { + RsaOaepSha1 = "rsa-oaep-sha1", + RsaOaepSha256 = "rsa-oaep", + RsaAesKeyWrapSha1 = "rsa-aes-key-wrap-sha1", + RsaAesKeyWrapSha256 = "rsa-aes-key-wrap", +} + const WRAPPING_ALGORITHMS = [ - { label: "RSAES_OAEP_SHA_1", value: "rsa-oaep-sha1" }, - { label: "RSAES_OAEP_SHA_256", value: "rsa-oaep" }, - { label: "RSA_AES_KEY_WRAP_SHA_1", value: "rsa-aes-key-wrap-sha1" }, - { label: "RSA_AES_KEY_WRAP_SHA_256", value: "rsa-aes-key-wrap" }, + { label: "RSAES_OAEP_SHA_1", value: WrappingAlgorithm.RsaOaepSha1 }, + { label: "RSAES_OAEP_SHA_256", value: WrappingAlgorithm.RsaOaepSha256 }, + { label: "RSA_AES_KEY_WRAP_SHA_1", value: WrappingAlgorithm.RsaAesKeyWrapSha1 }, + { label: "RSA_AES_KEY_WRAP_SHA_256", value: WrappingAlgorithm.RsaAesKeyWrapSha256 }, ]; const ImportAwsKekForm: React.FC = () => { From 5da0737e66b85f420515445dbd1074abc223179e Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:52:14 +0100 Subject: [PATCH 15/16] feat: true docs --- documentation/docs/aws/aws_import_kek.png | Bin 215911 -> 0 bytes documentation/docs/aws/byok.md | 190 +++++++++++++----- documentation/docs/aws/create_rsa.png | Bin 0 -> 138042 bytes .../docs/aws/export_key_material.png | Bin 0 -> 192466 bytes .../docs/{aws_fargate.md => aws/fargate.md} | 0 documentation/docs/aws/import_kek.png | Bin 0 -> 259736 bytes documentation/docs/index.md | 11 +- 7 files changed, 146 insertions(+), 55 deletions(-) delete mode 100644 documentation/docs/aws/aws_import_kek.png create mode 100644 documentation/docs/aws/create_rsa.png create mode 100644 documentation/docs/aws/export_key_material.png rename documentation/docs/{aws_fargate.md => aws/fargate.md} (100%) create mode 100644 documentation/docs/aws/import_kek.png diff --git a/documentation/docs/aws/aws_import_kek.png b/documentation/docs/aws/aws_import_kek.png deleted file mode 100644 index 8c863aab538f09eba83f8ba773e17afcd6f4a455..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215911 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�^%>-(cIi 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

qz14K4skHIr<0Q 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

tsE-#Hso*HuvlH&S~)h zJ0Fa>g@rQ4nChwty(Gi~Y0Vo!g+_8?LyZ-m4Lo~Fm|fRm^_$-~sMzJRy`=r~yl?+b zy4wCt;hm$#cQ1{(LvL?7v_D&$(@EOVE^%YOd^u9~cDCN&%=cP}i2-i{|BENmz1W-w zW-lx`H!WLaN;V1a15b(A68|!(LTAM)rYbG+GJ7kfzCS4+f{d$}fYtmcw(pGFExRyY zhM4MDs?pK59+j+wo&M6X8^OP^7an?AJ@s~+hS{5E#_T`>YxZjo9ef?8TyjWLp_?C!sWXPJ2t$g@YD!l!QM z^3VUGLr(n^frj+-=2NjNS$#M5fX&DW9puH!+11+miY6#b#BD`9kfu{j?BTr#Eg$)o3v?YrFqGwrp-mO+Ei|{+A)fgw@pE2c|qp`_B z0jH3STSy(momt^q1&c2Rs^W9|DGe+vGKrJDiIefzuB?_KBecm2xxDu&D^$cOx7P)|HmxfQXKC& zzNjDuHyuY8m54@1TkFQh(JfFO8}(Q?NTCyBfr^TXvz9FPIc**i6%}qxs@yEXEiNtu z3%kzIgrso+JtEiCjOlX2j|!C=h_oIv`wa7M3)dKymeEInNdH4=u5P5D*)b{00XZD^ z7?3WX;<%`&mx4;BeOu z)a%_L6W}JN7Ev55Z>zqc-c|Lf;y>%^wp^-G<`DAw+YN-Ag2F>}Aei1=SWzTKey z_$v0_8-PFCyACG#U!V31asMymfBpF1e0XeGECpQkp1%I|mN*GU2?@F|+11hz#(zKK zMsaa*Ye&bo@81vE*)5mF#(2iS4LIST$@Ta7^Imar^dLa}t+jQ*l2zv4r~1jt%;{%-P5R&)bOTH7* zH#YtO_$7GlpEr@Y8NNO9{%5duum+~4k6c`~`W1diJ%mB3`u5v0|KFh^VYhgsI%NOv zPn1(S;B($YDGVMv9pKR~v)SFy*!ZhVf;C`(g#)-h8cJJ>$NwG}I9g!1*9iHJ8E;uA(x-<8)rx=p1p=_`7@^FFGH@y-gMN}NG zO}!G00PXDn!Ec&1wj7$8z4b1`7NnIKDXPgI?xuUBOQrKFQgfEr?G>U>m`k8b+jw$I zIV4}7iy5SxBjN5k!(+wWnGu!XHZ+O0kyz7vHM;=F?QWQL*t6e7Y96vMDT5&Cyup;OaYtE7`owqM#}JD-<&UcUf8B;N_~c)$JP z8YKfWDRXDw__4$^Wuf+VUW%smZ2~{OuIhw20($U~YvZys0<*!cgy%1MU7lFFKb>vJ zsgSy;k=LYkn#*eKWNKz0w^e_N%$-#}2?;On0HM(#mrL?mr;JB`$r~CPlE%f!OLI?E z)LQHS*apc{*k*>;qHFgDd2hFmE+MSHBz|XB&}OTDbSo#8Dz zE&@D=v?aoXv$#jh_Y|IR1FbA3ucOFoq7!Esf@5(b2Vyn(J;fb&ydoFz>!IA1cQJxi z;{J+;Jvc;1k*ipZ?#;Mi%2=a;x87HVu&Ba|sbO|ZtWqYh8E-C~r=fXJU5UReRvA&4 z6Y6JE(7?>k?+@G=ZE0cIg^iW^&Vl1=SmboQUWdm{Q_U%_VJG zIfy8}C#6P5O4#u`n5!ENAK-Zy6p5R64Oec<(kW;O;SdlAd^$GKk?7tLv#h&n(ibuO zTsc$R!5sK9E>Uw28qNt3Oh`h9>)m_#Dqst+{lMVg6Mep?_R=bo+T$Z8VZZ8dLJ2V^CqBKXZ!fog2Ey{)^%Ry znC`5ZM#yrQS|tbc3sR-#Z*9&Na$OO#`RH8q<4InO2%<%|A?7gQlZ0I-qB#Qm%_4$n z->26q#R%P;?XyGKB)ce~tsE$})@MUII+EVK(lyn%fPEqMc-0(vIBytioJTJ$A$uDq z9iEqWCXlu|eJ2+7?DMQV;{j~gC4hSrSJ(hR{yQnUSu}>!A)07V9=~0ffeq1iL7z1i5>CA~|4c`}c4_sQd zQRLRE^!B`cj4KLrV-g&KMA$4l>cfW=Bx$7e#!$AhJQt<468E*lk1MnI#Gl|S%Jxz_ zi|yx*c#o}Qale|d(7iOj+`T|-JvF%{KygVlg9Bn4wSE>ZF0ac)9#2Zy@&;WMpKB(b z;=^9L1EGydDf(RtUTkNHa4k)d?gweOWueVCce?W$tHx5@r=crS&X>`AH7kUU>A>d0 zFW2>iVW}@of0CRc5R@{N4wue~*HaCP)t>0#LR5swOYH^a29DFlV{UruMnJ@rl4{gi za8Fs5hIYK4hl%N&t6273!f18EF&58)m~+hjLJ0MMWb%+5_0IRk-t0~LUuD8VbN4XaKBOGYby_QEEIRB^Rw|B6=K6+O;(`!A zrK?%lJjuR)Z9e#btxtZ*wD5^^pX!YS-2G-mRptvJ!{3}gJV}b2W;iJmm?)U zu*xWAPIm@+`Bs~C*jymr%CFGW0ZNbC!>eomp!N1AH(D zc?e`?n%!1tiHB{boMGp-NcUWIx+y^<3a&aOws6vFdr-Zr#MSeZE2R^gCswkG1D%p$ z(wVn+cKyxQ*D=1z-4kTG^8jn9fr&llg&S)E+YYt?FzbPvg1}Yo5l0+d8goC=QT@h zIqYg^0>i`AUQZs<*d0?~SL2j6QFJuYgq&n$)xH;FaGZ*(AfU;tpsMHQHs3l?Lh-e$X&L{IU$4(#))I}jKXU4o zdata+i1s8dYjj!nrI&i5Ny@z|%k#GtV$sU|ccw3=PHSPEBEN35U~4m<^T76*E=cTb zY&-<(?$M*iEUKATQa?qn)AfR}GM_u0~5C{wJw;_PSjHWsD^swjwJFKNPLy@zAB-}*dI zURE7E*aL<)JIs(=e9O5%&_d|1-tsvMt- z(d=~+TJDi4;AV{vA0b>Vqo>xRbVm<;`8Mc{5Nzh+Jza4B>ywEGo-> z7p`{PYTJySoeQGPssM6)exo#kNBQzCmooz9D#pWkMlZI^1dsd4xM7Xc3!AvG+f&oi z`TBK+13HAiL|$iJoa5FJFN%Ebh2gaxb)m1FJX8@w=ziAvs<~FwxqF)e<_i6WT*8JW7vG#ehQjwMIK zb-)DqOh}??oFtvxh~~UO*4|CR-L*Nb`e{DNQ@a}$Y4VrrBgZUc}6H!I(mokdx|WaN%xO)A+2JQA|`66A%#j3{XiWB?QDkKtj4v zkuH&t#tzaTq(nfvBwmn4P&%a>rCYk?Ki0SZd*7V9b8gPQ_jw6Pv;m^6?5-eSV(Dg>5*LS-tBjoHSx~FO5O20^N;n4JL8G)Tky=JFApqa zJ8>b9eSG+fWh+;_N-B&!8TVA5dK8*OMUYlqmM#5FUuZ6^$>_KBB}+Lu47BZ_X6q^{ zE6Gi_Y*k?CR37M0o%3}lb?rH?I?Aw+GhNVIy5hmVVljFz(;~>@V=@O|s)U{0uY5h; zX5MYvTmbbXA`P}J$1a`b&?$&Y+`rpvXr}*+&G>>qat%4xgKFWEr}}*tHdbx!u752! zdURw^$nJ9Ghu}kN9i&%YUS~#|Nos#4cgi}hd>II?Th?zBM!?{L+t-^pPQxVT(>y^n zqBRDK0g=8%R>=`lOT|Z&&v=;V{_cPO<*Z&b^>z+D3n`Qka$yDaZ3P1hjV~@KC7XG@ zTw@g7nb?~Vw(Vse0jMP?6C-q|z2Q>zI(9^Yt|~5;PeZZOX0GKDu%P>|Da@z({kB@%ktT`iHU3VhDhyelXtAW0pJm$~022vi^GzFU#Cz!~OFMwxfUV(C^(l558r` zr^nXp`e(hP`}u7X%9_Ww+%rtrm9t6KsK69=Pg`fy#cJk(tUQb0>cI{sDfx!@V^m3% z7aZ^HS78f$mT4y|7q(x}seXo({b+rv%Mhu%dd<<3OY2N4xET44#3Pw}{uh-}!)2sZ zOTe@%(sHDENwtOyy$Szqu<|ipr?5((l{0oU{4dd#bJg9FB|_MMgzEFDT$Z3}@em zu&*TDk0da{{f8ohM4Gw385wh}C(XyxQ*Tl(H&FY=boLdA+QYQ8F;-A#captrtWLdT zP)k?Ek@Dw{5#7bsyK8k6#EpoHpHk1aQ!SWOX#7dQCZ!A(iMlEC$00fvRVrptDqfX| z8^5H-S`)sNU$FKiANnDkRbO2rxqEDYihk*XuW!i50FS~IPjF~fQ|tQ-s#got1`iz~ z00lJ`Kh?3>W_4k#eAZ91J$3xzr|hoT9_#Eq@tXy$>$~^3_XRtIDUhU?LdH}KhiFRL z3+B#(_O!P%^L7(^^=>$_jPtivO7x-X{E7aT!Q)OpDi4eClGBT9nvnrp5}>%PQ~BOf zPe?$>)iUAY>gs1C(dygd(GIwYDql{OPYQA6)zx=PReQM|e*YsCJjkdL6Q^z5nscF` zbt?franGm|n9Jm}SnhMJmzQ5;meZBR-CHGE>=#2R`a!^DJEgMum#p-=h=bos4|mzPU!bbACZdQ>VS)q_v?} zX}0UWL{@*j@*<9r(Xm6+)XMh+29@RMlj6*OHaGuD7(F#J(RPd|8;z#K@e)Tr(r)kGKRmV|2JmoNNGKT1 zvb&~wKO!Y|^Vr1g(9mc~ycH;`U3ROa;rRZCG*CPVo!-Kdk}{Ndf}1;`NOEAVR_=35 zOu}MTaxw>P%8Omz$J?L2R`h?+_l94lJH)6nC$;1IFNf#Pu3697z4^Iq|38;59adC) zFW&gUbR}N5`NdAl&a_9-7P9L({b$?TS)5aL)FUQbUOM&FR_N7-Hv2IF<(SW@2XQyx zgJ_0J-Gr+R^z{|veP`$gf33^~@EFfXSVrRmh%+}hEuiaV(BkKE5miu5&gu5268vQvE|Panzswu`J(}DSeC>ViQnA|1249}s z-_K30^A&+N0}Dd#JQc+|dW_|}tGyUD_Yno;+zSCIhMx^B(dvzko=5%XuHTHwY0gHi z0|KT`tB@JZg_*UFgF8NUR;IBT$|jaX+%!gCC4%Gjz1X_))Vbvc9e++%?daQ(tugwo zqUw+hAz@{QBVpy4p%UmWfKXvic{1i^WOT%Ml$OW%!VUFkg~94;R8$+goP=00yY`}O-6&UEv#TgAnCe{$b*XIv6u4W{ZHE>yK#>pru7 znazXRll&7J1I5J=2$eJz$+o*Gy?#ICVE1#`JHPNj@SI!Sx7KUe%c$&q%4$zpPO$Ux zhQ4}rR5onpmULB0@Nl~GV9Uvrs(?m`^Tx$u`bSd~yT?G$4S@#zAYywoH_Oe#+nW-o zi>xWu;-ypY9eZ@>tZK8jTrp%RSzeg8$sSD)-Qsd-_wLvC`o09lDzO0QhP%-7dwTAB z?d@;_$()yA^Jr<1kZ2cXs>*9seyMfKs;kD>DGzS)c2Dn!+Oa3)eb5N~$hj+J)`Ne| zjbc;SSQA|;25lEv0@d3yT$1)#bf+C8=&QTUDbJou9KO%*2{I!sE!~4H2Hat!he@!3 z>xCy8yb1D^-#?%;h#+6F(MR4zv4=B_+(t*YZvBJY8CU5}*~t2a27|V~{kw7)FH7o` z+@0hkiUQOB6a~v=aw83fTq-G!+$6IGvdu>aut>_87uar(C|Bb^%Cm}7I^RHR|8`7tZu(<_eYSM%!ZAg$0bbWNl-ZOrp32n+4@5EmNqpYy<4y}vfC|QaZ<&NH0 zm1VACK;2)qP{Us*H&xO#ZdhJft?;)H8jU8_QOa?5y}}=h#7~$_?Rajzph5PYdGGgZ zR~e$a$|f8XZ6RPOTZ0TQlW^UWu{Enmn2LWto~4PUF}r#6aU&kr1+v8-z9%Ny-P}C_ zELh(!Zad8+S~46jDx$ifK5O!dsR(FM;C^}V?y&h&Cr-TX*%lqg@UZ?%pv~GRDir7Y z2IlSe_`C|Yt-7AK8~C!%+O=gceRzXFmU7S|znQqdWRC{ztc+Wl`mNYHzjlY*r za++91)U+2K0tsEb6z`T=IcW>rUY%&h#;W$^&Sau<=kQ|0cvCnn44)!hI+?KrR9^_` zF3v=TOS7XnV*hSlN$(@syiM~{DtsCe$)Usaa(C~hX~-897ki>BdYIvGUFzY0U6ijs zM=NGI54xZ9>zR!4q2z)bOvC~6NH=je>x z2(2ikN}iTqBusx=YuQISbGHFwlY>&X=(aohvUTe*-eauRW6F*;wzlpeDXHhPuNb&# za3A*I8nbTjGeprbsn*Tdf}WuM+1_T;Er?EcKP%29AU7#SP;v);~Fa`V*j?<|{^hNjB5Md)}FOBO>V@b>GsoVx<3 zi2FufdvxW}e5=2#tvjjt_I*ssZSB-Ng;MmwyHyQ`tc>F|Z+)>|SzmV3kCrZVu8J!UI_?MM z2%M`*?#=UvGnPconPtZ5V&>!cXjrFn`|i8O-19tadl(qZvGv~|2z{ODed8Zg>%Y%> zHve0FoCWXJ=@)VA6uUj(^jT^%I`K_{@$UsjwfYV6o1rrds8>soHHSHS?xEPQXV6TT zzqu!m#vN_9W`+rOHkwC%qGrP#3uJs7Jeuvye=Lpy*8Xn!YVn^V=Y|9cHt!P<$@US9 z2Yk8HC^A$>ODc~uvF6sBuG^<-v{CE5 z0197va?-aa2c4r~l$dIo0fs-`ReX-xxUk*2&Xv=mE3Yaf<@%jlrJf9h44i4&0&c%{ zN_cDE?wLqcQ?1^8%szBM`AHFg0+;i=S0MypwY8bbA+VQFlju1b!6DIzAO>QTW*be-OZtcTF^PtT6FiKuD# zUz3vyD02E$nP-)?F*Uc6p>NhH9CnCFs&AT6Jo1IWT+xmm3RUlfQP-4v+66^C)GB9q zZ)?({w+h^-B!V9I<#OfR6SL12o5C>K+{b^ijm6wr3*-&gC`*;i8tsOF^Qh zt<&cgXM(>r_pd*vH!^-K6SW7_>K!w)a@uKADbBP*Oc`o9zYPig4qys7mg&R^N!pVc zOOFCNPPb>Xu~i@CjS%W}Df9wq)N_^*^Bi3>`|nIWu?5gNH1iKNS`AI{f!4KcZDmA{ zbNA~Cvb__%ftS|g(&w`JQDCH7&AB4+dL|_?z2UC58lLL!%3=7vLc#CL#UiE1e`ayx zBlqdUML)8cRh_3kB`H1`Yn~t@R_ek9pAUuiFYQ0sPmD+OI_Ey-8j7ZyyKNLJ2P|tJ znh$Qmv0#p#j;?QBhj++j?(oB{;;4gazn_ziGt<50AXdfh1X{E5d{UQNY3U1J()q}= zd|qZIui2#5pFfLBOBKxDEjcZny6^0l#ovGy7fKYvu>jWHyS)a+NMzJ(9b(fTC(-OO zD6=g4>Uil9X5bDSI8cmhzliP6Z#h^U&{imSM%H0)?*&g!&;H!$tb;TE_}5NneR3AC zCfRg$3}`8$`{B!?{LaxfK@UjSQ@!^v_3@JD()@u-HIA$EW^xrQzl0V&JBR#{#}j%u*3Eia?swk0E)ruT20hH~IHOuNW31kFtTtkEhw zSPpD<^Y7gqKmhmSbPpqxkn{pbXT9ErZ}Dy>ZoZ{0xvfLPYPrn;7j^kw)0H81Ejgw6 zQ#o#JJIe!$M1_QgYd!{W^eT*rtJ&{mW-j$T8~)?DM;1Xlqk30I0D9w=oTk;ClR1Df z7?rp40GS8bEid_0n$iI&YwjKg6lwlj&_&aKbBv`+R+j>QW{M z{y>TVi$k;vZ_p9zTMS*3VyI5I*c$cRX`AcH!U1%j4jeyN^2Cz=0G7Y!Qm5k2wq3)H z-fUWVZ#!L=cIVNTey@;@)v2LueX*kZQT`Yei`o~1NlUGn{3}?Ku$yXEFP)L-Nq9e( z`Aes}6B7p17TuI5PxHJ3lYR^B#!BA{ksdKZct>kkR%}<61v!z)2EPUolo>+6Ipz4% z9~pu#%#Am1-~Qsk`hY&)#=6kPn$33bW@5GX+rf+N$V9=$lx=tF5t>80_j%m?Nh44) z-Pp+O&K9Epd%^bWG|hY%=D3Zf_0m(u1GKaf>-}eN2e04MpZ(eB!B4I&sdvSnZ8H!Q zm~+Ysw_eNsy|hgvwR~y}X1sd%cK+XT_+_TdS4;|B=r6qN7b;T|r2K);_3l5B%wA#IYp^m%F}H%C}IVZ!hlQl`xUQ?Ks@J|r>(d{0WRx;?ZM`R_L&X$IOkj&ZfTYEo6RhKYHJ&w;=Lb(15#5@jH}cQ1Y7d|jGVqV zzpyZ}>PjK9_Bo~0<;0l}Yu)c8otH}Nh%morko^O1zn-uTy^i*Wyrr)3*_KU98t2j_ z)@ZKj;4p%(n_rm!bN}I;v4ImNYc>=0zM5H2eSdYQrutM=)~YxrP^sqfd9CPo9xPZM zb7HIfKyYYLWj(FB-uK!obptQzpNlgd1)=kjQMKl5OWt$TyHYKK>gzSziCwhAgHIvL zdmDXgZE;h^>A*ns5W&eSn5c;qRsUqyb$Od0w?na*fh=Ri7%5i`%|CFSC|X{sTf3e9 zWAR~js5LKMDfxR&Gq-x$x*^|&Gtu~1F1We# z8+annua;rM9Vr?phw4=(xT(K$N7zQ(iF`6VAjqzjpwhn~T~&mp*r-FtubHrUrc0-u zzD?;UMj~DLt?aV?V0G6Jr&isYU%Gd+e!dESn#1Mx%Ta7@L+3-p*k@)G_j)Z|yz}(J z+Zq*0Q=-MnvrB_IXv%5DDUP%i)C6Dh7np1Lnby4vcrUtY?YNk%T&JBm9gVu|HB!Us zYRpT6=&h`Xr~J=cJCqhv0W$J<^D6kX0Ny9 z@tx|RwNoEMgNB{9ye9tc*@53FZwc@K6j2IDei_Bl|7O6J<=!3te~iApde|1`@;>Z8 zzl`6?+z1FWX1aamyUgop%AHJfYL1$oKaFmX&VDj|;rUF-RA#Z$ruR1yks;H>^Z#>SsvAOw2 zOAGOF$1gb&f6L-GW`0Kczh5M8WNaJ`&09>>`TP45zjl%6NjwVqmAW}N_5I%k#DBhT z(r~@}|1?ABFp7T1mu=*f_c#A;h_|}UH%M$JCx8F$-IJJ@;a*30x=lYAsXu{t)*){9 zx7TqZYY+-UUAYhC%mcwaQd3joB`C$zyFapg(>A>z(09k!STf53Q)=YoZ+ zZu%?u_dF4P4}Iiiwfcg^8Bc*B`(oLOkV3L4oUI zdk64}KYjwS%PXkKji8Pb&N&P_+usndadV=j85pbzfWFjA5tmi@i0`^GSZ z!so4if8W{~CTQyp+pETOLpd_2A$^0q(VV&Ay?fsYjXZy-D;m~QzIiIXM0)qa6zQR0-PL)_D(_Z;Nl zE;=o;L6}TUUA-Y$TWGML-ljJ%`Qi#|rEW#;+2jAtz(V{?QAF$1$&+8L`gam4P%QzR zx*z-c`rHP(9!~fCsIK1Y=C-+cvxu^&rA38(*WB+P6!3&C{=2b8E8_fBLw>OEtgvth zG=pwIxhE^smr%dD1A`sTKM`@V)Jq-kiiQa1wL;g8J^P}YlC^_tg83D5?IuMx>f_`m@%=m{at4MS3Dd3pH&BV*X~<=FEOf12pbLicX3$?qc)Fn)GK6UCTw8_$;S+{fl@kC+y0(Qf?k5LdUauZM^ zzmI)Jh&w&%cACzYfGpeQtX1!`>}&yO6P4E0O?!B>j zO5BT%w`p#6)Of++XK+n_XcKe1mn!{OW7gBNvSM(bNSz0$s4&sK*8|G)C z#4ywW!8G|4olB&_A8|xFdGX=}gvOv0>LuP7jsY;pe_>BlhE+-cQex9y6cnUxvsR2! z*of;dcpXt$-O&;B_3OpKX$ZMu5uSN?P!K1;KL+VKBqVYD5Is%+^j;B8!tptH8Uaha zZeg*pv3E&_@%31ew;>@nm!`Te@bRg%1O^AgS6lktz0VyY5aCqQ(1>TJ*tM&uq2VBe zvXO|Su;+Zqdx{-xH&RZYIfH3ljYRU-zwPsrFA50U3KxG~IM`-cTv72F_my|6o0p4A zVXeAyW6AJopZK~PL=`2V{A6Wg^S!Gp1VUUOD-jE&-mc+oVk*bpdj{-SyKQLrGAfD*GI2vt3&TAQnYNNLGB8*Y zh27y+<)f5>ZWObK$Z=$wjm}V!Daw-AZMr+nsGq4(LbZLPQkk9Y^75 zRz9pmO1fiiE`zXoRxx@ngP=_xPCYicNuK3j3pc*$-!(V(<6VyH*g6oy^ZoScpZWQD zBSL4Cn-gyXK<)Y9fdh}Eq9TyOGEADKCNHnpLI%;JVPdA*T|3uWuEaG z63GXS9=(B^$HGGcjFOR&@yXMt=MZ-ZDN)xXFAooxvj<~G;%ri}s(i+eLE5-OL-r6I zT@dF!{Gk*f8`BjK^L*{&1Nia=OVl?ouzkQrv97XGVe4VH=qk}SDNFC8xjfw6i>sFJ{q)_`i%a_!h5LZ_NjpquaLhuef0TuFEC z!)!#v=;-KYFJ2IP1GT^psK^28V9txe$;pXW&w_%#VL6%DP``n5wDRn4O$H4uAehvK z2wYK9I||U{3#087WdiI#5%@6>6(M!0Q{XI#q;%ibb`VNx-^2V0T zFAe|^k}Cb#r9G(GXLsCw@ciY=_o1Po(;lQ~LG>o;-ER@7HN*f3`c& zOD@`66hVL*!d*yNWw>Rf=E$=0B*Pup!=tg7oQc2OiF@yR$7Mxi&Cr@w1f9B z)V^(fefZ2PZ*KxAu4IDNivZFAgx0gPOkvwkNm=^s+hef2`hn=1g4%~T^yP6eP|dvC6nkssxI9F5pF>`_ z7_EHM1}36Td&^(8&MANNrCCKJ2l1tmi~pD;Q&%u71vIMP@EW+tX<#!lAb z&bM#>BO)Rq>@d3>i2B&EV@8l(e^-}R834-+6>8}4nzRnrRaRHuL&icR`x$--ikWn~QqJ5vt&Ujt^JSz0>7%S%P<5R!@V?K*#G zMO&}V8yA<9TsVIo;qWb?+B=wLGpc}+Vs_&TnLz#rcc~?ap%P2(>gtLl)|l_~5Mrc? z1Gbe;1rgqmyZX@>L!=#wKV?VA^h!N1>*|Ip#lM()G$HwY0SfXxKl!4S=Aytn4KXrw);EanY&i>Dz9%CTruX zSxbI<p{Q&T%YP3>>#Vxhjey80Wkns#my5)zG(68pukTya?b6W$@RbLUPR$lnta zo&^OWNIi;cW`F;b>~9{Eu$cbGPwE=b1kn`zb{4;Qi~(;Dx&jVBV^B(7{!K^r;X{Wo zsCgZJwnghkEP!g?oiFX2V;Sp`U%vGBp_?7-trUs{re})DIN;*3WLn%`sla!Wr60s3--=t|vOcW0|puV>gzy+E&~Z1NJDixjhnER zO^zk%YHDXseZ-~2X=SIS$*QUbAbuaDr}rR{Y~L=)+;V5B1G4NNAFslmMBDw}E2+Gp z*wZ^8lymk2!ATk&IdtgB+qVZ1LZg9}p<(O}Ij5}x`<(6VFQS?V$H_%`@CE1nr07v( zpakLjsCN7?e?r>tP)>WjzQDx^iSrsNnZos13d9P}aQ1uA@ogyzF2YJlwq*Z@dUXqSeh&n1{$3_Oh z%P4G6lQj)Z%|=8fMB5)RVXpDcyEk-u%BWbBK3#o%sB&8e%9>cExI;|R{@XZ_{{wLRcYyjaz`TaLFNDTt5@>gR?|I~ zum~!*EuY{%NaRt!GxU&xqp+P&;~&Fv6Tn$P;ZSmNGB}NwP+#RTs{iCX%p&V#y|!o$ z6khS>#1-E=zu#D!BjHG)@}cFrw~GKQQ{A~MLr1_cm;YKCR+aRf-{EQ2EWgw3&+mg^Y`IIE#*TGAscE76w^;E3G-as3yNZ*B1} zm@0a_O{{ifd~_7^gWFN~R644vwu(CmP@n0}zT~5kVHDmJUYy)GKFm6{40K0GnzxE( zO;+x+6Se>Ih)cgx9)}wW(?AI#LPbnF2e}0Ho?euViFphrqeCb#}7q)6>&jz_Xo^4fzCcwPR-h zWd3&nqL-9Jman5pB@f3G=PRPny;dLj(~UHRp-i=OgMGa&OAKHb;489wS6?G7C{Py|4%p6|#@_-jz8=oGp#FffE}ec3)-E0bebcO2p52WR1W zM9WT7BJf^4E^J=})`$3b;y1Wi!lxoBR7deYG`e(TiOuB zNynGe$KE={Bt`)=)aN@3Gw?keF~>*^7(f^HruLx;KqR)NAFbZ zd3Nx?mV;M)e@3)WHg$w$j%9UnXm)BOWwvy<=Nd75Qs#ShK#Z2Fg!1(EcVgl<%6pc2 zdKu?G4!zs$tyML?Vm~nR$f@?yu=Qg8^cpQS6%|#5MV4uAflH8}ZM6_7f*ALykYK-3+Wr0NgGJg=LQ)5vca*8JX$m=y+fZBlF?> zW$*-qKL!qn*B7XH!D>qr=K~}}7z#4a{o<&L*k8tlLU{e-Ez_hV7ZqLIl#UJ!TL@``>dcwS8Mo;) z&mx5Io12>jVdsF?V~;Q}Bw_7MA%D!m&OZ4kKr5y(4n#hxL}}!-3ntfyKjDU?BqeXj z%hxM2Xws-24ro~|!JFC_Ttg`+DO(^y>}9gR0np+P{c;#@AyG!SZmhs*-b)y2sIL*@(kY>TWz-Kwpo77GFMtX4rs+02J#!BBiAz7O?WFk_dv zxOi8PcMgcWgq$1=LK_)wEC@PLfNoH?7qhjsEln9UNY7S})#D26GI^fu{I)eUARqui z&)7`U!Xmk0f`r^$O4A8woNaqk7(O!WT3_XH6&?9bSv}5kG8-GyZkAcJ@d?%wNHUPi z*0vZ{fNIK;ineyB)jmU5Zvk}Im^f#SED3)QVDt*u&k(BY52r#tOAm`lNx4JA`K+6p+XAvNf{8g_mGPvb zkqi{>KROHr8n}Vid-oZzop9IzsMjcT&4-DA#d_MbVBM)xr>G7b_yli&imIwA`^*~* zZj{*|J1VgApyJhE=FGJ>c&VRr$$fzQ$#RhcT=!cPqz zhpPZ8JiR8i_Zp(IkgZP|1XfH45C3Ll2Vad8R4RII{QIIRD=P6nb$Jwnf( z@B~7InnT+2%H90|g{anJ9chN|LdPgU2*@JxnlE;?*Vo@y-Z%*1{))0PiL9;%9)z_7 z3`L;cp7X=u|C;$2Rr;R0epFdSB^n!p1)&akq7mjPo{SYz($XYsE*0{ya~vEh;GYSt zZB2{pYY2~on7Wlk7D>0Vs>*8|o3cHKOWz%!iNGJWM%@Zkt;>cR6XlTU!LGQ;te86- zI^Ojl)DXTL5blMfdOdqqR|Gsjj6tE`j>OWUO#ouVLE@QE1I8= zZwv({yKB7wEJN_XXTn8f-#&l+ss>=vj9}|EYL}be{FfWcAM7GFHX_j8lbWvu+5F%A{eG}Y6PnIT z|KR|TrL3*pJ+bin_g%Pc9UCJ+pD}nUBn)d~YYx?hCLp8a&sMUs+X-`M3kE=0-)43| zQcpfKdYc{(5hOrjna&PW;Jcbr^~y3(_o}l|doc)Q{#XhTc2J;vc?BXJ7Bx|wLUPDc zu~4S2vd9_-4Gwv5cD}3!%{Pr4DIX4q*sbKBxOnladYer)&N$yRe{ySZ&nb3l4=eLU zI4ltf4^|Jz4z}Qak-JC^Q>)9%8TOYlm|0ljf4ub%PCf-|497TW7h2{Wr=f{~ z7Z9+Q3=IMKH*9R`u6G0eI}{9?VJ#(kd!Q@Jzl?V!1M89 zc0pWrcXxkR@=G4t-o(~YSC2!jXg8gO@XpZl0(X<`^*h_B;beb~r;m>+I$J3F7rv1* zj`(X@7`Hq_2SpX0d+aUAejL1ElW=m#-OxwTP%&y_XY^$Y4blwZmVm3i{zcen(QKoi zakD;<+px>zQWyY2f=bfQ<(Yo3ElIf3v9U28{FAJ|Glcb-OsJqTVHk$KoyLTaT+Tdg zl=1CDK*hzy;)EFtsx(vU!sWF!QxI$L1bbg`PXV|Dk3%I(W095IXW5N9Dd5pv8^;^P&N zr!8_PGY!_NdV715s=Seh>9qN^T+MTWUT2Xe`MYi2t0Zd~I~%|wBoCy&SCC0klAOt! z7J;)mjf&xmCXWae+^USLW0w1vh!TMCve>hGcLRY?Zf8cVEe)>8nylo26;n!|1=d9w ziXdyTr0?F6JX=lvMz@I}7^$P0A@H(Mhsvvn6QHtei&?%RX+R*7L4b_G9CZ;5` zxO&<02Ct3lZjLQF0;HOln0PMPX6UuY$FpqAg>CYf-2Z;`${W-F&H}(+>C2aTbDPez zG%msq1ebb$ysH^8D#sizRYWGy@!=#~XJo?(k55Tyb*Eyrf!`frQo+z+m|QRj)+`RM z77}O&%}f*0e$LiZBV$dD{WQTXUmuujYEI|A)9X~ixGyT`aCXhiuP)(sf}w;v4~I@( zEaDLz=`kMHuf@OqCSIiPqc$eR&vw@Y{mS5_n;tAni5$M?RF=tvWau~=6`(Ph*Y@jv z#`3l51=EM7)7f;o^R~xeyaj*;?F_O8>wst?TEENgQX8cUKvQ z=rG8UP6qbmsJWk{#OUF^!PaV17FdBmcfkidbRgJiRTe$zAxh@B0)@1SNH3XNap!wvv z9urcI*WFQoD>P`)!90g2gC@=xT!tF9ID?x!LPa&W_*B<)sgt$+1!~2tg2bSm&B@mP zpg;jBLxAh_A`WhDML$13$HjKTZXLJTiZi^{LpNb85|7|1C$e%ceYE%QVwRU4;bRAq zh0^Qln1YT@^4OS37T4O!3h-&&Nc`oT`9$?xyCi1WkdYSOR$x|Yk00zuC=iJe@T{y- zVM_yd+3}X|0`NIOQP9j^FtZQF6b6Hc*0&ItbJz6yiXPW|TuGiBDbLZIbr2Rp&2Rq9 z6cL3#xTa=^0zFEgWY5jk=4NBGc8OCmnbkX$Dc8Z0g=`HF5g#A#Sw}*|CqnOdb#1M` zkB^+kHdF1t&JUV}%||;X$}^ELjS&n7gRtQYlmtez%0a9q27J;(11 z+;m_sW3-e*$7l8drE^4Or4&%65wJ#S0kUWUzNo85Q(1X%kJ>f4q+KMqpH>z~_Ly4Z5J=Z@Sss(h{GMp@imQ z=@n9Pa;+LcPie9T!_*3R%La{={-;Z*V$h6YVb{r9cK0@yCd?CoooF|9O9hBjqlv7c zySdux6?8gTcVCLZJw;XXu;?;7;&`KH;vutVV|~5rdes`w@W3FV3IX606y9OnNpr$C z3#{jlj`N5igexO5k*9_oRu)NRtUhH?^^l{pPOBBXZ&+AZ2nW`z6`cJeM~}t=yyi5+ zBh^e0kP$ekyWp8rfa?#-g#EeEx+8>H5CQJct6#U3n zNM3$#-!>%r>ooQ^yhD&e=bD~jKG#G#J}mnA6ZI7_Yh_BjaUt z+y+3#VHqx}x7UC7bYveoa-?Z!Bl;4CA&BDTV3AZn!RM@no}i#0K61fq1=$!yBve&# z@h8BYgcU2;KscBfPxs`*BZ{w}UPVM|Q zeyAB)+1PkijZN!@Z%whPyFy?PRR1{`#iG0-b`}aZp@&mS_*}2ydfY9jhTD5@zkB;O z9C(66*Y=~d)CBdlp#7gu;43^IpGdw6tbqdT{9;R zZF9~gz(CwdB$!yfB}o2x11iLUvprhpgQ5ZDt~A;ulgYVEVGHRcw%s|4HGU$)gr%-t z(VOVCGLkS@54X*=ULxlpuJo|Yo2GQ(SKt-NFCLA=R(Ut|YxB;B3s#*!x#RQlwCr-b zzxHZMqiNDC}?&;)T!mzIGaI!B(LI6*^xB%^8fDvn@90Kv2=pu);1912%Ne!(?^qaC$cPiEu6^;;E>x-z#t+-!zQ#5>(VWl{hHM|gyBEt$RBAA9P{P0n zCMYBWycKaM)Bo=2%i@XZXsi9OM;hE z&_;GaH8JCXYXt}S6K!>64Gj|>szs1^2poX9D2eZSCOY#joe02=!*`E>8z-D`(Od{> zmc73~ljFExfVQmhWIJP)#MFIrcF#$*s`bk{*E;ctmrOf{U5? zI%eDy0LBQAjHeg-`SbU$J#(|OoM&Lw9wn?loCk-HEJ`4 z=V~qz+}UZT>P5m90Q?}xkB;1jDVihQEvp@Z0UAGhY_T&wgHU9JE-A^lA6-ZoO@7Xu%1P*U z;e#`CR7{L12Gj6-=uqO$^x2qqqOrt@x*N$D?wLhxG28~#@@RSxzKft>QSp#y1@Ygw z)YJx}cXTu~hV$p_n94GFF+Tuqm`DVlrDeQ8Arbrv!DoPwCe9stXTV`Al+9hHL|-9D z*dYyb14K*f9KfmdQ1yj^qdLjpjtQ&3nN2w-Sshn1&Aad*g|8)lkA2DH!q1-y0D76r z6p`Qn5x$A_%>TPOj>|{i^5Gg)I(xFWpDKb@it`}rWbLMdR#`Hq4tR{3RXq$tsa(H) zJ^deoh9(&DgM!&Xfq%*BFRBm&2H^7ua?}KM zH#ic)Ru+wg#>7QkY0xWhH@w|6HCFCGM@2=XL~7F)e9bUJCLR@I4@_1&@_le@iI75o zLqzF}+uycEuKawoWgC%rT>g9`ht|+qS4(rt#?b7yBOLq|T^EzIb5-Dt9)xp^BSLgn z`YE)f(dtd0xA=Pb9nN8RsL(?boY9)=hs^~yX9uf-^N+(<8?9QxT@sVq?+!l5HOVdg z@niG_y#?_I|IYZh!TP;!7f)@NsM|FcE8gZpH#fccJoKum*IKy)ZgF|EeK!md=$n-(123Dl%US?!4m?C0a$qRT7&3Vdhlc_8muQjtV^MOLWqjxl`wPbT@F?mtU8Mmoo&w^C{C>}|CVj}n){q(m@ z!!^M%FzY2KGVtDwpes)yAp=uTr)2wMz+N2RcKrZ7T$1f{&0uNQn3UCnnu7-s_9hw) zm@BB+DQzrm3fg;N;vx#p^g3$Q*^ue>^cd`xNFR~a8<@pVMGebi-oeu!=z!r|)I(Wy zia(m`2C?!JN7u8%h=Q8!yh+8*9XpH> zr-+@l?Uu6syV4$=%4u^Ig_;*}Mznk2u98 z!WhUzLTfAc8y%t``)UBYSZ%kB1%%X*CLBeWo;kM}={zyjM1bWpYy0%&%NM)C`zT${ zAq@f|Z9I`$`hii9M;Iwsh@u!L`;@L#k-n`c;4nP=`hvK?^y6~lF-zN6c^_|bfH%wb zdh^n>6{y1($PP>iWsRuu&(j1vR9w&;l0+y299a!~C_zTHS(QBBzNN3~C3EUmX0!ze z=K!({{J($yKt}dI6Gu6i{`}`>_6Oh=@$dhNp8n5s^!WeGQ~vz3{XaI8WRJ*GZS1y? z*(Bo-xGevANzman{Jn{2UqwYnvw%3olo}nJh%qz1{@gDH=shKG)*UG!24Pwfq%4N0 zI&GH!+`%Rz8fTJ{l3c-@8$cW19)r#wxiNV zb$SyeA|1a)2tw1sb6?_>9xyX#y#{oSV{Vg9$Sx5A;4q{QM_n)uMxt~c6#!Cq0)|&g zb&0CbAKX9$Qbs%`$t_YC!M>x^C*mGa^xp>}jJkVb3XrgHM&*Em zV;5`o?}cieGilq>`h{qMgU=&crl6ivusR8d5o0Y$!58GvH^xE%2ynvb7r+QPJs~#s z2HK6-s|x5|osO$9CW;~rjUWQap}R&wm)!uzG!M5_VG9un30nw*k2b-4R==;p1&g}35xwDvh?5}Oo9!b8+XZF3Z1AwxMHLUT zmFVz+NF<5~RLB0!Cg!$5Xv6z+>L#PrYm5O%a4A2*FAid}U@%znCr0S}K72sK{S97b zTv`gSIky)yLI{FgBpwreqqLNi4F-B9yRsE=nFw|SYw_eO9uo4M5eS8vt+`dL5Ajck zGEGoW0~;2NDS{ij(2Y_XTsD%$#Q!$XcDo{8keSlx>>8x2!;X|_h13`*BGF( zx@{U|%>5stn@5}uyldp;IzlvCMWzkvJ|?-l?;##E>RQzCDky@8N&%D%DOZ$e+oE3C z2aj}MZx&Dti;aV8H5OS}ntcCms^p!Beov9YKv92&r~4SNE=qw0^it5NW5G58{xNVV z$=<1o7r!0`Hxjr*baSPyl;>s13G}C%o0?FO$e=fDPVK2}0geKL4GqNE=kIk^#52so z<&y4I971phM|2K-P~dyQ-x_0FB>2D+8xXkAoFf;v4e*mp9O83|(Kp`Rs`@i~zt$p) z-}HK?LOa@pomyx9y=Zn=oA#l9CWXP|Ti32V$NMD_Xy(9h79Gy08Zo?Vg?<=LK1QGO}9k=C}R{) z8EEdYtEYXBU9bc1hX0*oV@qsLQ&d!>qN9sHc;s~?hBw9(@YkIod_ZluOJej4rMxm~QZRN+c=-_C<%qM@lX5vtb=rVLFkHrs z5HACvrzDRUf-ylqyaNE_7zK=ihfIt$pzHvRc?)q2CJ8Y14Px(vhcB3U&=v1s$jO5^ zMHHeK4pqT}!&-R$9mhW<0hQ=u&<5NMJ-|!!Q{xW(Ui>_$yY%igBE*}weYuR`t^g1#==*xU)ryjijE%-AL|*~q6w#B% zQD~gXK;**V94~%OG4?ZxV6sf+tsZ7$5K{yBOBIGKr{h3WA%78U%jr0z4I&r?6;mVf z;9L>ZF$|MIwGv+wog_o_h|onNauQNChGJ+1j(Ho*c^wl_KzHliXP^^;79xt1-oiqR z>fPnpVv+K12!6zw0`#6!p{@L!s)zPN|4@idy$@MMAm%gnl6rI3rI3GN|zGW9f^CbihgN6Yihg0wuTMEZ`i=X*6oagQes1N+e&Sr-(reZzZRSe?6O~!1(dok;1c==H}-= zeztSat3Qt;=#R;4;YM?+N_@%BbJ1`-eUrs)a;mr>-UQsE(|?!@To*F_(JkC7qhBvw zrAGOa+5Ug8G_L=s2BQBL)xiILYs&L>6pn@ajZ68@Bbp`L-;C`4Sik&FcWn2Ff3MTy zFYEiUYxwbobz9kjqL;wmS!w0r?U(&0fvo|X5^@uXo;u_O36&kA7 zac!nL)1#X^q;kjcznyia6Wv&B-}C{A>Oy8nQ19fr4Fl=TMdy&-Hokk%>*D=a9_Dddb@)6&$on$LXc(zD>4r#e>mPRTFRwL12nDjVl3^jqEU z8RBiuW&>{L?)!;6JUjnBR&TCzzsuYmu)6JFz$ob3_SyENbiu1lv<^6`zhbVZ2-gy}!~T)JXt##bIGM30o(g~QUv zm1Y`5IEfdXhi7+bX*FIM=wh_@VNWASxVLZPz-8?SVT*=)Kd`#f6&u(4DmL4QWlewd z3)4xkrS$Jz%U^g_*}pigOwc%~HP1!4PC95&ef<7pV3DKmUXF>cgqGVEH!+F?Gih4& zD*Z}_W7!tvy12^xG)o9Z;KyMD>|D7n-D81g+r5RRj>(=8YwK%87mqE7N^o%8;)5)6 zI?h!7dU08M-{!r0jNBLg+`XV#)YmcXURf}gKi{!lLiFIl!~Q#b0vauIhh8<0ICU&^ z(1*H5RvxhUvh&@$6O2dHrh#BzmZ9GP*S;T=)h$~ox3e;*)GoigvCH)1fN0Bhn=dP; z1BFc^KNb&}F5OhkFYxTb$_(kNq@oiZ94s!_n%`0T#jSL`#2x$m8Nu37c_lzr0}f^u zx5;&OYKytE`$J{6DZ}H-#8(exnTk3xbOdYbDL1<{0!{1t)B@aht5NB)hQ+SKoWU^) zD`b9#ks6px#kRzWT^eN{+S-ybr#h}5d@Ad-7*Ms*peASUv5i01VALK7&p{8&R!fVi zC9xDKJbhq9zbOwjWj$ceO_;1&yS8Ec)0RT!Xx^rN{=QYiPC`wc?n*e)Jm&lF^CZL4 z&3%7njXTrpvonLIKKc7znf`Pi;L7>32Ni)gzf5Tb_g>ac6CSLj(kzyKar4=qq(r(M^tiTy>i_n>4(KhtS{<@8X|+mmF`QiZMFcO=^tVF z$sUfyz&{KJI@Q)+m^GKqse4y9VK#|LNY46g^ML zkd=3(wPEjksjX1W?6v!TG0|mb3>|g(_$8PW>cBKVv(L&mpT+bZ-K8Ar*i8w07Z*$U zJ*+Zmmw$S3XvZaJT|N{}w2l0rmbGPR@>-AK*igTKpDBsH*~=$28uE2=K30e_Pp_`j zQQhHxmpk{&#=zjvyWA>Uny(6CL&m0`_&PD2V{7X?GF-cCRA z6YlNhwZuaO{4A8LW5hYjukQT8EWd%)5p#cAL#h?8d(Lh{B_A_Ui}pV-T)o~i_bcX} zuM=~%&l0w1ZFs3u`0cJ_|AK?z$K~YhIKL~`<&Rl6eBP#8*=M1bJUa26NQ}x6{mXwo z;T9^diy5S=e|$7^Wqx=;^G4C1tOaJ%6NZ<8qpo_~Lv3HdtvI4MeUvq7%S>JHNOj~_ zXv+O-^@(CRSSyW;Ra%-TPwFYj=w-NqfN<;&x6_Q)!QGbG*qc^4>pf$geux52`;>Iw;2n&Y2qhb zUe*>@UcN2effu_>r_1)+JM8XH`F>fRMeT_6(7S%2z;|C9-&HK#R@bQ~PlGAzSEhZ3 zCL#cp;f4>TP{-{2?YCzc55{Aet*-*fg12({_^UjtOi4EXAenJbi72G6dyHrKzU#8j z9Eo;!VRSHC=W7*|>#V6~#(LH**{Gc<+~A_^-jJ!<>1F7H)_*ykA!+lerb_&mC9~1_ z`+w@t#b-<`TM@qW3K!S^x6|Hl4@tsuiKO`W{GEBb#!Xb3k9pq}hq_BFx^E=FOpB*! z&YauDG+)XzZ#SpgZ%iF-9idt0%?o|W>+L$staOeh;#FqeLvQchx=Rvradw)TdR|PR34eyVVM& zLTn=|sACIR9@7>5?MBH7DNO~->9nVFJZP_|OBB!BlB|HUz!uUoc%PC>CoyK@hE4qG zsRkKZle`Kk7o&MCKfOJ~EIFoTz4i;T@O z2JMae5$fx(pnDx;wTz5nwXCv-+GgbAVyhLCYNJ<3hS9OtSuWi#x-+3|V>(JXO&*2C zzok;xZRY2u%&;&TbT)C&O*3S6ENn_LuRcqBiU@lubfPMPwvC?OZLe!<_1;%i)6sE+ z_f=Y6-U|2rTV+~?`tg*a#V2snr~LM8l5o#-FCH4=LjaWQQw+4%MkL7P} zlIOKzbN&4E{f0YV_Khs|Jk!4^Wz(7%bvwPD{jmGJl~BrQ+9!U$_P;6v%4wp#?_D!p zDz)9MYf~gHyOIZZwjT|0PvOK@NqY36G1@BbRW-(u?5L~RoTk6gzGx7Na68^D;%;cN zqcd@(kjK&EyyB<)NEVmbbEx>5ev?M^q6YnD*SMNiME<7g+Lzt&0hDRC3=7q;w?=!! zbYLW@Hz@vb)pmqS($NUah_Z6Pd=t2&|>ZvuCyfpm#_INi9 zj*F|IS2pWzWX5uKAblW8NG^80NcBLn zGy8mL*`B&D`IMwLlfl`Xi5)M6(psN~*|H+;`s5j!_>VPId(1rri)y=}rQqT~Iy-Kq zpv%#1@5SrZO1qa?8)xKVaA)iA|tuJV%B@#=9t zPOg=(_p7g$1AN>qDI{bo&!I)`HuYX8AmjhF*c(A=h`~SAv67N*Qf5E(c1$oJJ>9o$ zN|D1ZVe8* zaJ#Z@%T0k$PWVRtsa6$V3uZCr`D)%%%o*Mw>OuN@$!Zlp?LrQ3W!|{@=6Wg0^Jl+N z3de`K^O!*!}!+}n&;pUZWGl|w|%Fi7Sf$#J-kOPH&M9z05S?eR@YoU^TOat^X>XtP~3 z8Y`R(kh1QKwQZkNVGXRL*Yq(tXAP|jgNibr>u#PFI+zx@xTx#S7`>@C`8va8kw$L} zbriB-wpzcJtDvhi#`HX%zcHCS-$&~ok}jsaZ2Vf^J6OD@K3`O7=>*{io(1 zV;EU7?$lae`kmFWvRKz9X+pzNbOGbA)abHTlHG9&Os{w&t@$Q-^t&6M&7NltZ*Db{ zArsO?S&r;jo;A$Bd*>eQD<_{txU#LO7EI>a`Tnrvsd^!Im2G!`Uah-tn0lSwftfL z0?yQJs?=9NS1-ha)3(yVu(*@YopnKeKH7FL)tQ$3{FUC^Tz{{rl<2!GNw>HH8DlKM(P?sno|kti@B$EjW__m2Ej%W09pdH5s|5b~t4HM$|LN z?HiE)JMI&uJrVJ^U|botUzgDmo%>61u|iH&)~ZlAcen*)63Ke2kAI{!@%Jx&F$Ig0Ny%0<@-v(haXY%z8k(BG z0mEjqlhGJ7eSp1dBJl_MRbqQu!Q)!yVk7o%dCP&(O_4)odX0zBvD>FMV zIef2k?=SC*k(Vy!&n0H36&-8q)Vxp<+m~i)8n|lJRd>6;Q-QCV?{bew zps7)BUS)w!s<%+HPDY=H&a#zLwLLwLLlvcuBMH=M4F3L;p#0H?Gp$#(sT}=OZOH~{ zo~m_7^XQdo5(QHcuU^?Ze(BjPQ2ptg!PU&YYW1w0hL%39O+|Y|lN*d9=N?~L_;WCB zj%T2{y0GO-2_MG#kx*DdW@Y4+vu-I;aU*q$xf*%~W)7M>tbxb*%xI<2rjYjUQ;qUf zNr7EZXgyygPtDR>+UuM(K7w?dUT7Qjru5iGLBXVeUD3=*WBGI*9l2DSj>U&XZ-W## z2}h58-_glC70GTkqaQr7nwN97w>MC)_+q}t#BE!*p?v}hq1%;*cxlPUCiVA>Qup_7 zd?^0e)W)c#nb1Jm!n_}hY!|W(n-(~j_N4O{oBA!>@uQ1<)l-$})%gvI&jw%BI&(CP zygIhxO-3G{gIfz{?n%YEKj+bovuY`B8mOcRN}n()bUXZWeQ$-;YoG9ySv~Bs1CA3+ zzKDZ|sU5P0obyAS4$YS=6lzZDFI;bWD2$9ZKv@0;=XchquY^@=K<%k5t;H<`8Y0H& zq)u?A-^>7bEiFFsMsup~8$d)^v;EaWu5?zC%gm}^VH7lpu0@W?mR5{_(Ci0G-H{T> zTWGpowphnr94@1)tE#4YOfK+lH%uBq#|rW$;t4tqYUG12Mvu5m4ALIG*pBr;{t#@u zaCl>2<0(GHVU6HHrfKql%XY=p1@u?kJ$iS2uDWVq5@SybMC%wW9ER|NO})bTkTiK$ z-y|J}98CAF1UBm(HaR4R)NjQ&B^8dCoDeyH8|fLX{2@Gf)3N0o3_8YDC*%ck%xL`{SMfl@H4t$ zamTFsX>*G4tLdkos_L_Sr$H1-%1luobAO>6IjrzpCzw5v(J2?5IQm}okfh1{tW-a9 ze0;PfTbfxo=AlJQ&$y5wGCwb1zkzREjA1^{U@wiGYU|-1G5_{YOaKpa_?ILh&alLM zCubo^+$g2Sq*y;mS9-^;KVF1=GV_mc>2tjE!^$fSAAS&!b2$3$U97iI&5VY%t0zTg zq=RxgH+T8OII~G5eNi9b5iY}S!FH4@qb0^z-X*?ss|MRsw1SRoyV6t*kx5O1-E(edNkL!Zi>;*QsFoffP;R3Sao5>NRW60n{Opqv1y z?>4pjJx7yapx;+Moiu%-I8(~g6h)U4S&oi;vOTh5thVa*`NS~C?jPhAsMG_D-6y;Z zr~52P^@@(`U$>VX*r@=F(UjF%t0>*x_{P`=zJ1kUNs6qS(5HwM8~l(hP1dxu(L!nj zt4*IwjLyxQvCpGjhm?HVQ}t~_b_}Z9Hx;wylw5|LC5D>r_$EAvOz-=2rfC^nS6G=( z;p#IFRQ^Nh)y1*)%Xv3+?$=c0l&{;)J(B()wpXWcWQI;Xt9Wxtx1*qI0r|f`LsAyfsU*5NG+{qI-^4a+9#d~Q!69mxG0K+MOOno z*o=Nt+e}6t!-Y|;CjVS{y<*4V9b~M&nqItaq^zV?!np^Uk}hYzUP3(5&9jFOA2#QW zE+q@W%j0W+RO*6PLBSPk9`c#l2?lmZ_?);D0>6AwAL(?}lqi}gvI#kK=fzT+(^Kuf zZ4+Mnn8e5Gfff+0OrO3uUr;6ftqE%Ea^U_u$@~A>VRCS^ncYKCD%n@`oFpH zvIH5qaTkbRAng;_9IA8w__@Xzb{RdxjJ`fd`0#HRe{wx<8fbVp`M0j)8+L1-)7N)x zYnz@HcQUqd9kFIH^QN_9oAZtyKYmF##O#CA z#cL;S$P4+(2?E$OHutGq#$3*}h(76fu*X5R(D2)%im$kR1be;!l7oym7$<(7cm zgXH97sI2s3yRR`-UmAOCH}Zv-o?P!`+X!e_G!TzB@blw9@h>BOHox9|`#m)WyUe?U zh5rQePB>+$Nj94T2m^DtMFU?>5E0ah+$exg^q*9k`8Qe?ZqHl4^fnuA0Iktz06MT! zy!S5J(KZ*chl%#>jMKmRlgdDjqf1v{_-QTyFol<#r4m42SZl(mB1k0p9~IZ}vUnqZAiSH>)|MCHx5$7(Q9cmp;9lPFjW< zEo3JeH`+$rY-DyCFV3sE%*P|y?sPk(mC>&l^|(98^0Pa=(dXeO@y2mZgzK?x5eZsA zh;e;rvGqT~;flsdTX#Kh+Kf;CiHvXdqUsYot8YgY9C`zxM z7O=@+ndHVF@R+z>_{zmSc<5UjM-LlLUz>X?B=wlg$XznIk!Xdoi(=F z7Q6j_-u7RgwUBXDS>2`+U1u$;G4>YPg7auqU4ZhgkClf|M~zCd1{4MBy(kpz`Z%8^ zMao#QDV26ZQ)zs87`IukWo2@44Noyuy?CLNFE-9JLCN>ZBf-EFUxg~W)cjrUzL#9z zU$MKcSXd~fT0B1z$()T=$(*jFTfCY5>@v(ygpNR>{zAX^si|gZk2F)2ev4l3{Pfa@ zCCezWM+;caj7q!GJCV-}x0O#Y8t;&FJ5TA5q$EwCCnBsGaZue=!D{H`bW3MxsO-&v z>pl^h2-#JIoV|!u`E%WQ20#CHW#`JU=f3q$c}=XHOpOj1+gHLC%ut@G#+Aj-)7xdV+}B@X zhQ|vwl-&ABZ}R;L+I;WE;HiQ2ij66oyO|CC6=@Y7OZWdw6vlF6&+gp@GZNwP&P^WA zg*c1HQ)gQ#Llom18UQN#g?^u3xZs=cvNjPDS=%nNzENz)(Ulq3v+QX{Vjpfv=z4Y- zaveu+`!5VuEvGj;kL5h)JVuw$uOc1b7YT~8P@M!#82 z64u1m^U8zAJKV=KTsWnv-Xp)HDrt*1B&Ca8FI2cR%O%6l@3@D0*mXvrcHrD?NtcET zBZvNperUK-^5!LP;c|L)l8zDkzR^N)q-Fb)C_T<=?T-AZ{M`o~tDoPn{bQIh18FDM*Ij!@XO95~;P~_Un6^(`r^@KLEV@{f2G8jspmi_2@|%{V$MaE?$k%G^eVl5 z8F71~{j!`nznBhxs%t1$z14w?XR0-n=YZ4H&#W$E!8#=dC&818Vmd54a83ZmsHvkf zHZLzdmbp%mr&oBe>ZV4fDZ{)q&pmSVsq}Hb%YXdZAiY%^)6~%_`y?>A=%<%ybo0~v z(Z^StCsEXGSrgKfqCA0byIPXiDd>9n;>86mZNs`-pQ4je3Su0`Vy#B#^}TitxlJK* z*J6MH+w@3K^1R;xv#ARso&I9}EuhV=6IMPEeFO{3c#7@S=1`P#dQe|MLsvI<1L$?|O1|L@VPi2vpS?Ea7)9>2PVts#&a__eK$TXW<%SiNHP7V9yx7eh zzH3jD5PMcfKwkUV_L(XtEBb{$2I!QplGd#SN^Q==#jPFR?pkZFYd#m3vEXFi={oi@ znfdorikP`c^a`Fc4NI$?J*J~+XsvVhtmh8ZEs1$~E|1PA2MIG7{OR|;{;V4DN1fyr zN6k~O*xklLwVa}_ao$zIN#?#+SOavS`VYS>lTX_A(zpQnVks??LORj)iDPoiXFDDW zjk1z9Jgp%$1RXQS$JJS{ucV}n~gwQ$1O|w^R=NU@oxPDeTb!xcLlE3usH0`hS z)AiLJERjOas1QIsEtAY88_CgLVLo|Ys%w+_xpP||yrV9Al9wk7e0fKWbq};ffg_T3 z;O~4jQ7bg))3QEms_0OG;nF^I*NWNSM=c5ig=$KTY9>=%2%O4Ov8K&rwTPmf{{6aO+;t+GHI9>hZ$r|RjzP2a7&(@bY z+xH4*msiStgP+>j=ZAQ`-KX-+q`A5fRy_63Po|_U-M(8(`=^;q^n%4cVK?1|>YBf1 z>F;@OvBhqg<&yu9|85C)&K-g@E+}Yk``3=yc0dn7I3IV~EWHL%eD#Be53!B$U z)2^k@-*}7t`OkJc_wB1|i*5hI%$Ap{BpJQdQb;p zF4u0#2GtFsJguTx1v8zlNKEU&H2``tiDu+l$qapc;U55iz}9qJ7@-2il+xh@+z_PE zr8ciwK>&-J9`uF|0d{u|{2dH}DYcCWKr_LgTc7#O52#`wmE_0Yt~YFb-&mBMOsF3~ zWnF>TrlChVZUdA$V2(V`%pB7p@KESm)&W8-N$mxAiO4#P=8s|f1K`#T(6kVVxN#KT z&AJ0$ij5TuP%MBY3K9m0(F(K|k{`i$K~5_Uu+wC~`VG^@!4!d-1g+awQ9QafpRYfrnJ<tOxU=FHejAm=U`0JbqHk!Ku<{ud(oeu(sseCG<5hiV0G&JT39hzN$acab!&W+fpJKWx{fzeze*S7CFdiZKgTx*UAK7@{j8W0apu#LYzY3_tfbC`!T87|0QaF8kW-}v zye;%@pi{L;OfLqyDFi&GUa!hQS`0FOe>NNQ)N!-`_|ZaUlm1XgK6Nywn|t%46GRdV zl%9Hs%rrua&esZ}JWaSc>{UB_dHWN_&1 zuOPY>maqb=<2$aBO0<%5?to`ZV6uKVJYf6gHFp`U54v3PLnD-=)gg_g&yxl@q{8V| zD*_}31*6H51zZ#GI#y6?qp?=htVebZKwCR+k)fKQitqOL`kMlxgUujsWMQCZgFL3S<4;TWcCiQ!;SWgu$PE`2C z6fgEl5RO0LoB$bY31cI!=x| zz=}!xd;%N_7w8(1HvwJ^k4X5tHpe0`{=}m27??{@aq%-mx(wRF@saz%FhwZT%X3Hs z&YAFCtvd^JLE3>4))Un$kS#DEgT2AVO|MKV8lc^}L{qS@mXF8kF4n4k9#pza8vHb3 zC=Cq>fNSEKP!>2HR%*I`-@bsr!0pPiuG1-2JI!1dj;QBLI``q}35j>KV6sYTSr1GO zz-miqd!?BIdQ9-|z?@ozv|J5Byy~!VUhQV~=}8nMWX~|J4C0=M9^1*2_Y}aH#;%Eu zM3kt2yo)9gse>dE4uFV4J!&~n6Gb?DK$Ie}=xL<^ukR;J7&maV+Hf2o0dCm5IT12| z`A5sqWgt8yENZwFXI5&Mqr*dpTq`3}hRQIZAY!c%p&H_#f!Xwn0Xd>l>p}XjGS_3k z@`YqkxprA4q4r_uiM#X5q;Nc}TV5Tf&%T#NE+PW_Mt>y5h^XH{XDHqB*BoG)0EKsi z7r+D%evi#-=n{Jo8m?iHn=a@KL@8m3pRSJ}G2i2_Ml=z?GPi_61@WR_`tC~Xwtwe8 znHjBTbhCHkT5xj_c@VB5A+bUvQ!SwGOXMAZMkF|X82LwZtnTm{p?HMprG4%d$QrXd zNVuDXBnkB_u-ivQ>w}J6qPx!+0yhkWijz=nNWEL?JZ-o=i_#t`V}AnT*HOZQA?6Xa zKuJSm?@N;hNTgD>oqNJ6`;uHCnc^2(RR-Zb!WzhPn|lTB#Q_MY(V~CFbi{lk?0&#{ zhfYyljIux6p@Aczd%!OMKhp^AGNHNAW=faw$khzx6Y`-=sp+A753<&{t+!c`WZ-hyMKD0r8@oVWSAiEJ2)R_Gr-yZcA3qPDAN=}4O_>m-eXzd`L_|DI zCJ_2q=Yt>*x**yU`b4@1GnugR2sasA5+s6nz%xiB>g`mqo6fzhkN#`ES0BCxRK;O3sxU@mk7d(0fqL@u& zE``IkVGtQNkOAhQF_Z$)55o9|BqH$6X-4T0JNN9-1n?ZO*6_PaXU?4Q8r!vdw_o|? z>vw38?$aSSo8dVqkBrY=LL?-U+XkwZ<_clocv$GreUXT>7;wPOg(dIIfit6pg-uu_ zL_YxfZ%hR>pK(yO2}26fFfr@at(%%D<`@FCP9W%HM1ed{LN?g#K5_iT`8{xED3x@R zX?Q23RtEBdp2CRLH9l-rCa`mW`vF@|cUge&whp>WWbHs9cp%)l^Bf){Ca&8795^DC zM_wTz5)+En-btg%jNWXnQUh8N#^C zvZCc3eF=dP70daETyU?5xCx>Bs@E%SAxsIP0Ysh?d?iLHkD|jNpSJll%ft+m=MZZl z@?7_R*_H_|0%X|0t-g^-|BlP^5Q(#3Wz~WzvJtYx;4ha$Yz90LfU=45ArWyzNCHV< z(C5(TSXQ>eggr&$BYRc4u@g(P9C*BZ3$|NrMoqVq;>iz~`mS{E18l!idNrQg^KX zBjohHU)LaSvPmZwB(!R9cA!U@2A+OqQY=()Hp(8DsTml))dgpV;85qcUBy72oFS8d zz16|&HX99C2JxYLP2T6&JoNYX?|2geB>+pLMglhRx`ZQ&>jQnh7A#lbp_wT;K@U$v zuUT>1%Ge=WNH#fF48f#{xEOHuNXU{3OGRlSB1E(Yg$J>?(7Q}^kwy?4gxngj7334o z2?X*pE!1ix&Tr2}2(xn2lOKSB& z+!7PabC6xZuR~%G0@OCV2w^l~$6yzv`9P4iS54Yl9&J(p@+Bb&;;ylD3DX|b7C^N{ zp?e1dLqRDx<}cx0Tuce;zln?$osoF7t(8^fL$RaQ}p=g6|_M9XwWh*TpxmY=hVAzkgZ}?-h$2DFM6| zM5ItfN)a@)Q1~X3EDc`5;#>r~Mbohf^0?Vzz08GFQJk6s9Glrdm(RLDmag zObs|o7(S|%6>ENd20EjP<*MP`+8R$+eCew5VZLKv9_AU@Ub%8*a#kD}IwFU@ zT?2+4hnRg#P4)SgV@EazEXRZ$vgyD9|^1GVhO8}kC6@B0)b z%gKzkb)znVTN!}6Z9ougM7V_#N3->STg8|HM3!E>_ya8#l#?i12Efj?x5~g2!Df(? zST*M7-aNWdP2|bY@ROaQqV{e5D{kMquf@fca|)d)*+%W1pB-ckrA3Hp8*`YN9TC;2 zeMo1;AJ!cQsgkE5QA^e9Y*BTd%+Awu)vb$gw_lG9imdQ=N^8&#(;+5+ z`%6JBJ^(oul3XKA7rfDR%W0+?q$yHh5XCxFMSh{vrl7&=GYu@#Uc-LTdeA~XM3#_% zz(|uu%(e)@|F9p3I7ot;s$2&TFg4Fex5Cl|TlZ?RBPJa>Lz{Gdq%9T&W!rQl!EMsc zwqPHLup~hrBl!>br;MT0mIyGeQ4A2B60sNmgu3Kr@;)@Wd79{rfS_3m_E-be)>t({ zPB*=no!2I7_*14{8l!x#hvY@w{Ya8%Ul)VW;bJh;Qu@)slm$^lio;f~f6)v#@ZrKA zB%wl3BE1mUCAvfMp^drQbf)JmTk;#AVF*25Xa+gx$EWHh!q~j}14Q~yDfK6cWMwXn z5w;@kgj6=DvPsl|aZvS*l}4yr>N?J)>Lf>3kCb1dKPH6>bV<e$hvts`R18+Ghi1%hqMxw^F9{&Sv7M+}|26Vb?A z$hH~DXW-~a14GI-D3lXln4OIk-kVXB_d9r*Slc!gdfco7SSD@I& z>y62xJ$v>z@J~oxsrgOkkAXqE=Cldnn5%utl{%I;?Gde-g~lwg7W{@vGX-@;cgrrT_3&@zy` z+WZIYteV=JJK)k|xlp5`DvuqB<)=I(deAvJ%^M3O4>=A6pcJw?6p_}S2yHtoDP%(F zm9(&B`QW9ZZy}1o!|?({YXr1F`^xX$2lhk0I#KjT-+TAaJ+&8TLy}7v)$%IovA7bF z&Rph&t1`ojmQ{g4dFl@uGL4D5LSxbb86oj3kQ!y2FPM-UOJL!ML^K?c4R&UERG3Vj z7#hwQ8*sr?#S&MHXpAb1hC=%Qw3Vq!t1}n*wV=@U>XkamLF~zrtQt4~D+=&UL?8!T zXF}Z0;vvZa#=?0p!_nb1#CNk?9FFMwl2&jyI%sx{Xi5-0PLdX*LWk!d$vtxLwu0}t zfBf+*=;%b!1Hl}X=1sXZ{ijH_KnS8BD1#sh0(Sk#i5TPuIMyftSqD*vgQP*8%XNpW z(dnl+4Fffa?6og{6LDmytzpUJm`yTHBfZB@rhWezY;HpZNeN~8fZdK#QDl$dGWPG8 z4@K1QghXMBu-)-^C=Pzd5rStTmo;O>k_;fyZQ_1RTvQghYiJuGcO*qV#w&jnT;~#oxKimo}CB=FE+9W8jT*o_2sfq3rMwDjExhNL?XrqjV>I5+2H{#ir!Gi#`TDcyZ7t~0C5+#PE}98qB{*~C&*ZnQX5S0J}LfD=E3)e_F)#mB`XBwm!y4@ zaoM2y*UXlyM1&bp%@MjD;gEMm+jx971E~~|j)AjUQn=W?dkWpzJXK5Rx+Ws#I1K87 z7|@=Ctg0*YG(?2`G9j;mR#!4?3I}_f3oA_*CN&Uo-$oRcBRNQbbPwg*5=GJWGB|bs zY~EBN1s`#mbR?iCK?GVbbtva+M^;27J5pnBYHOk5fKCP>VN*Mt!pcf5aRLHqM_Z#q z4<#{eEF*MH`=)DVs)+auX*uIOs^peM*?rJzgPkua4CLk`)15mspi%TC0mMdM^zS}-(cc40MrHU4C_aoKut1UwvXg`C7x`H3@**NW z26Robd5|Q1fCsv?T5ZU?N%+7?DEaawdPK`IlPEV$)v2I-xSn;Z8?A{QC6T~b;p!bp?x8Gf= zeQ~jrm^MC-64IfW4Y7a#q%_n{7Zt>VG~KJVnN>auedRt1vt7$N&}g!$j>$N`hlswD z+yub{=CWNxB;SyioCpd<5CZ3cUFqf6MTt5X;eEJMCbgKQirzIk`SoaxZI^Vnm7*5n zKp`3%YilBh>S|v0Csde-=syB1(bGe*YM1W=&u@YAu}GgFnEm(%E>Hc(uUi6Fe*c~H z{l3ln+;y>UP?iz#yd0K=B&%caYW(aMvKK)l!r=KokEnCGf#;wH|4v#}R=W1-RZyO| z`Ep-of1{4E7LK8%sdI4^9q#U`7z<#)Foo2OdH#dB z`hUXbe0%-B-ch+W+r@WQcAf{L$Gd})3?^}P{3Yp(><4^DlY1}sa+3>b=< zn!{I?*yJU=*x1Ig8Aq@~Y9;xkFx!+%&?3U^IdVc^)1XdhWq5tb5^^>}a|eN|N^(t8 z+e`;`$b&tx&)afU8^s||VHsshFcv!jNiPTVW2{Oq=mW%6B#aFoG-Z%R;Xi7{x6SIf z?$sB=-|qkS9(3e?2NC;bP5kFvdI<|N!2^0Uxbi`Nn5DtLyjGDfV;)FCNqARvjd5HK{EQTPqrz(rkS zUw3x7`xwtY=5Tl5$bR8XUoZacxb%%~<9MGIt1Z4D+a1(-rN$K3kZ(9jE{VkIYHi#` z;VWzMicB_TU}W95+lal%=zIze{<*cw%L)va2A_+1z_ud{`U?u)E#E+TU&X)u;oDIC zUyP)u+6!UsbBiMVmq%+W+G0=otucG>SDysKL0-dw=Ux29-9sW2Cw)Oyg{1f5>kONU z#j?t?c=rZ2Gcr$%CzRuPi6-!P%?f4pu7`Jq*l)_b+w9a|GOll6b}N>*izasP9Su@Q z6inW)C+0ib$=PY+o|dxg#D^`x&t}!CvKCCd2X`rZFC-kkm9Z%|%S3rgO7o1*?g=kS zz?$}>TwHe1A%%wI5xO3HzoS}XU>RMTdAHap$EYjQRg*HBxmZ>muy>F8qm5F^>efx- z%PS3sveW1vlr49P1{r@8ruH_yj@AmxQn@a>@sDxt3i`*%pb(@XNO<5D&XJ`77?SCaBsq-*Lx<_eZsC&qu$X*tfju{D7X3>y_Y7 z*W69la66jV2I8rHdO&mm#3uP=l(lT-B~;%0wz>4VK}G6qrR3=g8a%lrEe{-TPP!)D z7&L!n9y4@(UN(?zrJ+__vU#;!(yq(p-K&ab&IPi19>@LmV!2Y4N8>2HbEr(W|4O6J zUOBzmVs_Y&TJOi{3@!Czg-UH$?X4T55vYx^7QUTXFhb8e+9 zQ`$M(sU*BvGq;c8V9~)*_RHf~WLP@c`Wb(`9P;}mP2(E|yp$RFM&58g;gCz0He&8S z*!Em5Z%L>ar0Bd;Q4Fj=${;sXR@-_q2Z&fU5w?lwg29OnoTiVceAJ~H@eLn zo4^=Nr!q{}tO|_P@e_SvFKcN!Bq$N`Db4efu9eOpkC0~RJHInC`d!2CR=M`jHK!|V z6U@}+wZ+T^WCk>7`ZZH!<4fZ)@h;CO`L> zPCDK3MKkm2(~ps^dY^qcC*wZYq%m*zNz}iiyXhaF@eS%eANQP+dtzUR>5KVYea>Sa zFT70ZIW&_rZ0=i5SzL2Rp1qCcnp(c=dXtRibhnabAzQMA&Cs{ZvC}s1pRwMb;vZ8I zGL!V$>4=X>2E3hUJC4Ab$y~kUfH@E zSIx_|>{keSeM#$GBuAx6FJC-9-G9xBknZ`srs7PtWaGvyfx=p89w*`k1Sk0S9$~NV z`v6;NOD{^y^Os4Ie{rn0njMC*6*sBrKc@X?hgQMt`bNR#+6K||qBGZJG0oZf#$8j( zlUn9p_BbRt(WNAf($u@2E*PZK%trhi&w2y7^dc)HQcA3PQPX3aBG0g%T=5ydEx9YT z76(o@UXIy);bXWr`<>;xqOjB#N^HY@p{=R!HVCFB#2c%Re6HSb(B#&q!gXy1>1{%a zn(cS}Z4_&ZT{^6x48hTgdvadVpy1g*y>tubFj&F+3n%x$8r-yx4Jx{1%P=f^Q_>g8 zVpgAtf4X+9-@75b_|dnIDJf$KTCBPHS5u=BCMR=-s(O-N=G8Itx<4qCU%9^AfJRMb5`x1;rR$wW)X0ns~$2=j_!~s^!J(4gUH*UhM3L+w`FNbI~6gt21?d zxBhWHFgfyEZzw%^!Cq+B#6mIcPW+~mkJj2Sh?ylx$PH$HYPnQ=VB^_%zp)MxhUYKd z^W%}1>C;h`PLwa>MTo%v_5-?AckhaBI(X=&*TSE_tg!NIXx?dVXw8_BO1HEe%IZtW za!$-H8B|?=_)pHF6_&)<&Av;6eaU(aVOPjX|;r^@|SfuRKsOc}g6rSbO*lW6LR@7Llquj(YPrtn8f#$4# zaZT@3aq`QFOJUZMP0gljeEm3owzKa+Fte^iV6)+ z^n1Ot_+s})hyG=|-RCd*&K&Qx;-q?(Pi`E)tvK*Tx_H93)$5^SSVFXJ$9Spb3&Sf} z1+TSJyn{W`?orr}hT9bXk?%I~wZf9o@mdNfITo7ng{d`O?BgBACj&Ezj7&M>TIDS} zB@eKua3a)xjg8FcVAJa6ga^e7!A@=0x3s3_{bk}kUmbjTG_Yq{kGO(Efuc%PMNN`! zFZ5RUW6AKIvJAcPrb}pmZ@M)_%07OL$9JhgI+UCfri!ko`$n&M&-T-I<0(JDf0`u4i&ngQ?BzZAumcnn?9Ys}~o8r+~&Hn*kfnv|1Gfx_VS#Fvo;T4z9Z22;>Z|Uzj+e6lS?d+;D zHENL}A9-q~xLk2g!q>7FaK}UmJ^)s!lR$&y}J0`oZOD` N@iTv>9lh|^{{V4X8_WOz diff --git a/documentation/docs/aws/byok.md b/documentation/docs/aws/byok.md index e9c86e9888..ddb1e73df2 100644 --- a/documentation/docs/aws/byok.md +++ b/documentation/docs/aws/byok.md @@ -4,6 +4,10 @@ Cosmian KMS provides an `aws byok` command in its CLI (also available in the ui) The **key material** refers to the actual cryptographic key bytes that form the basis of a KMS key. While AWS KMS keys include additional metadata, policies, and access controls, the BYOK process allows Cosmian KMS users to maintain full control over key generation while leveraging AWS KMS's infrastructure for other usages. +## Table of Contents + +[TOC] + ## Overview Since AWS KMS is a managed service where private key material never leaves AWS HSMs. The key import process requires: @@ -26,11 +30,20 @@ Supported wrapping algorithms: - RSA_3072 - RSA_4096 -> ⚠️ **WARNING:** Invalid combinations of wrapping algorithms, key material types may lead to errors. Ensure that your selected key material type is supported by the chosen wrapping algorithm and that the wrapping key spec is compatible with both. +⚠️ **WARNING:** Invalid combinations of wrapping algorithms, key material types may lead to errors. Ensure that your selected key material type is supported by the chosen wrapping algorithm and that the wrapping key spec is compatible with both. + + +## Prerequisites -The following guide will detail how to export a symmetric key material wrapped using _RSAES_OAEP_SHA_256_ and the **[AWS KMS API](https://docs.aws.amazon.com/kms/latest/APIReference/Welcome.html)**. +- An active AWS account +- Either : AWS CLI installed and configured on your machine (**recommended**) or an access to AWS Management Console and open the AWS Key Management Service (AWS KMS) console at [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms). +- A running [Cosmian KMS](https://docs.cosmian.com/key_management_system/quick_start/) instance. +- Either : [Cosmian KMS CLI](https://docs.cosmian.com/cosmian_cli/installation/) installed and configured on your machine or an access to the [Cosmian KMS UI](../ui.md) of your deployed KMS instance. +- Any tool to convert base64 values to their binary counterparts (e.g. [openssl](https://openssl.org/), python, etc). -## 1. Create a KMS key with `EXTERNAL` origin +## Creating an AES key and importing it using the AWS CLI and the Cosmian CLI : + +### 1. Create a KMS key with `EXTERNAL` origin To use the AWS KMS API to create a symmetric encryption KMS key with no key material, send a CreateKey request with the Origin parameter set to EXTERNAL : @@ -40,13 +53,13 @@ To use the AWS KMS API to create a symmetric encryption KMS key with no key mate If successful, the output should look like : -``` +```json { "KeyMetadata": { "AWSAccountId": "447182645454", - "KeyId": "4b84a92a-8c1e-4551-9cd8-b1027ac35a19", - "Arn": "arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19", - "CreationDate": "2026-01-25T22:00:14.906000+01:00", + "KeyId": "350e35ef-ac51-4dbb-82a4-9bc50b0ea42b", + "Arn": "arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b", + "CreationDate": "2026-02-18T15:05:59.358000+01:00", "Enabled": false, "Description": "", "KeyUsage": "ENCRYPT_DECRYPT", @@ -61,14 +74,11 @@ If successful, the output should look like : "MultiRegion": false } } - ``` -> **Copy the key ARN, you will need it in the next step.** - -#### Note : +> **Copy the key ARN, you will need it in the next step.** In this example, the key ARN is `arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b`. -If no key spec is specified, a symmetric key is created by default. To create a different key, pass the `key-spec` argument like below for an _ECC_NIST_P384_ key : +**Note**: If no key spec is specified, a symmetric key is created by default. To create a different key, pass the `key-spec` argument like below for an _ECC_NIST_P384_ key : ```bash aws kms create-key \ @@ -77,57 +87,41 @@ If no key spec is specified, a symmetric key is created by default. To create a --description "External NIST-P384 key for signing" ``` -## 2. Generate a symmetric key in the Cosmian KMS - -Navigate to the [Create a symmetric key](https://demo-kms.cosmian.dev/ui/sym/keys/create) tab and generate your key material. In this example, we will use **symmetric_key_material** as the ID for the sake of simplicity. - -You should have the following response : +### 2. Create a symmetric key in Cosmian KMS +```bash +./cosmian kms sym keys create symmetric_key_test1 ``` -symmetric_key_material has been created. -arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70 -{ - "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/a68f40da-85e6-4798-b147-2bf096d29a70", - "ImportToken": "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", - "PublicKey": "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtsNt+rdszE71mmBzRXTO+izYjup03vlga1a0/QpbjxkOWEppjVMeblh4MyQAD8HKLxyEabnnlRFcGFUxXfdWDX94mqjeW27Eu8mFVS+tnm0UZDQvLCEHcGRtOfuvGNjOAYmUd7I+7tRsnnG578r3o2DEp/WYqqBzKeMS2KgTooEfnLEgoca/ferFxOvjsJ7wJqahkh+zKSx6enSeJNh/R+XjxkT4MQFSCX0UkPCv7hzK7w+VaBC+KugaiPo+uVSL+LEbB2DIhBCXZoA6eeZzQ3gpiOPb9MNWtOAGdnhVhhobyYgH/Zlg0misZVy4h33hlUfXuh4JvNPhV1xYB8SFY/J/mwKkWbkB+8nGkEhfIL6fJbgD/+Oj5p9boGUTdVb1NAymbFk5wmGyHttOHPi3hDpc2GhouCG9KzNqVW1QNPYwHfFnaXeDVOG92dqNxSqxRN/p/3QEnW6KtO+x31ZnPa7OvDXxDAIkrIVB5ETB02NTLDX18Ri/4v5zBNNwudL0+jO5v53+JxtP3C+A8f7nxjJijUDAebmNVziDyfFrHA5m4+E5/qWDZhY/zygCKs+b4dMKk0iaS5SFqRKu79PKkz2+QIPKcmUZHEeXVA7PmE5yoYHODID0r44gcXZqthFxKxzWW9XE5WcCVRgN8VLoaQidA7MaWVtm+qIimw/Mt40CAwEAAQ==", - "ParametersValidTo": "2026-02-13T18:39:25.085000+01:00" -} -~ -~ -~ -~ -(END) +**Response:** +``` +The symmetric key was successfully generated. + Unique identifier: symmetric_key_test1 ``` -## 3. Download the wrapping public key and import token from AWS +### 3. Download wrapping public key and import token from AWS After you create a AWS KMS key with no key material, download a wrapping public key and an import token for that KMS key by using the AWS KMS console or the GetParametersForImport API. The wrapping public key and import token are an indivisible set that must be used together. A very detailed example on how to do this is [detailed on this page, please refer to it for more info](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html). -If you use the AWS CLI, the command should look like : +The command you should use is the following : ```bash aws kms get-parameters-for-import \ - --key-id arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19 \ + --key-id arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b \ --wrapping-algorithm RSAES_OAEP_SHA_256 \ --wrapping-key-spec RSA_4096 ``` -And have an output like this : - -``` +**Response:** +```json { - "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/4b84a92a-8c1e-4551-9cd8-b1027ac35a19", + "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b", "ImportToken": "", - "PublicKey": "", - "ParametersValidTo": "2026-01-26T22:07:07.717000+01:00" + "PublicKey": "", + "ParametersValidTo": "2026-02-19T15:07:13.227000+01:00" } -~ -~ -~ -(END) ``` As mentioned in the [AWS documentation for importing key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html#importing-keys-get-public-key-and-token-api), you will have to convert the base64 values to their binary counterparts before importing them. This can be done with the method of your choice, the most straightforward method (If you have [openssl](https://openssl.org/) on your cli), would be to copy the token and paste it with the following command to get the file `token.bin` : @@ -136,16 +130,110 @@ As mentioned in the [AWS documentation for importing key material](https://docs. echo -n "" | openssl enc -d -base64 -A -out token.bin ``` -Then, navigate to **[Import AWS Key Encryption Key (KEK)](https://demo-kms.cosmian.dev/ui/aws/import-kek)** option of the **AWS** tab, on Cosmian KMS ui, fill the key arn you saved from the previous steps and the base64 key in the form like shown below then select the _RSAES_OAEP_SHA_256_ algorithm : +In a similar manner, you can use the command if you want to keep your public key as a binary blob : + +```bash +echo -n "" | openssl enc -d -base64 -A -out kek.bin +``` + +### 4. Import the AWS KEK into Cosmian KMS + +```bash +./cosmian kms aws byok import \ + --kek-base64 "" \ + --wrapping-algorithm RSAES_OAEP_SHA_256 \ + --key-arn "" \ + --key-id aws_kek_1 +``` + +Feel free to change the key id to whatever you want, we will call the kek `aws_kek_1` in this example. + +#### Alternative : importing the kek as file + + +```bash +./cosmian kms aws byok import \ + --kek-file kek.bin \ + --wrapping-algorithm RSAES_OAEP_SHA_256 \ + --key-arn arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b \ + --key-id aws_kek_1 +``` + +**Response:** +``` +The PublicKey in file /tmp/ca9f45ad-8596-45a6-bc57-5591e662cb61 was successfully imported with id: aws_kek_1. + Unique identifier: aws_kek_1 + Tags: + - aws + - wrapping_algorithm:RsaesOaepSha256 + - key_arn:arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b +``` + + +### 5. Export the wrapped key material from Cosmian KMS + +```bash +./cosmian kms aws byok export \ + symmetric_key_test1 \ + kek_test1 \ + token.bin \ # optional, does not need the actual token, only uses the path to display the aws command + EncryptedKeyMaterial.bin # optional, but if not specified, the cli will return the base64 encoded encrypted key material +``` + +**Response:** +``` +The encrypted key material was successfully written to 512 for key symmetric_key_test1. + +To import into AWS KMS using the API, run: +aws kms import-key-material \ +--key-id arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b \ +--encrypted-key-material fileb://EncryptedKeyMaterial.bin \ +--import-token fileb://token.bin \ +--expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE +``` + +### 6. Import the wrapped key material into AWS KMS + +If you have filled all the for the fields on the previous step, you can directly use the command that the cosmian cli automatically generated for you : + +```bash +aws kms import-key-material \ + --key-id arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b \ + --encrypted-key-material fileb://EncryptedKeyMaterial.bin \ + --import-token fileb://token.bin \ + --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE +``` + +**Response:** +```json +{ + "KeyId": "arn:aws:kms:eu-west-3:447182645454:key/350e35ef-ac51-4dbb-82a4-9bc50b0ea42b", + "KeyMaterialId": "60a5374a2457941eaf5c26b75fea0236bcdc5ddbe70c4aa15046e6fdda49e334" +} +``` + +Receiving this response means that the key material has been successfully imported into AWS KMS. + +## Creating an AES key and importing it using the AWS CLI and the Cosmian CLI : + +For this example, we will create an 2048 bits RSA key material, wrapped using a 4096 kek with RSAES_OAEP_SHA_256. + +First, Sign in to the AWS Management Console and open the AWS Key Management Service (AWS KMS) console at [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) and complete the neccessary steps to [create a KMS key with external key material](). Be mindful to provide the correct [key spec](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html) - otherwise the console will expect a symmetric key by default. For this example, we will use `RSA_2048`. + +The next step is to [download the wrapping public key and import token](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html#importing-keys-get-public-key-and-token-console). **Be mindful that an RSA_AES_KEY_WRAP_SHA_* wrapping algorithm is required for wrapping RSA private key material (except in China Regions).** Chosing `RSAES_OAEP_SHA_256` will work for this example. + +Once this is done, create your key on the cosmian KMS like follow, we call it `rsa_key_material` : + +![Create an RSA key in Cosmian KMS](create_rsa.png) + +Then, navigate to the **AWS** - **Import Kek** section and fill with the adequate data. In this example, we paste the kek in the base64 format for convenience, and call it `aws_kek_2`. -![image](aws_import_kek.png) +![Import the AWS KEK into Cosmian KMS](import_kek.png) -> we will call the kek _aws_byok_ in this example +Finally, export the wrapped key material from Cosmian KMS to import it into AWS KMS. -You +![Export the wrapped key material from Cosmian KMS](export_key_material.png) -## References +We named the file to export `EncryptedKeyMaterial.bin`. You can import the wrapped key material using the AWS CLI or the AWS Management Console. -- [AWS KMS Developer Guide – Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) -- [AWS KMS – Requirements for Imported Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-conceptual.html#importing-keys-material-requirements) -- [AWS KMS – Get Public Key and Import Token](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html) +An in depth explanation of the import process can be found in the [AWS documentation to Import key material (console)](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-import-key-material.html#importing-keys-import-key-material-console). diff --git a/documentation/docs/aws/create_rsa.png b/documentation/docs/aws/create_rsa.png new file mode 100644 index 0000000000000000000000000000000000000000..78df1ad9fb22eb4873789512923a6f7dcf538cf1 GIT binary patch literal 138042 zcmd43by!qw*EbBJpnxFVAfR-2qomT^jdU|~3?SXoT_W8e-I7ux9Rm#AJ#>EC>wWM0 zxt{;Os5x(yvj8Q4tUjUVr{1p@M+$!TG~xyaO6GR zwixj3IY{iY+DqWe=jE3$;AbKiNi7#u2Xhy9V`no23wsAUGiH#fvzeJa$kM^(7^zbP zcoW0lH;Fr&8M|0H*uPb?vNJ=_H2d0$dyk=#C@${_e(2dF|npD_IA@BjWKzuZ^N z|9&8FV9*%54fS6KBrpiswBqXw8V$TG!SSB~|Q2S(Um+DmMaEqs{ZEbBG z9UZ&o=ZOdi2&VRCMH|#MSoMAtODI~NJS^Hr{&zup8D;mkWe*BBd+qM@#b(+R@_IY; zF-cq6Vhddg^z3A8ZJ7`e5uYO?r+YUNM@uOgfyAW73Sa9RrXcVz2a5%il`-1e z+s{Fv+isxjc|TT?;ZFe;!7dX50)UB`nSKQwNx`F@wrEE=k(;EH($O z;?)V<`P$mr$;HKc0Rduasl~-bN7mJttStTH1}q8+i13s5^XJbu!VzZ1$KxXK7(3kB z4WDqj%T~wmOgeW0PV=5PE2^xPUqka?d5+G%SCe1;CqCEIlU#P68yj8@yunF>%41a_ z6y$TVBxsuG*N>q=L&q)OF)&0#60pW6W=e<*_^1^tA=1(oSu7Z+so~C6>Qf8Q5EqE0 z8Pk8A4VKE!vz{)6_%Jz(XJZ;%@Up()ePoVuQijx%Nk0CX^J_&^pSR|p;`q<0#o9`L zf;)nu4r%hrs&idj3jZ8Lv;NpF1J23AlMLD(iv!LXM9#XLrT_BF~H(*@&`)=VU3oc|Nr8~m zPgLeHzfTVf(c@h&_S98(bedjHmud{hIjZF;DOFf=N8qx2?Y68Y&E4nDpSEuHy0EtA zr5--BJ+Y2Le{XN1_$dnF*fCAg?sU6Pt{_OwaSw6Y#Zud}(Wy)%lwSO?{D$HIJG*RuzX5MhSX_`$P*^soc6Na#!JL)34sCZ@M^+wJ=Hug2 zs<)mdg@LC_)tww2t6v%#O0%=GFSfWcHfF@V_iUK@ut;$HU9g6;$1|NKtLE;WHlByM zn~);mlw+A$IjQX9!Jx*DgZ|IV*`H``Pj~zS(9Buexu!UWLOE{Hqop$19G`n9mIgXg z*FE01?Cfzk(y>OSrU}qdtgf$p`&!i=!U!-Q@UF{K3&s&Z_k$dC{4U`X|ycs7; zQ*o>hJmF-mF&yUiOp#WtkNOg)Cc&ez7hb}yBv zoXD_p!NiZSa(MVKltQYs?S^FV{4hX1Eu<1*W+~*m@HIiWZ0Dd$+7DNd!uznLS zsuqwk{&{jp5VQ^jWsqis0t&Q3J9C?ar* zfJ#>}wQ{jmkb$39=HZ&fzdx**KmgizLvRqqzqF93n&mVZLBFIBGGiBJU`U>{@ZtCE zPto^|soNQNWy!_*m;*g%F#MdP)w^(_8x2D-^*o;6x_+K#Qa^taCSZRo`0eQS>-#JIKND>go^^#j zq97VOoko+zRQB_Oaq7m5#Jt3&BlTBD5?f;8)I>rqsN>@`2p%(~y_wn+`6?yO&1NME znQdQgt`nz%!TR_2!{+u&7=veL8IQ{r82V&nhr7%5cog72Sr~`Jrew~Z6gP7JqFiX ztdm-s&CJ*DNsUj_8q8frIy8qzyTeBalu8|a?!+UQpt7eGjr1+I&lM=Z!4o1mo^f9% zXTSL^UZvUp+RVViz5a3ps^_$a9usmjCkT{9Nm1)mB%=givJs*uGHIVRH>BXbmrd?9 zVl#SoS8rek>^NVID>NcC%D6?{+}yxc?l>qfUgS;g8Vq%0t7q?@mI@vRu8t+SOjZbV z#9p-K|H)nyKTF2iVY$vNRUvS#FekE?R{u^4v>fB)W7jBkkNy1UR}T411~jx8Iom(& zr{iZT3=Va<&XJK2LZqJvstSXGBt(dBm@%J;BNQujyo&^1lakn!>Di}+*CkNLDYKLM zF?k4k4xRILf<&mO3PfBCYM)lD;4r`Pv;gl{n(+1H))+SPwq4of89R|SSSMW8A?Ke( z9_;9)7VN&>d*q3F01>?!aLZGoQ{v+@o&C-kTv$P~F?sb#z@4u#>>4O-@d&;M@C{{VFC8S zO{H}XAUs1OBhj$1u;!00O2;jWRSHnI$FitdSYnEcrw|XxNJ;-5B4E*b%YNDiyRqUT zeuajX|0#}&)yELRaQvdm;?j&ye==8i!4w*v!-0TMP$r1M`Gn|tOJ31m{o(wo66a|t zbjMfGyrW9BwT3~24{GN_i2WnM_fjoC{%LtsS4dt;2TjTXk$nDalSSw zcjc|>9iB|7W>tTNL)*ujvrSID?S+ed+lMPd7Q>FOG6g?AVQI>=w5}g+N=6e;j}9|G zdA<;lmZSKiFX&!ql|b{ih*C?(=JD>(>z8tgBl~@b`&9@nf@Fz8`bBxM9AQ&+L(5~? zVBfoy!%efAr<1Uk{m~Q-V4>AXMdk%!V2h5)5^P@EmsL_?t8uECn_n2u1^c$R9>yP` zhC^0+m<(&4`A@u;Wj`HeovU?agt{NRV-dmd2W|uXaRmu=1M-xpNtv`ajv{AH!Nmx^ z2@VQ+zBgMYU6EdhIIB^mEvx2&D=vEf#vi`T>Uh8L%0+-Ii9zE#klpyu6FA%y7Jx)} zjy#maD7)0+TI2f*FV|+a3IuF|U%!4GCpmAzcPj9#GY3wyX3y)9w0nWv59Y`i)|Bh3 zlTCEoERw`=av5n#9*)tM*1p*{uhef1l&Scx(l>FwJD)wnypQPk(62AhDU9zQa$$2a z`8^ze-;d9S0mXMLSBY-!;+QG|&(|vr9io#o*ZTDQ&4hh)U2p z?A9xCh~pAaF0~s>a5SrKu<*%)+uKW|EMpsCxxTGZTbqS)y8Y>{(CXR=N5?CUEmi|a zrSL#lSXki?Z)N1meTkx&QKkmpr*83NCg@J;{7oPeRweFebb5im|g|( z!_8#zM|lwvQGZYPtn>ZG`}lyR<}J%o1h9KT0KsNe) z|Fr6Th~f8GAKI0x6oJPqah!d)JDpEP!h5(n%dOi4;{EoOWvuPaO&9s~4wE~^-_2^R zKE-9#(w=uU{O2R@X93XQJ>P1VIjX_~-gYbvme3DZmWG4P8V4BK{@%qa@b_5&>`Guc1Tq;vQ^xc`nLQdId=?1bpJENa)gjGNzn1*78N;Oy`~RxBk+r7V=;q+pI#Xl(mW(Z zwYD%$5u-bmu(nOKKP%>zxGD}}7urd?ED-d5Q>HMFX5fCbF#5xxgA!Oup+hc<>+Nxv z!%w^6sNKmCI5rLr5x*DLKunRJ0j*+|$qj^&P{ful5ao4kDzE2W<9&^>c;VsBG+bE3 z7dPT|>2&>kmlI)53wrX9*&GxaTGViSP6X7MV8sDHIUk>Ab>PFzZMLX9kd$8AYMN!D)>I*x0}RtWuxw z+j>eK1E)DyZVxq+O;IXUE0N3blREcm?_1wVC6tOH?VAT}TPk&S@PB!s)$Ya&3`ri| zp6qtF?u$OQTaCtHd73EaBwDM#_y><)xpMQc%!PbP~K)(AZis0%ZJ^GN>Q^ia){^WKe5M4d1Hzob~N_k%Hms z)GlKb;X+_6a%Z&kO}tvUQhM3!J)heewz6^!A3s0B8-kRs8l1wGvFv&Vb9$E-C#Cvn z?RWCWlk2psK-!l{`p%AgogF|yMH(i~1BOTa)Y4g!oq306K#1p$7mr)JE;f0_LOSo` z?r-4ZKjLT+j8~P?hicFUA&b|wv(vP05d%ZW^wSA(EfQ*?X z7wE-pIWraM&|MMH_rGbmX}WT$Z=5C@l@mSljD%14#Y8dz0G(hWn9-(a;ZL zp=bjKqq$ zo&6(I>{E+GU!oh2VRq)JG5oNo`n$m!crRoS`Ca)Y_1S8P<)!T_w z;IP>4O%N>hu|%bS&agu$g|&0h+1mXA==hN$GRHYoTo|ZGI%`@gWEN!0&xTT5mn`W$Yko|5w{nw~>pNaE{;Y zt6@K#p;-8qO0%<>LJq(96C%wC%`}#UTvB|lw zmZ?9K;&tD^HrpZ0CqWWzs}6Vz(~}jwpRc@8tn#o|?vaMkQMuup1tQo2^RHC;b< z5%3KeHfY}(h(()yrqrE}`!~|eB5761LQ3W?fx)i{+;iS>I5j@Ss9iN%clE&3^_j~Silt$aWNEVS+CW#68$Bd_Z$#JPhS+O$n`tkuBtQV+J*3-S5Of)G4zpI+O z`J(3szwc~3P;87bsG?RAKB6(SEp$an%9(V?vH%5{sA$ zvn7W~kmFYRDKRTOYduT2Aibis-HXw0V%bq=prZYxtYoHBM)k5Zc@f78sKBg~0 z;Opq>6S_#(TF`QZerHx{DjydywJKD2_y$}TCR=7cA=o)>61N zIY+pYc^|S)$!Pzw_hSv+&B6fV3(k=+~>0ebf z0#qc|N_@3uea>4|^151d^tsF!@~SyEU+`o{e->(2_URU}otH6-S=z zG&Drm8oBFks}OWQcD`8PUR;u8v)jWZ=CSl|Od(h{Fld9jx%1d9e#jHk-uF#Q(Q7yN z#N!0wlUFt6OVdHWyf+)6T-Ev&EILmchn0A$tQ)gV^kbfq5gXxr+a>}6*|Mz(MwHu; zOna8)tifa-QoW8Obmn#K^vptb62izwGa296(xhQy(*!5x1&0pep%E+7RCYVAzxa+< z{n`2P6??od(M)N#(d=$@OG0l<`n90bGnCV@6&RpDm;&iGF)&i16Mbk4S6Gq)?aElk zULRz-E5{YiN>$B*E^f)z)^X@{3!j55qAm6fMV)_b^XloNiPS&%-8Yl?Qw5{3+1y&T z*=XhglZ+3~vYOYn@h3j%m@LJs`*hxmLQhVIM41=*0!0|MMh*_csaWkwW$J1rddVCG zkw|ZFNz?5~{!d*X5w{(S9bUN}Q#uel@9q$%AcYa#p5xWh7mUj2dMA#(sIgg23-ip0 zb9sEZ0PP6!6GV4CRhjePr9IsMmzPZ=1!K$aMi73d9)Gdi(^9+3`_=W3=3Ta2doFqV zEy_7%z)nwKIIJFVU#5QY5LO5#Q5$>lDu?G;MGos{3*WGN<7XITx2edj6IS7wS45}Y zj}jE5AJ%I0-{}hk6egCe`}^J*^xEsmtc~kiI^1EigV4WVBQs19hNL zd3ya8E;7Ni$~ThI(siI&`{lj4?(aN%6eK*){(ScY9UL6csTKdh=@A4fQb!g?pHEVO zVwJ%G%+EieNRHYay0F0U04>?N0l=|BgQe&#f4)PI54JQ43XsjhOXuBz$Tb%*yX%{@ zUk$BS9G%YReL=7A>(z?<1e5S9RHehw0Z`7lKt|gdGZlHh#p{qb5E+wFKp-8cC2ThR z?pt2(iHNuy5gHmA@Fz)0NiCrbugky>(L+fL!-F&@JI4DTU5uPk+ zF{b}Q&g>On? z?tQ@w8M7Lj=xBx)770NtWVKGO$t94}qRRQqWv_yQ9@+_hi1E}}4@o94*QqZat`tsg zpRWUzPco?263UqE{c>|F$#DiEQ)<8swcAisF-JL9`Br={AaWnJ;(-bx1T9j&n8 zxGxEb4bV@Fp2T`N?v3EZkhgXL!+w+V1rKsy+)0>azpp@sogYNHMD5Fdo6S@;eg@BR zj}aTk`d!k`WeiK3mMN_=ug<2|A(CJZyA&;UV>J`i!mdm5tm zok~(B7u6_b3pCaaj4XCWDBim8j(^bU=UVE;;Ve7kA#|z()u|U~HD0*3{pE(11`4|y zUt7XRe$P%CK8IiwwC~37i2E=RUpeP0eLKj|xrDsI31?a1Nsr$QU;0TJoP?LokyKr& zkpj%g%EgIV>J@=3U6|_K-``~ke*M*dPNqnaxv)C&EfFF8e0{@maX9~?Gn|rz+h4B3 znK+SQs!uk-=RqiB&XUv{U0QVl2}o_rAq^?-0hfW=mLDj;87)$0r(fKdhM^9hG!wh( zM7?sNBZK!}(@N!IQP1zY-ij@JoVoPd9wURp0HPt0UNr>Zy8w)kPP39!Sy`D79r@X_ z+GS<-s$o!f*{^XTQ;%COYQpovlM5`;3X@m>u*7YrOu%5*a2YW~E^#hX1j;A&`avJQcci9=}x(#=+UAURLZ`Hjl1>lQxLIRf=kIq?FLEuoNUb!2{ue8IYYNKcg0 z?o(QFd)DU7w~0uOL(w^Qb|<;Cj;KSySgomV^))p-q8cK%=uwKFUaw|mF(Yl?6HR>> zJ*rVKwz0X%Rw=weS0Fjk)}!-1&&+nsaodeiPxnL1UPn{-@&z4J{8vpw!*>8K+ncRW zcxWkv1VO=w=;Q*yC;^lJBIoqD<_eJKu7?PW`yw>>Dkx$H*ZElMBUf* zTTx{Rz~S|-x2&DOV74{_VW;8AHXY#Pw~r%g*C-iauB#?hsq)&sOp*M{^Mz&Rx(tR= z(f}a4@=6^=xB++MwXa`Bk>m)W9XaG}aI^*W*~LR@E@E_!jh_a2;c>1gO>+8wv;aDt zWyPp1=Cz5>5@n(mzQm7_b+?!!m6y#>o?hE4l~&t~zwrI^7ND+;3?=`1Y=1eAHKzPh0bgb*s-`Q~pWMRl7uU`Dq?(&@iQ5MvsgW;}d z{Qd=+c8l%2YRd3IXj^@Ky(DBA*QzId;7Qp#9iS%TGc)DL92^ufg?`UDQNZsOxHr6U zzngEIE?3g4#Dr(r^}AZ(raga5=zL7y8cjdF+8QMlaZb$9EMM8iW2~;N{jNaf@E0>$ zebQYd}}*2NV~Jpz6i~Pt{}E$_%W=wP1RcCWLOxp82+m+-Bx_YmJS^hw~g+ zor;+5p29b{xDf!PJ0NIhwfF}Il8(3gxa@JX==*KAIX+2X8ptGLD26KY1^`KqH@N!l zd8nH`eursyI;B`K#y;atc~+tsB`!`)uS-*ZW%cRPEjG)%@XVHm=;}HWmi5faxD4iGi#2EcQE5 zi<5LL@%u=$@1!m0RP$Hpx8G0*an`#myGr9}fo2OqNkAaqjWK!*=7OTVR`Q@VYaOLt zpd-PYfhvPH)o>DP+?AUa0e(@QB*rp2KLkxL1tQ~86RaLp_22sDu4({R_?mXA% znKBrRQ};lc9lB88J4xV$N9Wex30NfjZFGma@41`T5gc0YGf5`?B#|SRCou>1rK>w%YMAHmx#W#hmoR zj}5#CxvxJG$=!*Tq?Um$Q-_OpTD1+JejFXyI?HeIC~|t_Zf`Sa8)#V>^osp&9Fk;y zU$grXariJ8mEO!Zn{o=-q{+yrm20KTYT6sK5%RmOJ(DNNu-|S5T_M5=D)N2!-HE5F zKGri7-VSPL5HHkQb=^j{p78tNmr1*-=r)$8Y$_c))eAGikKHKHW4)%m6Ip}v#rqNO z3m6+m0;w;K=Ce;tRairQoFDnjjQp|WsOT^Eo{*8 zFZ~VH`)T!Ye3hAH$!LCZfr%Gr@18F$h8&%FcsY z)NPoH`I=+aUS6o4qKFcQT|zpy)oVW# zpVy>YM-r23c0avmEZV9Bb{(D|a>MweH{dZ+Rb6bH8|O7mANExcDn6I*pXH82>8cK2 ztLfVJ`O-06eSN|BqZu`OnyRxmqP!21vtwDz_I6LV84h8wv5HFr`PD2dkG}U04<&|G zq z4Z*~rL}&-+vSx=*;R<#BdX~nfOj5C42{xefDUjUf$rJ%?g%3XwaM^Es2Ecnh=K~=? zSoB#n`DDB0Sh-By`%E}jMHxH~^Ers+*Dg_>8rkpbli;^ZP z9O1Dnq%M{@4;)DJZR9ViwgwdGIKQco;B-NbMUVrr3RJqQ${MlBjayVQ8zers(cz*V z9NK7fo+Qq<-nkHOd162SHmqf_zSI;qwc>NNMA z#x}x&e+IHIdCX}?6jUJk6rLYQ21qM}d(6}slB`Z@`wCfI*F|%B`a9iJE6W7|rN)7% z#{y|~3iG-YkkHICkRi{;-Q#vrzAwZT(_=H~_F1|nY{bk4u|ESm%@2(r5Yp*jP<7@fjG|YSizBC&Iu`$o9QPR zUmjb|{ezK(vi8UGEn)NywfMM!D5R%G|8qyC*SM(jszj#feFOki<|&nZ7V`D~7Tap- zbAG3@?T6-T`DVdpdu0Eep^$y4{JtOOl1PqB74<?YePscGb)hv~+y*y5JQK6f?z45rx%29w zjUYx?dhL(Z+rPOL=y!ONkP6$9x&;LV zK@eC@*UDR&6oxEQJMZ|em8pQVI-D*V8XBDq=2#d#0Z|%UxIbsZ?8P*M0m!sc)NDFg z52KS#dwy!lAbo@2jY*V))lTIZgH&~X@FEae|e_1_U+a4YDShVn{NFL+Y` zEY#QQVr_Q13~{d2fx`RhFkkEi=7H_uh^yAqa$B1J9b&mwL)4@1-Px?6AI?KDkJK^v z0br1ci5XubB3_NQYa-rW9Ga4I*{pu=vz>2A@`;I=Dpn2zQp?!FVt72iByb(*8w=6& zDc8qWCYCiyy>RJtMj%ED35hIOx0Kj`c508?=JbS4QBRLllv!8dq$hOiCM}70kf~a& z(6h&)aoH$irsQKwd%N&tXBN<69@kl(Vp~s_OSZST0#ulGRZ}8)MMxB~m+boK_UY0{ z8u|`QRG&WpU{DaW&<8IKdBC=!Ef<8L-9{T*%zhf>3nM5j0a%*oLaCfObBb-&wY&bC&z!CMDJOTlB zV!WY82^aNc)6*Zlb#5*u?Dl0Nuu%mFucyxJ*SJK z8ybvDqAM-(d$1;peuou?bSznCYGp`ie!g&BVXXX>**nJVrR^N_-m6jyV8GG_M09BQ zx(3ggbo-;p9U6VD@9r*k2Ll3&_}y2DEyivqyt@eSp=l?(cTKpCUPI$pe}TPghw75a zMYX~ce&jWUlbe+1IewsObsEeTjo%Z_{kqMMX}1n&QUIRC;3=dV_~;7%FXU z(xy?R(^EOsQI0x5={;R9k&MD!Fpu5{~f58P=uVo$#jW@pe;|HJf)SjH9!$V#m4pxAh=vi_cwkvHSs+| zLaM20U=QwuC}$ro;~-1=jjO~gl`#PcfG~3$LuEWuea;yr74Kg8QNQ&?`qt8?TMPaW ze=bcBmqxLWb%0ECZJ6ND_kusL5f7J-`{bszzL+Q1u>-4_ur!KoRyM^}w^5F_EZ;;$ z4Hd2_jEI@6moxdJNIBC}2~{B_Xatk6v%ipC2&O!9+6riHN?%lfCPZ9B1ZcoMH;xhD zaA0Opq+Gh)WYQ&Rb@w1Su(HDa^hmblwOKw&c4EEY zUEng>JrhOrfJaLyR&d|G+Z;;%3z`+vO?uA^bHZ2DOVp~3jx2mcuQV|zgcT*eaJ^sD zyYY}SoU+E7w5WV5A`+KB!1|~7R#1t@50&eHTXI?BKc4VsG?E&@laa0sE~sgE$N>Z+q8b0k$G~)S zAD4TMv!8GP7-RG+&+2CFeCz>`j#ucYl0}p28f|O<2FU55#0&DBqiux6TS>$#m5ZTtsOJ7Xv?MLdAI(b{|WyLX_*CHq2;=*ZB7e7lQ) z{jyx0r1vdhsPY7Ad7LTUptR~oz8PFKNkCHhLLWV&O8#ao8 zLj1>2IBQi1P?24#K7G*swH^-rLk5*v>^;}~1ZZ|w*!*CeMc+Pt{0KA;iCL{~X^}*& zc&rMOh4LPLT?n9?0NlR}&RL2fpX155<}JolFVV}x$&9fq0d1zIw`||0%Vr%{CnNz> z%eb=D*wj>fUFtQ_oF9UE>5t{d`@Y_A+sA>a)(X1}o{@WC(!Vqx&9-Cl`~&E|@LBbY z*!?zH%Tk4BxlD3HLs3X(9_+2%9oZ^imMJZZkYRv?LSu84H*B#b^1eLkfj}_X+Kr_! zDEfu{{P0=X^>_E6MZ6TTWN4{gNPaid?+|S5Z27?FpIS_zrSiJK-i=V0+X`UWyUCt< zOSi8-eUjVQsL9vTEus*zotmpTfHvmTnhl-YrB7?=>cY(j8Ucfc5p;$bmsNvlNuaaR zV01(qHd(gq?IQs8X}Lj|w()%CxN5s+2fM>01=J75F=V3l7&&%!cAj-hBpsi?lL(<*%X zA^%;yE}8WJ{}vDdxgEm->-&kLb)t1DcwkHSEy2~x%gd~7?kDh}y6!T{6Abo1k`F3k z{b$=?nYSR{(=EzfFv5N}>A|*!8AxRIB>|rSJ^p&YhVPbL?HM;+Wt+ zQ_AcIFYONw6sX;ACz(d)Vn&be7dI&95FU=Ev}obW1hBY%nbjDV!ppca^5-GW zNB7)7;lpE0H2+nEWHm4JfMETECsXj%&5roH3VnEZG%Y3N-}MV@CsSukF#|N`XOI44 zRZHrBG^76$Nr(lgY$oa*9Iry%P2?1O_88VW#dmk2hAlu!c+N7tg~I#AHyR0?d2z zIS?gvhwJ}kFNrWfbHcKGaKK{si%%rGj;&)bjK1%o&7)VwKY$0yB;-SR0bL$CGU%F^ z2(NFGF(o`K>O;}2a-kgVN-*Por6>|FJ@)2u98hdle3&>*r*DSTxDVKxp6lcWs zrrtacz3GBtbI$HtNnx4TtIM(6p&RI8w3KQ^z|U2iT8-i84BjU1V-^62ZT}dn%g(zP z(Y&gXivZ}eEx8I2w92NjDJT@RJopeXpS|>W<1bSpR-uuvQ9==1m7K@eM&1s1g#vzZ zoWaok<>jiCsR|CV{9`kYe2vv=N9H8R<3Iil%8bJrFBT4LKYTyE38HnaR53N7KK#p* z+!cxONc3hX0Hdap6|=Krd2|D#W}|zPr4ZU}*=59*-lGFbz(WOaPMP2dJ(&*`GW3kO zJ{4k`|1~I8>9fxM{I}K1BfXdKQv_1iw>Q#jY1HrZ`J*qBSzF%v0TwLm{*FpqnM8~m zB|y=o+JHTiWMjHMk5F)!-vwD9w+H(t{`Iy#H_TzDb*~q2woz$8m0bzh+il`+~8RU}2b>nts(rW=RuR9o3gM zpVG|PQoRODbTk6ilw)TTzfI$I6+W+&*(@V!*>as&{~!Asm2On7{4;&*9ap12vJSJe zSz@nb@QSB$8<3;9zqKN6t|OLXnOd);Z;8IGA1I^Z_E*pS*2SID{^;xWKPEf_h8LE$ za!;>Lzy5eFqt1W_l+yySS3;;}cv{b^2y0$yzjqw<{a+@$(+C-o%)$r3_deVZRUPDV z?4~V||7Gj*=o2RY0W8fhdDU9d|8@XYQNGeMv>RHq_y0#y|9@XLxc}D)DE~ik`Ryf& zvgkD@WgPzd%EE+tNZT~3^murol)a3M3=F8zQh>$hUvH_xqUZh}40x1(fVr&~s;>+1$#womG8#%s_1N<`R4 zXJ*oC%@zrTzteJ;d8ZaRz+4jzH61p`mQaAoy{g~JAs*T$UlK1lY1gP5dnzG4P-6#= zEuJowyXpjd6&+bMU$b<#wigqIjB9F6xokLtUfWoFxz_tn1cp5k1Hm&$E!IOtbkaS` zC$IotMOmU#=?#`mabS1oK3>E`H$FePG8hCCFfV;jF>%huFhB&z2;=jxDN{mX;@^-? zTk}O)&|Iw*MneM+DW6MvxFPFzi&!^wa3|WU@ZYwJKSMD^(noH&VR5ke@wUfl8~2y5 zqkD&BdRFtdEf<>H?1d^w^T#a-=Z={(v&fuV>Hm|ky^J3LKk8W+zi4?kpv=oj@d=NP z=0-5cPNLJJ`^z=vd8Z^d;jw0}-*FRzd=jeONlOa~4W)32UeX!Ha}+G?{Bh+1`2T$4 z2jctI2R1vMnYx$F8QhmYOlR2-<~)PQkAHG2!W!T&xl1+Q=H!#ayarY^ z>tBIpKm?>n97=B=ZS`>%eaF4eH$eOOmzF87sBm<1d&k5S(Lff;=_R3ve9xZ&c z7ulWJ=@B>&*8st1gdRYxcJnuBLGH$K2f_b&=_h!p`cQo%h~SL_7UO^`#V_O zz^mF3GFv?YJ7*wbWz#iAr(O;B`+>_wxiOk%{jrC#9|^Y6q2T!|Kr(inHQdq2P8_9H zrIF1_i~haXrrTv0U~ut%>oAXxJCO>55eWz^ysj*zuPT`lvzv~!L4MS9bcx!N(n!_j zOKw|_O(E@2g7p<6=`U*Nb_EQzAB155ogsQ!sm7{t*bxhrhIHo=fo;^Ggi zJ={EY;Ju#++zUV&0Uy}p`XLV>diMuF$2UZHfprP%>#c)-W>x*x7H@2rbkEzEA;;k&L@fzNtxgM9lip(g$1HazepUf{Q&h zq_;vs5q}qN_WWLD2__DaO z+y-rTP0lX*PklHQNa(H)8bmr;^!(sln_Q|sRG3kuLT@#{Nb*+z@l*It0njqhwYb}T z23!c#{Uf=b^L6eY_qjqacE>U)H0pq7ji6ESnBwP7YJ8?iak|}-cJ9&o8sw+f^MFDL zxRY?QVAfKt4X>|FFI>9RyjBKl&_*(OBK}6IRE7CelQtpxZfk%404)b#q+?K{>swHV z)p|TW|3&>>tHnpP5OQ(shXLqdnBAUQ!@%uOPS98t5EVkMu#0_-_4E0%Ew@a5Z@hdg zz@CBF6`qhnuiD~KmD=X zL%sd!)2AQKeG|C!YbMJxX&_C{Yqm_9XzTG}V|j#zW4`!Zkb+J3+6AeoQ``%Cq{aZW*4RlZ;ZpfDfEKXjwcyS9`s3gGm?(&VPZI>5V!qrOX)fDc zh)YeC$hlhn(kp$u28{Rs;8CCt4OzTw&9QSoVA_ohai&wXaQUn88w+kfk>G68BTk5nPYN30Gs@q5lxO{UhRPD5#WlHC)()> zWbgq&GXC*G(tPdcc1aZ!pvLCTufPDDLDUz4|IA}=|4M5A7WgLv6K&C1t+7BoYL~lG zu4_SY_*sehA@G*FSa~#XR2TD^Qm28d2nh@rlo$VIlK1h?&Bwqu06fmQsL{$xJW&mP zy*JB!kxIrGqekAArlHqo%j8?8|`JkepJ#tJFn?4V1M0lc?X)8AwG)r7!n*a;n^@w?!5YfbZwYI49P z=61+G1~|RaPJSZ*T1tzWOaSAGBAL!`%J*6atPOx)L964;0jT1H_h14S0b%dU>|E7> z!Yx-o7PAFC25$ja?@$tR-0EZgcat0Nku|VG0q~;c(WF5q;A-M9y<`BORLRfonlU+T zy{U2S9KP8A$EPav;l^9%ovIgfe>jzFMIKKz|l z|Jm+5^(#@T2w0cC02nd=C37m4ttiJ+Z2MSaVF*X2yLz$Rl;yeD!ZtiJ(wMR0#xwam z(;8yEqFZU|ISB$YCNq0qGcJPtin`I|_q3-D{v~CwX=lR24~bR=FTi z7wFwId^}_JocS&t{}O~e8~2_faYeY~`#3GWzAfA1-FEjec+;7S&oW`$9z#vor`YS!#3_@+u#Q$%P*R=lc4&0QgMJZ|N(1`+6`^n+mig^gABqPBP%zc*QAvc1LiO3a77ZC210x>_x3cxw@F zgXd_?s6{|@y>{(G*+P7;su=JeBl0RLT!8OD=kSUBC>OYu}>C^VGQxa_jW@jAeYEIbVD9)HPu zWVIzO8;3nnBO`mMRhbXmMx%s>g~^>Sb@y1DoVEuR1eYw>RWOY9BVODICvM)DlqPr8#SV?3ur&I^rGG=EtMyd(PEr*PWE42{j%IoDq zxe_rgoedh*e)MuTsPv6<-=9g@JJ@$*OxxJXN)|te4w`>l9Aby&arOG7iRr6$KZ=iA ziquM&6#S7%1@swyvRb==rN>;u z*AjHSMFli+Dg!0){p&5Rf^_5FqMZn+_|;TwJM7CT_o<@Zgb!Ygze*Z}DMTcGG`Ih^ zY(4SrrhAa_I#K?`R2B^XAJ*PFs>-$N8i!+G5C%#Ks7Ql!mx_Y4(hbs$NVke~DcwkS zcWpqryGy#e*~D*g&U2pl-uD^f8{_x!hhwOFv+sRh*S*$UbI!G{GfGKzIsv!qK~(R* z2aAw@C$WFH(5@64GwoQE(~Ng>yW`~0mT&8HC^Xdx#zpb2dasUKYPCh+q1+GjIZ~~tTiq(Tdd;2QYUU|Qe0=&9R3RnO56(z?C9S`lhT!5aneX&J0NX11osy#MW;oOu z9!ggSnr%d*9W_@_e1M}+a+k6%q~`roROt-GkVQIG^My5;M~1TfrOwrnsF{itp@ROe z6iT%S{A0OOKAfd%wd?tS)pxN|ZE>OkOZlLz;nXz})x%4C>{zi}1C8zUk6vlnzhm3c zK+>4>6*|?*g&9&l%(a-D126z9(yw$Ki{ggvM0roGcx@W%bXd(EOgzrlWr{OgY%DZZ z5!^p3j&71Kvt#Rusg9TLaquDT3;g3a>m3F5X@MRS5;JOUWLIvkJv?}di#1USd7VZ% z-!*H@|BsJ=js*{BpK)@!aqJEiz%$`BEWbvLt-F@GG1ngFv~TeQ;g+UvB}+@t)%$=e zyhNSJbPCaQ+UJlUhClGutYW+@pJB)ncNfPfUdCP`Uz=(A&<{g@Y!vVFwx<2oVLMB| zDWk`uk%D*CCNd}+;~2?S9k==|)9ZgEEP}&@w+ZvP#*1oJ6raf4u;x?>FPsAH>G8X` zcz9$PV|hAn9C9WrK5iHp+7epJ4ChdaKoO7Pa-W54N4QY?! z{SJK#AN$X^@7{e6;fQnuu|^$I)BBVSi4_xXFwcm;3OSx9i_1r6X!1U@p)&vMu}f*< zo@sE~*4~JSs91sFcnN>QJ>}}@u2z=5E9e)ePU)%>gcpB}P92 zx#G05^OioG{`5X?rkISD2=%$a&~E0Y)d~CBLIb{l>}Z0%Tql-n)rvN?z7Ph-PtH+< z)MiV~c#VE)HAi_>6iUhT)N-3MdkSiPMDq2mEcU~d>o=HE&R%Yek8rFw`Hk!jn%PV} zZ5J(I(qCbGN|F%9m`7}9S6c*B4H^cTJ(x;`Z~t^S1|QUmGIzM^hKDGA^8clL&`Uge?_7*3CB)8K;^(KP2uc z++IAvz}UlMsl1I+WGFl5)kV8NJN#C?Thn9`^Vw6zTW^ev^6iLtoCLJAm?3nD72bIN z`ZacK?GtGlwNtc5(RW_eb6CuwZxBuT5cRnF;Q97(J^CB+%v=bRld7WXh~m8+>rB97 z(0Q)H$wHRn%K^BF!Fif2dupp`RnIeB>2%P3^{Yt}p4E8XDOB*<+EbY#Vtdb*OG`;%Vw zeSuIIEP#=2wm(Y9YQ)hhGRdOcdGG)OviOss?5Ww_`N-j5YT?Kb@%D&<5O{C^Sv6K(BPg?)B^s2~ zQ5!S*o2`MX_i$$T=Tm>eUZwfoaLi9rG_3MlUP5^fq9c@4O+-#FLD-F~&}f=HUHW-l zxH$qIONp8@_c?|(p`j^)zWnfn^zjohG=(ZFtQ^(qB#X4KryS+vw#GXj8xC0mQ=XG7 zy}SX?CCRJ~AM%b+%M3IHyx=mKESHEy?SteHb)YQvS_?bde4O3p2>tGlA5brT&m*b$ z5ZSd8IVN~&Gd(@Mw7i^Tjr*?)pTXJ5k*NH`X!KJUUV*In=~l1SZsM)&1fiLK(Y>!6 z($t=A-@0=`;{ypI#Ts|!;`_6Iqu}d9g@+o75Z|7u{LQUhhQewuHL~shn6XxUOXxpl zs?}SQdHz#JxV)sJ&S(Gmj;Zi}{~VZKz!g~kA9LLtbOZi#>e{C0z5f`?wjF)>O@6e) z?3%oceuf5TfKMOIEH&GYT$c%{P@ZR-_(YbnH*7{0;x{5(Qcyldmz-zJoR6*}q{qZH zNAgyWuyPiaP8r&RogW&%M@|6RDYdt`nDcN#*q>vS*`2A{x&I)$iOiNv)7sg4Af4S4 z%zGupxrEb6r7x!I~ z^j4xZMVj#NqUq7KOV|vtm$W*o!8&7BcYh4f5gsIRd+YY|X-m(&Bxx$M=nB6<+Nh%} zVLTsSj6SYsf5k9F*yYN!%#{>LS7ACH+yfDrYWRUjlLsQU6*H-q>#DCJi?!(H9fYT3 z_~hNwN3Cj0FYX^4TW|6O)DC~=6vvz@@{1iXb&k`)nW6x^(%h^UMMy{?-OX85_otcW z&P>KzSh?+ir%w~Yn6>dXVkWidS>x?P$qMxzvPrVSdt60|FDK|==jBP~QnzkBiEjSE zBa(ksiRmn|UharDoPz-1qCB{kd^ZD#i8)NTMu$IwrUQr>2%rvUWYRn z(l%kzyq2Kb2(br!v{78SzUSea05 z(ln?wyEr+p(`UzBSHr@z>eFQ3oa`BWK_G}wVpKz6N*Hxq+z05|zH|S60;`)gwROIE z2^tDwXfw}#l?Lv)e7*ykpnvpi#~9Y--Sv19&A`%;ZABcRVRpEsGtuZW98CKw#!*#I z-w=2gLJ~KNSAv3qv&T^j`4NB%HYPC^0O}N)DuuGF9;Dc)j#?6l1PdpX*&LI7psUNv zXVxB1HMvaqa@G1*`D|JfDciQH?A-YTttG4;A%->>oojVAPWT=x4Ypet$@zzL7+!hi zt=)6_9=q8zY19gyUp+%ZCT$Jk0bOv{ELa|KoyRb~&?F$_u<`>e{6Qxq5XR8pGXJDK zyh02!N&KMhA`?@%{#hl-51p|8%g8QUuFmmQuLngk`^HUnXYxfB+^)Aro^g_ioiTi< zz9wI$gQZkVOhU!z1(U-d0%NW#a?P$Sy~sF7NL^LNlgJSn$8zxTEyCkRv-}Bo73FB6 zyo>KP+pP5}Z>u~hsR;J(E`|vPrj9S>b>}F|2E5-|?$3-0_Eo)9Q5ut9?6EQJwa9vA zxzwyMm^s$u;x56!$oNx$g-ZYfNyx*aqO3gO;pMjgyEm%hqwm^CL3f;($^egKnsh#( z(c+Ddf^qME%E*C6O_UW$49;dva?-16A-_M3KorP_2@qZ) zVb_Ln!Ht`?e%`C2bY7(X3gWEU(ZcHy5Af)1$l|(G4aOHzk+#ZIzKVNm7P+*9>*f~*?NNB)2XcHC7KJe4fvR9JE5&(J*635D@VvwxwF~9V?c4p?@1H32vcwI`lae%brevFI7n^?i@b03RM!wROnzy8HoNW8_ z3K64qEt!D-(ys$CXQ`r3`T~B@T}}RG{;^oZJXprYwBxek8YgOJr5}6zk7E};?qk_B zH|Je+7n)(PW=4Af23f2!P0fM}_to!B<+O~Z&NHq`1&4|tGPojM!sPabi8dI;OpY(1j&cpMno{T0~{?akSRMzYic zyZQE0H_7}~TWTkEDO8z>UEDff$Grms+l|buc2FXyH3cl*k4-wFb^feWdC!^|{;JEQ zBdp{j(*_ZawD!Hm0J^ znK-OVv!Q0^H!~hv;OwXol;oJmL;W|6K8>Jwc30@$#w6s(V4aQ=cT&22ec#j@;vc9J zHKVOQASvmM>p&`EHkNd`zMrnH|06Qag-f!)&UUi$>}PQ$Af!_@5wO7gvTRfz@aQgD zJ?ujmt2{E4sfQ|^aBLt!Yx{I3qOH)po!tbCy3QziaR?-`yf~ZR{4PYsp!|@I$CnvyUSNMKpzMEo* z%7q}B_n+U_aTYkHfWw|)ZNfPqU;9>HoUuw~mM9)$F3-b9ZA39Fm!-v{u^QAM5B) z-kv#(F0iDCiI5ve7m)B@pOx+s@lGz1PKdR)Fm8mjT()M8>;r>Cd3m{kAo|Ae{L8%f zW8Qs!DVW#rYW1OCX%^p4szCaXL?jT)_fR%PoKTdvtHfTveg;l5aVdg^#zsb)7hJ7l z4gCkgrO)n*Z)Cy~HWtmS3MH&W)q06bHrNFgF)>nQiyj>t z(}r`$VR3SLUR1oVR(${ouwi)kyKDy`7(b`$+;2R6`gD1?nCQw$VdF1uoCfa^$)Pev z$e~w$=HOU&EH5wr%*qPRG_kx_T=eR0#`a|5vZ9bMROmf*74MqT?m-?&RV+gX1qXUh zNo2x*xf1bAP}~bA5i*}u&ybK4&7CSM_ups| zVay0NxYZhR*{~%o8;6_e|M7HDLNeQ%%ueHBX~;@Sa*fH(PLH;Ei5Hkv`Wgj?KW=)DUN5MQG#be<% zk*+EVrZiUK*kzyNxclRM`Z`xpjzk&b8w%Ne)&b3<0N%eauM-C2z~?&`Xpns6s{DL? zwPCYU@^T_cGc!A+bBYQJn}d47Jenz9#Z*3KWQ>4R^<&Gr(Zhp+h}-6?%E+7)3W_ID zNvE!+xP=9}KYvULWynm!4!NCL;ak-|TwXDonDbG5gW@%9k^p~+N$VXFyUjkj{1v>Oq0gM~dj-{0Apy9Vq2p1tPT z-Mn=xPB^KzrPa`j)Cu{`*i=vNr!af66>lJ!j}#Z(wc8FG{;>M+VAh`1G^KS~Kf>LU z-}f-D3?SVpFkW0-rB9k;fowslS%xj%Ban( z(@}l~*zR@Bnc(=Y^LM?g=D%ir_y&*8@p1RUzFy<(_i2c&5VRSxkDs8S~!Xx+(4OfjlBBe1Jq)=F$u;DxsPiP6VT{W>+j5Ly2p zab6v^HW8Wa1>uq&IWcpNG?k3M6JRdycU(b#y;&;?Q_qG{_1H5?Eew3J^!T z!*@^oL8PCb!A55g1UaW3y?7%9CMJCc)02yBHX`!p5VMa<k>wV0Mrci7!XR1Ar$Z3n>c624I@Mp4=tbTnn)JEtq+2eSe z*X{brWp<`UlyKO#y1Te{@1z{xX>9aW~>~M41&E%{w?19 zAH#D}7>N(tcrMVER>=5LwkODncJFrj@Bq9-=6w`!6vG-{)oZMGopWV=^*-r4?4>xS6q8I)4LYLGpHkn7g(BDW3RE^ zyeD=usfcf7Y3WYn+$ougkEnzgv1I(*e^cxF8-qgZ`F|CQuU`heykg<;=a;hO@9uEv zi>yaU!q`6*0wXe2E7;!SSq=$1D5b7uP)-!=?O6;E(&7OCT3)XpisRyyjFb1Zbc;h4-=0bvED z@ZKtsKw`z%f9hbkArH$g!)50qg(KabhXdm_E8_^lR6EDIE@JS(x9`rql9O|Xf}M;C zxwT#JdeeoNTWF8>@$Vtm3w1%%Qr~K? zjOCfPiTe1Umwnv6&N`^`jo022frz0xDB0xA)mvuO2o~NMQ=AFaa_R)uM$(7t!z4f! zY(U|sCQg&*P-JmCU`Nn+UQ5ImF+l7&BwMMPkS_Uu_%O|Fd-C;*C3R?WeSrgYBw1sND_PQj*kQzRW|K$zNmE#Fq?{xen%sx!g|Ag=H}z;JPd6 zjv1T}=t1>xl`^*Hb?D}15jXhvZB_{RwVmIu0xv{NEqMAyTVzl2|3F-p-9Lws~}Q|gqffT zij~PKk>zVV9|NK*cx-m|uC1~WX|)|B$SZ`W7pKiG)zp&cHh-`6(0H?xRA?A18qRp> zb6cPtuMbS2gWy|ZS&ia_-I`JC0D8}GS(D2u+bM_jIex}HpUS?$K}fK)P-lfemAK7m z=?eTArE<3$> zZFaLCKYx>pMwCZ=Jx^1 zHZV-du@q7)7_sgW5(Xys%>PTk^;JS&sS!HZ;1iOTX5O+@`~!+kZu@g8u|v0Sk`-+F z<+1^-QIuECQL$|ID1v~c3TJXA`SS9~>o-ZKH=JJ?D{>a-w|(HQdVcrxH)UW-&eeW$ z!nUC2ubq@G>l~pimlVM9zGH4zKw04)U`68p69-l^Z~U+NG^KcTK!_7y#D)%~FQ+_) z7++rc+iq=9l1r$>z5Ng=Jw~A^pb21^-TIspw%Vn_zd$#R{z7_hh>+jFaR&Y_Td^*} z!uluh+un?;u&7lQkL3-YG`sP{i5}<~ns)QE!jtQJhF5AzZ+d(Bc*WZ=C_U^X{PN?+ z2d^>qfnwdQtr75~c9+(g!q7B)4}v6Ci+A?2Ib%%*B~{F+O2KaXP9lZIz*T^VhYJHr z$?aM1FO*}7SPHwsGW3+li7cEKcn(c(QoJ7zu`O^*I?+qX%X$axnw%+^%TZ1M5k^f%Ugh$dYFNM`~( z3RJE$nHLkN*q^x~Vu-3`DC@dw2|@7BxC|Nxl^8T?MfcskNYkQU-MjKLTZ+{05l<8F z?i^Mh?_P?%oqUnF+zza_T>k*JTK=?44;?)~f*-1hB!-ZFhmPZZ3swC7tX2@FZ6EDK z-J17i&|P>pAbqtXvR~^`DE9H0*`&O3&sg_Ej5i09JH7MtLs%rBYti_x7p0ih8MLf) z*N^nX7;{aSWv~A{S%V!-$j^VpDMQ&UrAt-AAVS4BoNn14xG$2q7IPp21w=*Bvy?ce zt(hK+`HON5W_o~Bi;l;Erfo#ydV5iO>E}UvO!XHm;-~bitcmampe|tm1R5>05Z<5s z9+Ye^WiTZCs>+U8w>L<;aGCibBu=UjIss&{WtmwW-@xouy>~gcK;)d6S!r~~BG&I~ z4X;t(-<34f*PmuIe$1qkousnJ0816`7|F?OB9GzvR8}+65ku^-kFKo5(4b4>jWJ7O zw8hJU|0c~VtTQAgsa+Ap9SW@0&59H87pkWUh6g3eETJN4RG`dUTeE-bd8T|-q^n5D z2dK%Ns+1Tzv{@i11@grvjlyU@*zvy(S5#O{ctwFAk@EeEM>yruTOYH2yF5MJ3GAaJ z9c}$Z+@C^mf0qm;!hdMmG)<+1Zj7xgksWI)=lRp8_foE(nJIDHBv_rJuJzvg(QB(e z;Dnu}#NJz}pJm~*vA8_pj1N+3;+q0fzDZ#JG>nY}0DXKZEi*G@Kh#+M$`C{m!xx<8 zdgO%At$z3?l9@4V_BnfXW80<7-o_jRmRk!Y0g0>C9#J@@Yvz#zPUqw0gfL~**&)=C zh|?|vsz*GILZ*|G@=|bSbw(*rO3I%xkIg!*9iDK!tj$UxrgqC&m{7cf(@$SMSax2l|t+;C8okK>;%0$APGc5pqb zlV_^vMEx-#9gk#UA5iOvtR9e*nX`qxx|Y?)z}XQboYc69fxd^^Up*n=wNTx)se^Lu zwtPZLXla{(VAID#Rr&_6(PSyDzi{uL4A`^KY$*&}+@VN!q{zHEAxTPf#l>M z2PJ9@h(lOTMesQ`qPZJHdwRa_PCX{hR4DNeSr>ShtU;hyMBD;}hYv1K=qJqe)Ui}P z96BWG*2+GCSBOdHxeK{j=8${-gE2;nIirnZzMqbZ3_(Svg1`mba6FKd3GEu-D%_y= zVtg>x{d4)T)%yO`8e{-*oj}JE2s)R)qOY5Ng$)nRYKcsn?svH^hPHho<+v?{0id7Ow`eST5gsX5xxBh70_1B8a1x3vRCfpoFD2)6V@yIGZ*yZb3rkBB`64SeDf0c< z!X^Vy@e7UE{y=k=jN-_HdNe7F(eX_@XUY0U-POkGks@POBJ#@RLHm2)+nBBI(FS2L z5AGz&FIBg`f=w;pxiq^D%FtJ)9^wqKl-euTWE;H)cY_BM;SSG@8kw!FP$0atCvH39 zf}sMKxpdA4Uh;Ma(V|*f*aU;3b=sqkFJAz@Cnt;h7rN~c=V)WrWf=iE+d@O@731M7 zXa0Mbn|v^5;CNVOC2WQdNU_q=at58#Ul!gymXjx&k{5qzv(5v>kkV_iB?Z5Jjdd`8 z6ycDgdG-TL8};x{;E5S|Glj!(%1YB#FL5lE-%5;aose?0Xi7SRSj0h8aFE7903t^-G48(0HcevsS- zB`o=6)f7D=W1`Of4h(AaTd5ua%;ZwhbnQHxNwUbF48!nU?u+rDt3W@&!0crG1bmc! z%k1_+!lrv-x4RPzrSf%JLM%N|v32fk@Wrz-`ZcZ!W!FZ0?U%po8AX8mrAIcsSJuR{>h&wHml5!{xKMkm6+= z)k=S20AZgZXM-{pW0dwfsMy??YUOhsnrLDw4bWU>; zw&%Sl&(_sdQoEd#6hRB=@f+#LFaD)7_K}}3V;A*hfP{(S;P-0M(Eg#czKDwIPu~%( z5^QlTbyiwPv%+I;CNKxc?CXW{#d=ZCRGhz`7RQdUfJY1fW16}g4Iznec0PaFW`3-6 zvf;Vhk!n+fs*@}0IZ^K}yYoKpPQjVniI%}`$A!`=h#rh%`y}k=8KQ%VmRe(kd+yTQMi2t|R zd2^n*(S#E^Q$bV|?`+*qRO3s|4ODJBD?obwJEGC+B|%y+eNA8f4OX)|sDB1~Hm z&mx?3K5DiI9f;yy=O4@r*B_{~@>-t(WfR3W0_(%hH(q#Tzik#(w5#QYSDa%thp;eR zY8cwLkZ-fH`!yW@H&OOKwb5KUHFWDP?@R^WmqqH(lTQqp#a~9GslfU|2t40{N0EnD z(fDe+-^D(08P!ya`!g-236+{lKQV(SRo)sSk^fED1{!dcm8d@3=dQU zua*izFMXy}Tsnckv!X!3UO&+n2}F=VrELFxOCqm>k2>UmD9%~$aDA&rAD;|1T1W9f zx-to{<`jJDAQBE~?rIQWgU;u8l~qm)J*Ch#-V!{nCnkR86~crZx%NZ=i$$b|N|a~y zt4wB)D+8;CVLYan6)HVbhtQ%Q21phL5i{6-LC|VpF8hNuX&TeRKI%?&qxv`!U3Rk_ z$@s2dVNzmVCuv`rfq{YAmL60r2~#kT#HmhD@saWp7@A)?*IaE)fFuXM!#w!O)`l$~ zz2&Km{9Y7{ClQPIy}#N;;w@LPuD#T(hP>Of2R(5Z*KUs{TH{tn{a?xBYbXD!Jl;(H zf6C*E1J)oNbPo+_FYNK9$|Fiw%n1ycAbb7lTivaiD_wlEGa7bj#WW$n{Iu1qKqj$N z*GbEy-`DF|c40JU)@**+PeA6IE;UqkZ;ZA5Xr&ajGpeF>s$g)2(eg9Z7Z!&-ZU~Sc zl{h??o%d&dz2RG+^HP%Uf`Ux5i7vI+8K@UF(}|`$**CuXMpN@&{5J`qOQOY%C9r33 zP^Z-=7{BB_Ijd|7RE%k>%Hivg%7FQ3Z$C7h_Uc+^E~=Z;r!FJL{ndL-6PGQYfPj@) zJTDt;JSe$;%DseJST=8`zA#ak$^~HEa6^raj%Gf=io#|!W(kLr~Yh?)0!}x zNn3q3g0kJ5(CzRI-=HyfSmyZuwZ?6rdA{}JD~Qb$(#>vSCVlex>gaT8t_4Q(&t<|R zOEz{7*6k10qdLaJ`PnVzGFR-zK`iU!y`v9B%Wl|;f0RNEmefF z*i|lp0y@YYYwk#8d4%30cpm3~gA1aR@u+S*yu@~$Hrc`T zOQ^JmAqzlnn|kLdhK-$yFv~yi(|KF3v00XbZAY3~$t`|?cAddTY~wu7bBz}n?Dk_@ z`?^D!4R?-1JFi=2PtRH70z|hT%a1TKothm zV-XBeQ`*(njA-#-zk%-9n_J=Ebstn&*e@*_u(B|BuDeJSCy{f+gQ#L zP6qERgOjK=Y_)H|#DlX5%aMoYs|$a3PtQvwB?3ZYV}LN#oF>qF;B#({I@@HC(wicP zphJ%Tn!0!r*my{$rfLp$<(kwF(IbeyXs8KR*kxu0*Iy91*OR7C@KjPtrGHEp^8EgN z5to2KBZizDysAC~6TVRQ>yHaWV-b_s5T5%%xK-DQZ~@$yYjdt=WVDkwiV0B5HId&y9F^F5TF}d2KElZ+3f9bZ>)bt`Fn})b}&R=P&Y& zr820C`Xz(w8UY9h@!RmC9vg0QW6mQvE4u&E8a zfkMlQ;JSy49dG3~4E<4@#aT_Cd9(89yWT)o)g=rEl`@@CI4OYddSP92^LM!5JZhzH zAUdL~joN=bFkabG3T6ZsS__yYq|WNJUCL!zObtEZ7e8plspFOq2Zx?l+!tQIBC31X zr_aRvvkid(JrJ@434%V=S;;7~gLhws>0pg(TWa$@3MgdgYeUyTivY$lV+xVXG=d>SnM2rwcsp4uPK zSZwwN`Nb05h7&m`z$JjksPPa2!B8n3fX;<7%*C9vHvK`n8=!k8o4a36Z}9$h)bsCB zIG7H%JCH^BtWs5jy}eJR1T+DDLXXu~@OEB`RC*!4|J1^t8XU?!t`1&--b{1g#ic!4 zfO!8-8F<1G0-ho`AWarjpzeWzhQk%YM*j`W7rq8oN2*nIz}ehz+WIzT?E=aDRh*7l zMUJoi%2Wo()z5@)pj~r?W^7;0Dnxo$P;2Qx6@N_Sr8VWL>+YpO&`F4Y*&ia-m%Amp zo6N$oV20Xsaz-JQerLdmTCmPeMrz`D+JDu~p_6!-BcjQsq4$Ja8+suNxX!muw0s~HGyVwpz|A7XxXJzmtuHyFzFXft9n zIl889tljGB&4$apwHw5A6G`!6vT{LRF^iXi;%bs)IK=@dmX~b{@7~=2cZ1kN5lNnM zR_*_kjPqS9;e!B8iS|6Tm5J5vG6`7oe*hi~>73b=7Eg&i(jeN%o3u*o`SzPPFYS~R z>{lVQ%(WT*SYii1@BMW;Cp93)Ddm6f?)_og{t0?nlCk~oK9>8+#|wQJWG9;6%FD*2 zcCvq zqhf^#{8FOfK2p9?e|eKG7$^3Ww_boe!Je1@%z&2q7oc=1bZW@2RiMDSV zy5yJ^aII{);>zbt1;z~3CZ%c}gZM-E{z-yE$?1m=+HiDN1#pTOv|IJs2Qi#8CW(j7 zBxW|5wBJgD!l_K7!Y;dxfc*&$|6g^_Hmk1?uFttF0A7Q#>GL&n!Dounn2$5u5=DL? z-=DtSIr?EI;C4c3q6;B$=FRS`*~~r8@=@&PdI=G`77Z&Cmt^Aq(dLOf9xbh~*8f%K zE)mXa&SFA+0shxW+&47IWd#L#=c!urv-gEM{V*T#SouMeg~?~AMF!GuWmzeqYPT{8 zZ&_wST$WJ*^IXFfQ{F|?aDZ~;$)mxW#D>J+T*g?HYv@~LB$rV8(6lit8r|;?$&#g* z|5Q(qG`1_$B;dG!rKfL*L|;pIe(^w#JgHogOBY1NWX`7I4_^_`T6i5g<^VSnj8!fS zFBH^})e__0YeY5Ui!B^bMiW|I%^+S*k*2zTcDLpoKVQzd634-2)TP@>JhrNJ_@;O1 zjCtf;elAj~l!Syp8iw#a-KrRqo!#KQ;m0P3IdPRHuKVyYwU#2;UsTJvcOeoJ|CgCW&YmC18#rx6b0#PWmL^c| zo9~^c>u%^q5`z*Xp^%Q2CzD#RvbrDwTUc1woG_z9q`d6d1j`uo&3PMO%3GRDVM)BDn_-iXJP{koac#!ebmVAdBxg1$E9_M?uouk-^8qi$;ra2z-9@lO$1 zU%HB>QdsO>KPv$+UrB z#Y|B2Z(?AOaGypSM8aH%OL7c**3!!2H;gui&P@@*lzQ*y6Xk?KOI5LImo#b`PvwjMk4rpF46aTg+H^Y;-8AkCwX1J@>mIJaY#=D)CI52 z5SY$wecidztM3+}f`CW_txx1CoNV#={FJKSs>FAx_K$ZW$RpGaz%8s=X>%r%_v}Gz zjbrRjf4&UeEu6o-05(UqdwI!*q_oF1ztKDe8PTqCKg;nwmZ+8h{XGiE>5K#O3Az_7 zJBm^oyGq&HbX8DP{oMsDjokf9&Q5Ej{F6hkcMd;59&Xw`x)(5MmZ-PEM*y4I8#)-1 zRpoEQ$$HKlbClW>Rg{$F8z+dwH~BbU1(isVIjaRaIl)I2E$AN$<+HHKI6AZs&I_jf z50%;%TksayynI{C>d@JCl@(6YRe!Ze03wH@gkVu5rC|S-cYjuP$WP)0K0f|Oy5CRa z988=o$L}1nTZ1=Iq0)#8oCQI2a_D0Y525|U13U?ETxVE|ROo%+3FBUlzs&=DCRuFp zgw=#2h^96)07O$WGZk;BnIJD-BF%6n-N*h4JLZaodc2+XQ#Gso+NUPh>GfAW4QS4T zT}plGi&VQ(sV4-G-_}f@SDjF?DTCNxH-VdKe^t6syO@B@6z$WQ8y|Fii!dx4aq?6> z-(EYW{;#63)>yKvoIzd)rHaRCF$DFz01#Wi$w*Lwfp(9!J471V+HKEgSads88}f8! z8am;6at+p1iFj^lPX`!tJMBcd?PsKGcy5ZU_$9n|F#u`hI^>C)Ku#W2hkU2jm3>4N zBFYeAqo}AjUiqLIO3OQ7xI)8<{RExBUf9J#vc;Anp&TFr4Y4h;&J5HYq z^%N4AMA&!1fSuWg-JE~*5@*Nu7wRv!C)2ub@0Gs>6lraFx9O}Wf z>6iGc~s89OXT|@|yxhZpV|a3ScANdQSmO+%ufk(FW;X6U}%X@f!iY z*c`8j8Kfxu!>X%T-nkv|(EZ@~+s!-QjwHJK`Wk+58z%@>yQ7|sqR^ZC(s-H>Podf# z;%Y9a9;9v-k{D$$#$tjNxm*y+-uL%*Mii|(dvFn|D#t|Ibf}G zLLGw83zZb%M;vy3z$==s{f^J^;!=fz>Jrv+To|dh)+5@j@Y>r)Of1&-aZc>)PGytO z`O&OJ3w;X$uUu$uA`%i(N7?Mo9`K+&?p@Ng~y$AeBLcmJq3 zgZXYGfe8MJYcXj;c zE!3L2I^XRJq=%;zPQJy6z&Ou%>ZaO{1LIXxPqk`9td-WH z=7YaWXw2o{S5ktrt~itg|9PMo?ElH!JW04=2AnIA?cse5igE~}yO@N$9VO;+-^t}z zlf~9V-1hWQhzLadS0*wD?I*1lbCMCuWC-9rJS&W$bMJblqG(FyhpgwNK6~RNo+uO;0T{OD zeErLjjeXByASTe$k3NHMHIPeAmY0Cub%g19L%Qo}=HXG`I9oVlvi3}=L>RZ_6WTFj zIFR0yv)J@?r0ls_BOVb^?b@d7j9P_5CTBjljGsQG^nD`MxW-EI&_uN&>S*xk#mm~- zT6V5gvGy)0=zc0%vD9q&)swfPe~!~0RTWjR_?+pJ9+sf{Q>^7t&8uL4NIG7{QvJ$q zH_rX_D?c!g6<0_^#$&1kTYl6H#oY1pVV0VxzRi^EB>v-9&a?cIN>Ns$(T1h%UHKAW zwO8J7>a@oxLDe3U>YLY+@qN0_Aq+8uM1GhgFQJd^^8LH0asfpXg8pay%ifQ;EpC0rh_tHOTbvi- zv8!xzniMVKR7u^K3NBi`uuGoJQZ8WPIzQp+v;=#u(Qx5v+L+V5o}P!Ynd2H4j(erH zEq1Xy4p`(Rtfu?U%e+W8zo>>#eqEHVbA|27M&RQrQm5uzQv6nX5V3Qn-PO~(QkS=E z?mgVfL=;l5#l_~Hg1nIRQTrhD<-T0|t{?JkScJS{o*Kstxaf3@^*AdB5a|wLMPY3~ z@WPI>8<52GTbZgI83`}pVulk~m=wl3!s|kO4CxD?D4`i5ib!NfS6fEsGHu zYnkprl5$ivGwd+#(_Sv@%nflr%ond?RJJv87}r-DzPY(gFE69kOgc8fJZc^?afRmS zpLcqXY*4ojhOhw zDQaMdUxPaHy97nb6Nl4>WPy~O>@b9e5|d{*bqwVlPpDRRP=KrR9jfv#GEqE9G568%-VByI*da z?;SyvbW5lH`-YGga;%JRcQ#=EQiI79vOFMUe>o<5egr3X4>L?42-}Z@ZbM6h>90DH zmg&&&$*NJQa_QRFIb%S&a(vvnT7bZRQEo8_d)#X~@Zrak_G=DIxisoLO`;tpxoenM~XcVJ7Pkn=a2QlN` zp_3pmaj4&$dyDwM=ypxm_O6Eyqg2`}1_7U#x^fw*;|GW6wT?)CCX?R7 zD6AXLjPXt3yurFi;}ui}e@?mdcRmyL{-0K@=$%HGcHdN6gZ@VHeTxSr_oC(|nV3@Z zavu(;yo3|wg+B#~dW}YkL+>Um(pxV)#;@LHKw0N>dKoAnlctTHad^*jy zqZYyO^(-O&T!r-SbMCf45th;GT6qwN0-a78Te+sgxwbfI+~dpRX_OsmIXCN{{Y-JJ z3X?HBuhA%yOqPDhdv-+Io3d-0c_z3yZFm0Q$a39kq4UD^HcrmW#)j~IdeYLNkYH4_ z=DE~@(8d@9q!il%{K}q8ov*XA?{7wT0pnyau-b?=p;Tbdu?fd(``?;ZOOV*aEG;X~ z{m}Ou5shTZd0^{0VefbEF5a6lSq> zkzroB?!aSC>HRRLp<%!k!cj5+r2|X8i~L~7c`#dn_S0f(qdU*oyL_83>`1q77uQLj zrNzdg7@SleP9N(VX?2(A?wjrSZ!pztI zOk(w^{h#07`aP!=|1pjm4k)|+nFs0jqmB;5r^IAX#@8n8u{|i6e$UU>QrqT_9iHir z2;dLq)Q^X|z@p!GadXsEJ6zTcq{qi-M_SR7xLfEhZjgw^oF_P*^=Rteyjj*n*Vf2n z*4}hlZp8)4i6>K|CBeDI__s~l6iumzodn|Id}?<4MBWV=sOt0S#{D^Ro?S?U*oLyg z{WUHcny)d$z6%3#=J_8dZy;h$I7&9J?sk;4p&n_ETtx|aj(=abmo%<4G;6s2@V0Z3 z^OSh|i5&{L`1Ox_!y`?jrKZ2X=ae}Dc1dxrjXx%VSi%KvAmKT$+QJ+hIMMV;ve=3U zJka9^^HBJtWZ|S4nh3rC6O{<24?BObnojU1i!M{BuE`74;y*_wFO6 z2G@VStP;*t=8VCzFO0LEx~W`lv7V-(TB&vA3|Ym$i8bXDd}IIM;Mqk++1l*tUbr{J z_q@%Tn@Cm|S(p5(Y)GSs%~FH-)6sEn_0*WdWXk8jnHqSUqmcS7yksRavCWPjZSPqeK*vWwZ z+L-e=qQgtAcxxVKGf$`C*)5!Qv7AZGwOPhEGhCbb>pXn;Vlcx(ertk$v^ZVl;$J~sNb6pyD32_I-LxcD~(P-=35x+t(3a^4$FE7SU zkNwdme+n-5DFK`?>7mW%_hIYv^USHzKuZFR#^%7ul0#B$2W}e5!_LbT!=w3_+6iAo z{WpeyKe7|C(Z75fg+_rrBD}BqG7#o2l%Os!{YEe0iWF(-c-ZUX_V+kOkwA?^=H1_zeK*d;sn-NysG*V)+mD(O*9I=&QlK zy)_}sM$L&L(-|{vvqwJeF81Hco)F&AuI{e-W&=SN(X4G`;1S6b1fT|F0`LTWS96FAL)%$Ec>ZzeI?rEZ{)JV`bG7}JrXD6f1 zHH?2W8W^3E-VlE!L#>Q1cebq?Os+m>)7fLy>QVEZBW|O4E8Ln+U;}#QYRMr$*i_Lo zow}@gx=oa(xF$_Bfpb@GE2TEG%sE}3FyFXC0v2RCQG5cV0V*!wM`+mzXP}uX>Fz}m`wp_T`dbK|4 zO+rR=c)qhEy9kZS7l}}H+A_juCyV~wD%F6{EH0wbx1imTT_+ckQ1UAfVXfrA7IWNDcc9wU7_7Pcs z@M!`8aL-3-m*q#w<9>dG=lfohS_4i!b`rg=pw4(kp(@wHo9isYOMM3p8k(B?9)~oK z9~*gU%7W@Ngh*J0)nqv%l~p~LdiT0VPMX64%oy@Ok} z^DFd|ZR?1ma86OGsP}H^Ek~@IJ3F;qU6DEKJPU(G2yDDiwA!wIAH4FCW)tprJP$E} z$FfYuAWL2lkn%jUr*>K!HC&8d-{j%bU9HeG|)_#A)G!Vzm}YSc%1d*rG87# za7_Zrv1Ue#vdMedxb7l}Fr3EIIL7o9Qd}5d%AE z1ZX<}uT)RbQ=N5yzXT5#*Ko8E17L6XP4PIa7K*E_FKZN)%8ZPUI0KskqLt;k#zBBN zU5|xvsRhL0z^#mW#Dt2PAXSc#a~@4>1M85)H|Jg(nI0gZ9p1ePTqe;bFedY4i+ zzV|bX-O$j;5K^u1?gG=b(UBBegO@nH(OcmDy~-i$M6S8T*k{<{s%2idz!O1Gv&f-C zInp0?zjiPZ5~$8D`mfJ1b$2UlcGsV`ad5~xOHi5Mv&PsQK%k>&IN9p~kBjWEVL(mG zzyz`haoRu-fH2_H^`Lu6Jn`^N)^l<|4_&DpgPXaUA-=mTy&?f_i#pq0&&g}f^_0^NqHax2%yr5C4mpc(hqEAskI79xh zU_MJ{{8c{`^!Q(z3)nh!>vCC6yti3=at}EG)-o0vSmdvUdfe8`3!8df@ub3NnE%K> zh+ChNjF8e#L4kpQq)#S%$RTt&$;G)?=RQHj00(3%zxHY_p>8^H(JP3yiV@7iTk3Od zQA=jPmZ=92zjbe&<7uW+IGCO-*B@k^2Uc^hJ(DM^J)Y{#%v7h03*jN%yckwahD$LT zn=ty1a=Qoz1SGvFe2%;=f`wdk950*{4uDQWnkETOR2TC{9txwtM3vNjD_@ z>t_-w1qC?Xne+l zj$HOh&_XB##H%Yk6|dXhmt!DIeRy53E&mG4R0{)JBYVv)(gQ1Gd$7CV>1}GKX`YXC z?s`P0rBQh0MQQ7dl#uProKdBOPeg=ooIj6py5e_41dj7J9Q~R*6A$Pe%p&z0<~8>$ zLEeqe4hFJyax|(S1=Q0&M7(AtR>0-g{jAeNchOkMGvV=sYyO%@s0M2O`pgyF9X@N! zCd7C{I!~T?A~3R$HB7P0aUk6ye?MuK%&05;Ttr)Ae`d)_OYF@myeDaACb{RxCu{+R zRzr!sEGO`(Y9%}AL*@q;EA7zH6+I_JZ!`Tzj9RG46oH&SUEtV@i7wJCbAA2po!j27 zUr2(Bh2!Dpqy>_;NZQK_=;!q#uk*jy=Z5CsE1Q)XzkU^|=OtP2d(0D*+3f=wXay1j zj9Sac>G!E0du;wmyMY15N5{8YHX~p-Vwq2V>ScuSP_9N%ux3T*BOs!yDZcxZabej` z8=w*2(efzP`7K_Lrk~MCGHLBRgW;O@GQ7rBJhdS=ekk8^U4K`T5Cxk6_cRl0D=Yxa zPT(i4{XWIT5&zlN&BW16smOG$CqJ35K=+5j`P@;RmBxdZ1i9Ic_!9v-%M#WoG1nQzq+hy5R8IoHQpg1{6FC6zn|HovU9 zbPE{z1*mO&RPCQ%1$PbQ{jUn)ia!6rdlMvZfc02)f5zHkyxb3HI8wna^&6*bqNAf4 z0uJ*uM|;$YJ8H@qPZNG>WsnHC;x3@)Y#Zx?8-;;|uMqlX0 zBDfATi+lLdo~{fjHIjaJoK)-pD}+L*qfR^>3LEir`7*4M@ySR{jfTEhV*^qEhk0@# zQr%>%Pppn4d4VKD<>M_{oV)C z*OgLis2GAz=(?r#2$w4ygY!|mTj-HOtx-|9nAaUwq*=>;+vSUw15pqal6isgO{Q{- zeXIvvS!E|9$#JOmuJrcy!Ymd)TIrrfQscBB(mxI%IAnbK+D(ta8Ll`yBx3h|4>rM?a?p4Xd7oyx>h@XUR zHnyRe_1_{iSI5KSYd%}2Wl+#;?K32|McRC>_L3Ya$u^!y)2(WUSaeXwOTJr>$|7Ew-qXu`H z3bEJgR@zZv%?{jZp=YKTgf-u@YQA-}{AIhJJRGTLHz7Krh=K!+Ye?noCU^g*>CXj3 z4_^oaB`;6*{A0^e_KM~IV{A_t4hE7WmVaJfDm1w#o)W8(!fPzxg3hU_<G2v5)R`-4n9 zQ?$m=80d}1u=*;Q4e+)nm~uDi=z`o`PGb1eN<16wdM{yb5DB;pw)Iw<3=iV+)Xbp$BFmY z9%%c9yS$@gni;!q+BS(-4NI+GzY_oQESLNtQAkL^=@u|UC@r)6T;Aj6X6p>7m~OBs zP@>}ZS^PI4dUnyT$9dOm3_bLhJlZ$a+Y;Ks@*ADHqoms$OVTH3cj3=(vbA3+$0zX{ z_lWNV-@Q*H-{8JSLfXt0+^_XBLtMpL6U&&G#?i9A>VAFbhW}gPl|cstD8R_-Dj}E* z+XyBJLITE;m4>YzvN-t{iOA@ z;$ih*t=ZJxB3_>48(o|28x|)7l|o($Uk_KQMsjWqRt&bd@7?MyqwXBQo+zYOG0#UAnvjL!j=|tO64|D08v}V`^{v*%El@}rjR z&XsNqbR2Z+eFa|$hvQ2*Zt-Bo_nCK0IQ0|89ozjO#enGD>d5GZO~P|QWJ1xvRS$R2 z{HDGtFXFQCO!lvd3&%SK6bZW{n60j?-XG9bfF)1LE)zKaGz)QB=+U<%c9~R6*e0rr z`IT&k&P%R55>;QYBoxDGFx9SDr(^gIZ8I~JekdqH0|9)JA~`sSB|a*uc+!XpB>C(fP|bnp0+ z5k2f`$+X;o>KOF!g?1uK28({-`_DU@FjK5X@I!sAMUcc_Oq>73nT47B20>PbuOQ8W zzxhni8cbcwLf(I{-Nr9x%Go&5UGzXzBk(;&X5<$_tkM!Q(Guz1#`mIJIg%_ofxLv( zme(_W73HnZXqAaNG3?a2uaR_@U8-CZk1%*4wnSELbaM&Q>vHYt)EJu9gROtz>{%K9 z%Aej$`p-4Ct~V8#VDw#y4P-s0D#5I}^87N|V@6yXH{&DuzXf;b{c3Hmi4tJ1O?pwa?zz=ZK{8p}`gi*z zs1`Pq&_nH*RKlM+sM#Sa@=BGhUqwu?IR7+h&;F>nY0-xr{fa(syh?t5-Td1q4&Adc z-XWR>?1{XPpR2A@30z)Td&1i5on1X6_<3$zR&!=Ti(h6{4_=THEZD(~O>4sN)&IPv zZ?W|U4IU{uol@XjJ??sh*0&QY@rzH4PHzFzDs)k5Bk1Pjtb{K%3%lV4y?cwRMHs&G zPt#2mb*t2`Q}1~gkx#Ae{#&=!Rq+W=bj!h93{JN_Iq4RfEu~AixXr_=Z0iJnA6*L9 zeCL#(fZDF&|0Ea$;!p0x7KDU||NAMrCU##Kp}99IAl-8F?_z1f^+@G;=6pC^y-?L zFpQ0jgQVmwi2odc_dRAsdc5)e0Ripp3) z6p+8R4i5Cf!W4l`)8Da8<1R6V-v@pQ{OGl{wGiCD($M%3pbbZ?94@QChsMkYmuza% zGQ)HJ{uBp%n5UMF%krNOb&Aw%;q`*#@8@jSiHV8*s+=|amBX&VjZLqttSqwsl?yHA z?(S~LEol8w0KdUX^gH^I0EJ2|>xAgH@*VoDfue3f ztVSU%29Yd4a}ob4>(yhm+>dF~G-n!9C@Ql{Wt_ zzqaE=7@@6IDRy>A4)#Rm?_wpCzMM%+_mdITC$f##FDBw9-z#9}uNWE}{?zrRo1!^* zpsB2Pi|3WELzCSR8JZL0F1?9Pi;AUBH)&HM+XUtf_g&=ZqDt6u@U~s1n z?(c)5VavUi>|7N4`6AU8Rj+aA^qA8nOukT+<@GM|hqL3^&R!g^x%H#PK{zHqUxYc$AwSnWdSqAx4WiX`>4R{+?i z#jKBSy2*T5M^+YX{@vB|`)R^lWHtHgIjI|I+@xhCI(k_Sy!O|0#d_*85mz-XMc1{l zv1Pc0HrUa7e-ZbZQc9t~Tz?_4rgGW)VD?^?lhveJ4pCHQG&_krzhQd_(-U5$qE#QK zv)pI(lLGmY@%}2?BKTgGG{?EY5?KdYZU1tkT$ob#Z-4BXl_-CFnIriy{=-L2o9w4} zgPc6)zG+pxWo70x^3AN<&`EB!xgFheulG`^vibel^-SB`AK|T*nKrD-mtV(Y-DzT( z+L6_@s#d2=7xuAXQ6_gfd!E-$@?fhh`Nfr^RcUujPxQMRUy{&D`@INXM-|!5rd58e9f-MX$tQ+i1svf=NW4=od(#PjXGW$%!uMuNpr{BtjcBlfQWM z1$*F~PQ915{4b0+d1m1(WqJH;AREO$l5 zzXEwet2~m=W7Hlacd|2Z{$3zJ63E$X}w@z+xP@UPVjm^whDdcLk0#Dj_C+ zwlU@o;mwJVM%NPpwC>z%%`pO4x*f*%RW9C1{d)eY10aZ~p8B~WJLf7s@0|&&bIMLM zNK3b=mVNE39&`7zQdqoE(tIR;^ROKQON!y|rMF72iOuZlrWM9+xG&hRDV*Yz$X-D` z(@@OSi?KX7ucPr4RP6}_ow(;Cu-FaTOecD>)%5F$6kD=ge_(|ck_V5*b6tv1bk)#e z2|buSXK|0u)-(03KJFc#?O&X?y5|%;U1t8*uAOBxvUt0V@k&@|-D`c{V{_-}rJfQo ztjV<)tsxp(n{Mp{?uMF{$@xv43w_mV zM%mUmz!Gz0!{M>*=|++twK={~*;{I+*~k zvH>pa8tILFMfTG2h_5cn($chlA1BQjLEL5>8f=+?hU3p(-G6IqtqC&vf1k-mr|R>S zl1XLd%2CarY*C7Cf!6Kg%@SuM(Cjm{aboq<2SM=iYh^ay%{QJhJQQLB%8 zO+J-Xc8_R~?h!V3&Vy-+A+MUoC+#L3&_s_7TDUJ&$=*kN)HxhDE=Q z_>6uv%qtqEDn5cS%V?jvdRIp5-#~Ho^vsN;$XP(B<@)sW{pfD%cMQRUT*$GCb^h_C zpFz`-+8*=8Xpqj^l52i88^45pOM_i8ADlqW)Jwf{WAkWl{G`7buRoSLw&rzOAOE~8 z*73)}&=~@WD3SDF4f+CU@9`Y1N3ujtPJWEYLTo4}_$xz7uIsKz{A~|}MX`Y?mQHtN zBxF4Vm=Yd6{%TNXV9s|FLYa+%PCQ>DZ+aYZ%Ow@RBg!45(G*N3CirWzg}s=0ZqW2} zc6D9<+>3Vib(%=*VL#2+L6>OXE?4|(F9x;DJ~&Nm?i{!)WqCkqd!1i$2*%|1upcj6 zovzY%l%z@w^H%;aWPhn_h4y_a@nwP#^@FpQPoST zIfe)i7nsL1RBnj}Tml-<^5BI%o~R+v)y1zIw7i9JY1XJokuXNc{337y9FS6o2I(+2 zAYDp#qc+F=K#~}$h32cQ#4{j>C&m{00MbQ(Jh?;8yDGZYE>^CzIK$W3hVbP(GF55~- zDqzG*+tOKlX2nfr()W!FGI2}T%!fW)dUhHsLq=fNQ(bA-G>x`0bifBam35Hgv|y%` zitJ?Wi?8=)c<7I>4P9eoBpfa<{G@xroHaob@xZ~+v0euaLiT`LAT=sg=X7*$zFP$bxn`j2JTqCx>H!p)8-e}bmVbfv-Z@#dAw zzXmfUl6x39Hnw4M(`ef_wu*B$GxL;c#jE0waPc%-BODfOKf6fEYdK75EJPIO16iG0 zx;>70QRFzj&PUy_&k#C4$Nu6GpIY&9$LIkIq-*`4D_UAzm6;1@QmxR%%AM_&8dpAs zV7B?I1sVz88@C) zqawbjOMPzcWYAPwr)%l^tZvR}C@WpVmIk?t5kHMk=`;{vLwHU|0}GkFIAlGJGaV|1 z+=lF6)e29n*S_ve`!d^014Z-@E%4|2>nfd*p>!9U#%tF|mC}8_Uq@oj9M9kvhD**! z#>6Omy3A5_>V)0*Oc|wu6C0}Brcz|*6f)->Ak!UJ7e7pnVjEjqezm6*d)s8km8~yz z`=fojQK9wVjW%0IMP%O(%&8okdsv-Vkbo4d2{Vbevda1SMJ=v2lW%iZ{!F5!%55Fr zab4uRH$=%HQ^2tCT@omQUH_3k2O}&x`A@yTodlt|MHLAxS)&3{a89KC!fq4{2bDPW z8N0R@EbXk_I5t=Q0HqKAbwvCx;^I0!uxe?Wi45mY-*TOz419ZxKp7km@Y&X0E;*`+ zmfop9wzTzOXH4FvUyQJlkRUGTl<}`Th!_Dk0raC9zi4IfZ~hu%HV$!L_f(644|jpT z_xJm6rv9;;K-SN@FTV2x$qaorDVQ|i(a%?9AIjiSV^?70dGW<2* zDeMX|!>vsOFC+SoEA{bRba8lD6yU$-T)k4ppX99m$3swhC&5@zF6GCx#LN^I(H~^~ zBIa|$9~Fonc8#vCF*A_pQCp~;yl8CNXf%NtNMG6lt;agAddde$@on2zgB>h}% z^6#q#SFNX?$tWMN^_Bi{_wd7JQSZ@X&elAb`JJSVI`-k>mHx`FyAEk)uDURpjQ*~r zfcto0_h4gA?H^L1*_!=7D-C{oo~IsG6V>t$9$b9<_%XPF|9zTg=P_TyxuK<{wSRcXy!5yBL9ugej8a=$8?JB>2j|5L{vK3PLpU9j7&bRG&53Q^ z`b!iDYn%Q^gPG7ih!Sfd!S@SNshCM&z$80GyNmDVu&TVao_Wtip7E==@kb2?2~JOT zPb;mP4V(6ISs@!i^t*RgIgL6O|M{PEJ{y~xQ-{0DOpf8v1i3x60R9HWmc2QinN=bx zLzy&{no`sD%hAp68PH48acQ27&4ZT|bxgU;x;2f)8!Yta7|9qh z2~2!wTz-=8>qk&+PiQ($ZJ<~_zVJAe3X_j7NNZeWZFE+4VZ_;K|Lwcf0vk5XL~apG zLWkoU_v~BraQXd#c&m(aqIB=fW=VviAZe zEhZzQg%J$-B%0o~64SVRtwq4is&9wn{!V|O1l8D4C9d|LJ(iFl_y8V4+u|I$HxD<7 zzFD$FiBtRWhXM1QIeUpD{?@tT>r@sx!Oe?HSG?VZ$t0*I6gTQkCA0-Y4@PY*9*5}^ z2@mAVjTl-yemqJsK!}5RWT*c0Lhs9Sr9^j53jJ(YBfd_3R z#IkJ@K^E*7z0Oyg$oyi&SLl=!tUVvDUpA80Zt;xJvLcc6z#->`rB z=i*!3Pt7KoNHsKU*pwr_Coce@p161sQ5@H*e`MRfLcCB7-lR^o&82j?VVkYphPJ^_ z_@u1F76a{LrdRDzw$^^-5ov}QZ_{EdnfiW}pP(0eK|hcQ>;k%Fw*BK!;VSiNL9yA6 zmi+)vLn0~O*dt6IS_eRW{QYV2Kb2Cg_UVnwTpLz{gytsfgJSCvL&ZE2R3lAeK0nI1 z^hvb31gGEgNGBY*9F{cNiM;zT{MoWERW`|y+7i==pW^cU#WLrq9|eX z#P#l?xLz>cPibGvL=y_Zs%hW!Gx7^P@pl_vQc7r7G$xvA6F3}RRj9UQ^pw@O1ld0Zw*Ev%dgB$H)Za5c&b(fGjxf4GFf{5K6m8h zx!39XywYN}6Of<&s94DjegGR%b-NaA?K4!e3Fp4Pm~2pNMgcW6Ox%NjJ7az=BVNZT z>r3P22A@t)LGS0*d;0A=lJ7J7UfMkqWH;}&E4Dz0k4cR&X>Q6xK_Et8(XYUMzV@5pN)ds#&E`5H~ z10Vjtie~DH)9gNlqg=jkZ|To1HJY>| zFeqx~Prr}5gyrs2*MD-5d?8FC3-RqW6X78YUK0!SRBM4ssF;KPyO91w^trdS_NMkZ zo5@M+L%g{53TwWZ!N?~Nxno2{qj+jgHYH9lw94*9uQiw;%Bd2^&2Sop>(5&D&;ece zVc7dkO|QreQZ?kMS;BvYetc9~!68(}|2D~P*`uM|KL6D5P3 zR&CaBN357JN#J~_!Ax4B#c1VaZ|jBA&h~x;iO96Lr=~z8AL6I+PHCA&xqD*HI&b>H zauEzXzLXgyFU!4F+P&TozU=;2Xn#Bo9yFeP&vDsQjD%p_^-0{0fqMB_-dv8)!wB1* zSNurZF6|(>8R8a1+QYTu{cbhmv$07SKp=Fo;gUW?ukuG86Ey5OuhV7iH9a*Y zRh&h-xh3254r-j{+U3y_5)+|q*JWs5aqdQ-HDpGy)h=-nM~o^zvbnWhE%pWyMEf$O zJBdjl#im-jG>-HK=A(QGxvse>ao0y5)ubKQXWp9I|IGyuxxWWm6{t2NO%QxwG^8xfUmZrrVPp*;*zqI^Au zyQo?alyU41hcqx{TLP90Y40&XQm|NpU?IgEi_pXgD2BBPWfAE9Cx#-xfzOt;C$Scs zEDW%o99W(>GWR>j!~8_0&#t5}gc$ek$5$>7RwDyq3!-6Yv?RdvTK|Xz7kb4#I^=FY zpO`MM^tS7dxIM$@JKBt#eW;zMz7q-+f7i~PdkNwC7*_|D&E@jdXZ)v0 zG7K0G$omMxzhmEgf7LabIseA18#Hfq&~39T%FWj`ALCyplIV57f3$LgG6hL+@f^X$ zk132P^6kf`IyP>QaQc^+6^8QfX(uBcGQ zV12)^^my?3KvUC&yWUIWj)WX7R-l1a71QUnj zj&mNBB4{LbmUvcV$Xfye=_-ZJtf3;D8SR#W0z#1pV@QEkqvf-&rJT zm{=!mSX5_D%Ft3Bm6S}6C^HUSABIFmm*E+vKc*vE0SZ{l^k8w8W#|UyD=xPjg35Wn>be; zvrULMAvRu2W$x-q-Ztp za3y`nOv{h`sq{!^mwsCAMryVm*A+$n&M?{*8TpRc$U$S#90WVfnfI|3vr`V~;mD=KKFCn|^Xpb?^bUTT;#bdnqtLcB&iDD|0J5#U+ z?d6k0gg1HyNx5Gzn-5scoH(5V4Z!jweN^Jn2et+)_jlw{VscVOyoAko^j7P2fmV!A zA((TfZk^8$c&9GU1~I$I4ZJ>F;ZeKv!Kx1xGHiXL2K&J4k3RJvxe~N zP%re%FeO~-5o@Op3br|~?-ST&xkvboIojHCFhsQ7>wPK@e*%AjXGF@~UAQZbC$pEA z!t}?yi11Ep{Oyxf+JuB1KBoU*=rEQk*;(@Zf&$8LL@yb*_0dsDNlj_2w(gwELRO`x zWb~SUwlYO6fp61{hlE3=Bgf!24X!cIttCgEa^y?pef_b$Z7Q$*)6F1Kk;U*|qLIqA z`ik<5%=sK86TG9vUJGj%7)DQLU3#{6zI5bEaC*2i4y&sz1>^5w|z4Wk= zLpF%vw!+@Bv028;A7)2N=zqlBZmxem6|-BYD!0+ufiX_P>{X82pP#_bz+I59j3P~V z|0cZVJ;7&xPT*r3O3g@dFs1$e5&}hXmfd_BHuoL|Mv$k?x)FZ2Px2Hg2%6bo_Hd zAFzf+M*8^qK_&bbj%Thu6-{ly^=I@ty8})cSF$i^>7@vLx*fQG6a{n|aRIi0;V%F6 z=DqAlNl76eq|>P2vv>wa_cK-%Bb)l^6hkbD)Am=dU(3kIeEjm|qP4X(1Pv)E!~Z~w zWB+T{uDyfHHtF5u=O5~w`uT;K5vtvR(1X#)1_lN;TeC7yivK*bzgPE9ShO|S8{(u8 z1jWO{d-duS1*JkTO7Y!^8@9;l4?X|ach|VXI`r4cq@hvj`d_y<C zg?vB&xP`y3Ftvt^XUmR?)B^4?__V%4f<$4NN~)@)pkzXDXI{0px7*m;SI}5qzjp1L z>#i9Qn^x!7XPH9<#&{SQ7#A=wbh)2<5S*Nz9D#e>V!)YaG0f?>J}zHi)MdtQ*V@%( zc(}7vXx4v8S$UAmGLzx9$~W)ALT)G?F|W)!}3t6Ev+9eC43#-+Iqbs#A|P57!6$Xtv1Hw z$zQ($YHGv+iCFc{PEWW^`%*>)9!A~PT_3OFwj9~XN1PQfv9Rb5=4f8Ha6zN*AfDG! z?_g^V2Ioc#MZJ4h%QxXJ4!?~yl&25165WO~&B2A{gE?yJxp1cxf-l~J7p<(G7`;4t zgcv^Q>F#E@b7w7l-DACS8y8rB{;kB{&orY8lnO;S!uE7ALXktswTYZ4Oe`6Mw)*tY zJnK12qL5Q_M@JxZTjaGGZLNEaMJnRT%@C2%=eo7Mty*ex(`giFTKFlI+fi}2+BuvY z930$cKQDUM*Wce;8|yee*d`UQqq{=JU7A&{USj3ZCev8+>EsAmU^P~Li7-97!-5w< zux2BOKb)f}M8;>Ok$TkBq*7pXg`S?C=Ttf&(01))b>&q3HqqG8Z@JcD4m-Q!iV7mA7e+3`@t8Nm2!?~1P_f1SOy$&Fm2Bwo=L-__pwi9($Pvc^r+7Z= zZdj6PwYva3u!^j5M6sn?+0;pD!ck(Df>A+i2&K^ZM`~)aGBVh#YK65E6E!1Ndm9?L>7G~YSukI}NzW(%y#;7yqUQd$9 zaFrXMkB<+x#n8KIk0Xe-cVbbyqt!ywI#OY0_Lfj;MmDz4o8rD`Ham-tpXX@En3*v{ zxc|lC_qwPD>iGuPsi~=8H^XCM9*mVc_y-54%E$B8E)5sL?Js=)D1MEYcxGlsJXzEO z`k1f`raLSTh0vIuw{^FPmw1hxeehr~NQ-MB12keIC*Ri-~H zV`pbqy4g&gpYv%_CH3V51OzHYX4eG- z1VCsWr7KXP9U|B95>Af?ap64fn`Nk)^h1OFP5(SA@0ILYX zBb{&bCxqjAm4w83oCBykoz3Z{AWESqXhU^=qls7>#tU?LpF>}1hsG5Jwlh-o_4Pw# z_KcXXU#7{&+ja2_4n=VaOgNmiP^rLnV%Uo)R&^ZVWkoeLGEhqNw{Hij zTb23bXjbIIUP8dq($H~rL=p}O^xnEeDfmKXsV_A_(BYD|w&#J*@v*y9C{@?~=FH~q zu3_&d$?MG&WMpQ@i#x*sfq}7n)~I_KbzRO5BI60DtOV{x(`}q%q{y5Y7*Y@|ZG<`&+d)_~9`E zUU~E80$kf;p*s;ZiNUZVN-l=|qehjfscDu<-Yc-DT(;8^WISe#cw)zQZEf?$VxGO| zY47PV9ST0q?c33W((ez@r4cNDFJ6p4LOW z8i4#I5**A5*JA4l6yXh@HCXTh5iD8ZxC#&Lb#@R~U62=kA)z1T4(8z73fN9xun`n+ zGD?dbwqRgj@LgH4kd>8fZvx?yO;<={UQq@_P(vj^uoY%{% zh!RFlP69a2u*nXx~{;Il$4abf5}uH9v=1;7%KwYTO|Yi$_T2_Vyrw8><*~I`zMFH zr2IBFR8>{s>(QCUuno{?A9QgbEDRK%Bb)mO02WwSI-CZO;U6ExvF_i$zY<=sP|=-9 z_OK;{68a|6v$J1?=q{W!X#)egq@*M;_iw*{f7I94$4-J%Je&eM5IK+x_6kG@u8Dg5 zl$7!S8zY;MolX-b+(}47cQ8j_4|F+WA-<4u?=@y|&;I?vs$P>u9d;dd5@rop8cz?|hYvx+756_2+u7N%3uVQ^z!;{#*5h$uYx8OF&3kuD69654w za`J_b(z znQ3Vo_EZi@p{bW++fS~CM72wALILrQIRdaXG&H=4v8^Q&3eSHXxc zcDA-mPPggk-t_e;fsPh%-MRJg<43T}wg4mC-QD>ee*HA8dA~f$aRmp54z3WzuKi8t z<=AF;H~}XYS4UBNT%4MfqcddMtRey3fdmZ|nnqY^o0?{fAs5^ST@3SLx{S~u0%Xy0 z{yeJq)Ud(#N=kZqL{yZNnVFf-puOQP@wID{Gc)=~y{y{W+Dpbv+L!qF_$qqNR@R-K zaw!Xna65>e}5<( z>fvX*JGZhde4k4e==5Y~ev^HsXt2fK5YH>Mgolf{x@X;&#IHZmR7aG(XyKRu8vH{gpwv-mX_%nm>3OR3K*RSk=j^I?!lS9WDER^erSQix)EpEx}`2s!JeUg)@ z!E(;+G1AiycU{T?@g4#7c<yYcNG-3W3n}zUM}PA!Y;eqfcBA% z-QA*0HZifYPir#&v1xOtR&&n=KwpDjZ9m_s3$jlk;`$y1UyQpcghfP_2D0Nd53aL3 zw>jRog#)URr-uRHwi#rNm(Uu##yJA4)sdnZu-jRh6;WWeP=K}Efd$^oPM#Vnxa+#ZyW8uNttqgGx-B!5^@?YV! zKJQ2EISKAbV{^0Ci?RTe-iV251s(o2Fi;<`3>`gvZ>DnYb`qq1-qX{g!F*j8b(Jet zjzZY^9gqbbYe?93fftKc(O{;?O%ai?;%YN+fl-eD?#RH{cpG6|V|%>6c`0Jda-?ty z4voclWo&1s+(4FUgFhjog@4`9kP7O)z@=+#Yt#LaCJ)B2NY;NlFc?Fj=c)X|hqNp# zfuIXeNDHO{t*UXy$^r9XGg*61{dgf$jE3fw>+Y{jxKLPZY#Uh7Appzt!N{hsE9HE# zaw%zP&r8>G>U4DG+9MmAn!>BrV8u236C%JVKiXoCh(nAi!De& zFP~FjW61}A4tN;0QWqdFNw8GK+sh1FTtoHz=I|1nhFQDj%c znC(#x>9(iiBTnm_yj9BJ6T0zi9! z(P7lY1>gw_C_@1?iHRk{<-?+*{Q!pXjXTd^41TC00n-;m!tn}R&dsCs8qgn`0EqTC zrU0L4g7lz33U` z2fKsX;MCp$1Y5#NZ!>>*a&^)!Mbsq;KrtqC|Hlb>HumZn&` z0mMue+-a2O2Lw-3ON$>0dSuVI-6Rf3{X`t$usRZ{?R644Twtuv84JP+gTe-Q-F7-3 z7J43UN`w3S#8g{4h@|e5WMGVlTk&d>EzGp6j`>(k7paK^R^bMKRp?vBY1n?P!XEV6 zBBF%N>v$8ZtgNhf-2`QkQ@s}|j9r|aZ5podebZ~YWYiTWnJDP6IFv^V{0bVdMQ^A? zTv4CE3ntR*!LuSRx^~ylQbJPlv5HD7^r!!(avOYVjYziE-`Uk+XT}?w);c^&?Nj1M zl$0IG-IKar3kGIJJ}pUZW}Jh#D{51DaiC?|L&b8Z4?kArnp6~NLg|2ye`KZ%3epF@ zpveC40Y!1yAS_FsJ>-;|?P1{Ix&FFNr{wu6ijM+-ur!qS8J#vFU@_@;5L~Ik(AZdr zuH-XmZnWv_6_2tsCqKI*az31@>Ac&T)nST89=WJ8lh*)MQO)|1gZL*FQBb8(uQM`k-a#mbBkFjpL5j5)vs!&~P|BDXF_h>`V^uCJ3HxgRd!X z>TklaRr_reSt-tIzmr6DE2_?}&sfi#g*ljfIA*A4di@yLSFEdUF)lp>L*mQmNy(;BfnCYlQ3OWa&OyprrP2M+c5HPlcV$F7-vT|i#+}+pfug%W zaa>;KuE)Ubqo*?e^8E3!`jpV4O-FWeV|h=^D?Fej!Iex%{4U<~(ucsaFtV>DORXSS zS^HQB2I}QSQVLYE1(PRg;q8U^^KDGH)D*ZZYuVW;fLd&@FGxz)8v9}W({tyedfECE zU#aodEyTf0i@_a z&NJP((AW3EPl=L$Ss}BWw>Dj4&!aCBj(u&z=xAi5fM!SejB7VAFnk~@XgDPCNHpuy zC%uFqDGd!do9E||EA@t{hQ*rTs7DX}t474na8#Qq@=cWMnyo^fbwr$1qery)1Mv9I9j#lw>Qrp z2b=z6f6q6OBwoOvTWHmPEwc#6ON>iV40-bjV<-(5SG4j(LRal+;^x*@X;)XrGTyN< z&9=^V!?|DCFIKMl#Ag~c{OelF|B3*P;i=QZ*t4-dyCZ9ezz8~+G{qGm_Fexk;@&)* z>b;HsrAeh>OGTL)X{QJoGNchjG*X$0Q0C0DN})_iNTy1WObN?8Wga5QxXiQ6^K6~> zcT3NHp7XoTALlyPb=Gw~&)z#)Ykj}p&v4)G`*puRleAPOu5RxPf;Wj$Mmb6sJ8n=p zDv=#peZq>Akrt-jyzszK8RM$wN%e<*(csvuV8f7`KSbeEcC+Ya`*t7(XepyCBb< zXc=Q`e-IBpDQMtc6xWL?Nm(;b$Sgnm5m_fMzdhLJ_h_6RV{+f1Vg-|1JE= zOoQ>%T_q)@q`pZym||VkA#dFKD0#wXx35h`X0V@cP$t8Jucv73BgthU9_be>uK!hW z=|XYd!uP!fM|w%E@j8`hH`^GNF3Yn%yACxq{lIzxIGu?r{Psja)u}t^n1Scxm6F6~ zs&1F%5IwZ^L6eyJePiR!5V&+9s8P~m1Z8(!86GVgId%FxVT!Y1T`z7ru0k( zEjg#e=XZwR^V{ZVIeB>{ipcT0B9CU84{KzZdi8!E*glxnZ7Cb7sdTjlVYowug_VX+ zTziJ;4=?8PGOe*3VPm;`d{on#g9hVlqJAV61GVXoPS+O-NG{rlwElT%(}ehj`C<@y ziaS`2wLYY|y|CtP{nm_tmF5>58&gZRZN$cwurifrrimfBJHvPSm%plzMbCkzCf0b5 zr@42J)_QyBHa(w+&?MU(4_IV`0ab%p-$kk>%OM?kO01iC(>#ZqdA3-w_rkOT z$J4c&yZktYx_S$S_So5PiOHBbCMRacAZ|OgDczdX{m?#5_T=szh!4VbmyOnZOp?$t1j{Da8pB49=3xiLd zUw`Q41}}~r>!ECV4+j_NCuiLxR^qeNdY-Fn-F~C?^L+-kvU#6#=Hex7!J1bsWU=>8 zQQA#!9`$G$6p>i*+-7_q5euNkpUP}-`|XqW?_VC=uj1e^ubY{gntV}7$*AcI^`d5z zMdwMX^XE&13|rP#hT1>Dw#q@V?Oshr`myowUZ(qv6H{C2-tD%v%HwUD#i7Bk4!T`h z9#0HQCAU2#3RxeSb|0a-8UH}+{&&)aWVPnQO0vbVIH*8pE0umU*LXkcX^*L*iaM$p0*y4LJ# z&z76sG4zRkDRIw{_Fcd1*Hy*}D!ejTjYPLCu8y`OohstZo991%@QRB4@)qe1Q(8h;HMZ^3 z-KcdTr!n4gbFlr)UY2^vk-{AMX^mDB6wwJZq>!Y9z|A- zhF95-ooMdwn^|Sty&xO$F&{Io12LcC%=E%J(UH;(p$(RMQMZ7@FSAhKPu;(EX8lG} z3dpIfw>Lhru%1=uuT2OZ{`^MUBmMIm=PDi2iZHEw)?-$WrkW_+=~nq|UB6DneyEL3 z1CqidIQZ^bNj|)Bnr!B1fBC2P{Kb@4raX5}uKb;bi$oRcpD)`;K;+sAVeU*gSwVED zYv)Odw$SUzbDE`4h9QX>*GkhXV(-D96F?i=<$`n0w>wd++0B*X5pC=E92%Y zams|ile1^z?=`x5G~2H*H&4{|5aU1WB{F2mDwHl8Ro9>QhFW=MPE7saA#tk?Diym0 zzEN72SCjQQqKiEPX;ayPL`Ve|Mo!F(L63YiW>RRG_W7mx?*zuB@LG6M5~Ek|FS}!x zmyi_qP0QW!9iO}~qMkRnSO3ev|9|;{|K0F?Ti;5Cj*J_#2@7xVhm*$(Prvs6gdk@Y zM_*b*?dRqFV%ZUEjvHWPa^TN4Y;So!t$K@mM9AJh`@Sb%01L|rJx}jI=}eul;rU80 zzme8NsNj`xk{i6(H?-#|pzmxk=M2fY<%!l{Hinu)^Q#N8gMWW99+f&T?C9@LySYiw zr;H_p`oN(t!`Y>lhi<0%1T@$P=aV{uH#eQXb<6fgW!#SG#PA0Dp>IHHtgWV;Tb+Ux z&m#%=f6d%?8gW^^h^gtj}qXyHo1F!o~40GkyLx>e_2ftMO>sJt@W9};$e>+epi z(!mxnK!nn z+mGt~c)$=8^wl$j1D!ff1M?&5F(J08QtxgGL%mi;Obewmqd zlc_E)Mf&haymVPfjjUh4uXM1%apP$z8DR-Ewe_en=P z4_@~?`V)^Su@mp)<>l2#$~IiA3zP3}cD{D?PWIiSs6Ty5N~=15uZ{wXl&&tL9iD$8 zZ>bBH+NvJ5O|sYP;nej9niq1`Zl=XXiz5$Cl4An`MBVoV?-D)q@oNg#^X5NiPIz)6 zyrZd4@1_d2%Xr?=L67;N?+{x4983O?$U~D^p(Q$~wheZBSceUCEkVUPJT1X^=@; zCRK`cy1>7|YOWGnfCZ(|zV+A55#Cj%zmj;6E?W#aBqMJhSwDH|_uhcF)cE(jEKx0v zFeqi`6!B#UPA{l3T?06z@&$qla!RyGBo6onwlDNdiDzEfdjy&T;9Lm z2fQg}*01XK6uoSU9Q^&3o7ycD#HjZiH8%?JIS7f0HdMU*{bYX%yW>~5YqoeEEGjGn z$#nKy%}&@%Kmpl}^2wjylj8rU7P(JQkO6|Sq|+rGOKWRD3w?i;yBz&lT=pyl`TuqGKVQ9650^=&Y!jYf zlp9(!AO6Z2eDV7AJ0d|Q(~R``_Ag$Q3G$ib5+r)aS1b3>fPJLC>p0a#kE|fC**Vaw zT9Ha&A!1RaChR->j`25fEWiIJqWM?*%)NU%rW&Sr<#l!#Yo=#0#fTPus#3HV_*O>| zQ7P`QR)s?Oz#!AkJKG_JZ(`B+nBAUqC1p9WIqI32CuVb9*g2XhNsk0oET7i}iZ8W-Wy$JbF$1g`IIR2s5hND4A#IvB*m`TPDE zeIRsp{yn0i&TtuK<&Lo;*{)f6y`-3`HiIvyNB#nGgF5$uc%AG?mJ!l`SNM*!i9u#a zV(TGEN81?~Y?hC1lChEy*e=bJIZtx@SeVb>z`1-CpNPSreI`A{)cGFyD+##+5lr^h zzTHL@9_}|iH&YvUB{M^i;|iZHxjb!{PF-T-J6vbyuT1k|M%0*l>ddzcq`GQU`iP}1 z7CZ3&WLkb_7s7r;iOxV~?h(qjmeUVMsJ3q1-rA=2g|od)?W@|~)GY{Kj5`YN4+fZ= zelo#w;n>r}L>jhl76HfNRCevF^^ja#5Ri{Z(1bns((CeSV(7V9FGSVZOni$;6B)Sl zHRlnPp|NSU+TSEjt=O&YI7vZ5a}#&w;*N4L{tpfH(NuYP`{&zLE0c_WY&7Zn;Zt34 z!LqN)sqTv&H>2=c|ig2B^xlwN=T3zx2(#@XqujxF+92-Uwyfg z=JM(??&D)ynFJz@;cIi5HeIA$e15(}`}o4}-|rOp6GW;>7x*$}CIz3lNbAPkOw@G= zL2_p@@WXMYIZa=|Zv3#vXl~}<8|xYpa)7*BM?NE+ZP_JGMW|RlKIiV<&GPOI_`MVq zt`_28J$_0;A{6<)=S@vjn=Nd%ydJUYYrFz&pCR0;cQ@^AaD+zH+IhpHAlS}BgrhNQ zNLui(#HqiCB!qS1*Y|gpr&DK9f4P18g3Xt1_yI3!HUrWSp*VWeel2m zEWCODfnS%_+T5HRhsel7#9E7TI1tp<|JzzC;2(Sa5P~Zq;g>f#_U>KjlJ}@i*X&P( zcKHH=u?NocmaAxJyk5LGb?FivYIM*7MTFmrC!ntT<;xf7<@l+HF!S#j7%uV8LhUER z4t^6`LJN=}u(Xkg@^WUc@G@>7b{>>XE?#{8Ut3e32IG-C2Y2kKBk4J0pGdbdz1tkU z+C$Wa(=OvUfBoX9x4-2`Rr&St_VJy1k{wE#aW_2jmg5wq2ZTWPHEH*To|+vGkf*%Z z#MT}-wU`sfUE0x@xY*m$^Jm-5rF#iE(auiuHUGv$JxS7CDJmxfiY}onzNoF(O8U=+b$!5Wpx7o?0q4xHv;5T-*+@zs~ za({#J-K|--AFWtO!a0tM0!fl?Q-8YkI%3LtdZ-rrBQ-Q$`uJQ1WO?ZlPip(7(Iy(o z2V0rrqW(EcJ z85U3fHh1fYGVl7Vn-|I{D73sh?y2llRams1Pt8v z?rvSnCPNX_r}(d%>&Zzp>K5ZRY!(x&NHEr+!q$2LVghV-xt}~aYcf>tb4`czd|4h> zo~rCVZo)YwHos;{hE+pnEOTsoT+3Xi&3tzIDw-MUVMNbo1Plt_ugjsj``6ABKU&*u z7Mh!TDmh7AG!oi@C>DLOr!0=KvH_)Cw{9JZl&D)j=VYw&zIO3qmgio{yVa3(`vWuY zRkEX~m^{QEi4UF zPidkku+x0(*6dWD%*m5omoJr!+9odhebWTir8+Pnapnvx1wN&#;Eo8J{(77`*E?6!=}JZ=5_i?) z*UxqK_LLI$s8I3KD9TH?%~HhOahwxq@SLGcihE29HwvH~U0tKilttgqpN{~Vb*{ME z(UR>z0O)wUTeff4ROoI>w;q|C)C4Es&Hh`g?)Zg%V2$-?3(|0@jPpW$s5I%R-0*OS z0pHj{0S?K#eEFsX>Oa^v?j{?roR=$)-YN8k)&nO~dmLB#`lHj|VzfET>jM`T`w_-| zxi2@V4{#n{Da#f#IeR*7vWuZ~dRTFBBuj`2sx)eMhpr5!R1BKrBu_lO>WQxn2!@Kl zHyyGK>-aWPTq7xSn^f*CVbt>0>D#_VM{WY8LNF*K+hgq*ZD#;b03wTW|E@jHcXX#) z=ayV>OU%b@USYTrEeTRmSyffuM8$Qm1l%LaVOMm?q;Fg!H?Lop0w@67x}!VTo+vzu zi)Zc}_-$gLbR21!Cq%6Rw!qx?slo031`PMddQP5sOc-RZ!SyM=Gc9jAO>C$^R`aq{ z!towoZyg=363j%+^HjHc7#mrSkyS?R^7^pR^}2B?=7Z<6?jHTI>*#~{@k7W5E0WcZ z68SjI;t2ccn7(sknypZX2oDNKedm3Fypc(jl0!0Um6Kgr9Y1Us$orPk$-_d)QKiGo8(gLs?AawuHg9lVAR<0}; zF~i(Bq@3~+!aa~kP%>{pSVIpYALjpjD|^KzR?+K&^E~SL1gV7Y2y$WX;ll)xC~VSm z;_B6_PxOM)e`cW?ecd8OD%sJLkntz;6G=%s&K(vf?wi1r#JW&UHrx`iuljTi z*bDia{!;P6^HW7h!lxU3J)s+tNg`}z0VvlAKs~HTx^%!pT+Cr%ol_k{aIP_T>HDOl zTvAtrmzSrVt?+137kqPAC;2PO>qRiJz$!P#iklggQP`kz%F1P0L;6-`AY)%PM)Y%1YX62CW@F* z-oJqGz5^01(-kt!= zLnPd$TbEgAuKAs+k5s2o)5NCw3n^_>6kxnu}m< zX!DH-Or^InZ1Y}8_k93`(6q8rY19I(q;+=SI*2Bi-rinoNL6C+^jeK?8L3eU_NxYU}QnL{9^lpAZm?s405A zetjNg4*bUlEH{rIKgRvC#il4FFTWiNK<6)zc-R1-JR4UXWK3kqm(tP`ZDTSrVhXlu8)xCn@+72g=)$9*$1qNk+$FdGo+t5;t}4WSu@`Iu2|bZK(CPhg-MzE))= zJyz2clisi3?Ra*UP(UGeJjM?oNn-l|F1>F3`ggdQ#J7F-?ru#q3&6h5f$e|T^>fL> z0J0H_orL2IV5=^~ja0rzgAn+oVX}~diPkoq8ZOZJC-57FRxGtdYX{)E7gz?d zM}0-uScr83n@(aCv6;Q_^1AnIMc}@DcQ_uOSUbn%|IWjw zZ4K8p#RP4|C_TN1%;Qn=I)ZwAA$J>nQ!Z|syLfdn@bjv*&sUu~B@jnAP4-DU z(WwH-GOMUdMfdy9Stk~ZeE)tT$bK*^ebSFdZv$WGLUWE81eDs?nG58;pD$N6S+*C& zxpV$#27jHBZf0f{nx4+$l6MN`hQW5T_Y!f0h8f6d^l9~(rKP02c6Z-|4ZnWC0`xL8 zPe7;Ocngb*_W+Vh9ZZQ(+^CM76cs7m7+YIg#LON8^}r%XHHHWO?nH}#vNFrSz(Aw6 z$(mKG#%C{v8Gi$=N@ktaS!My&v9Yl+>=XJAJW_ew|w>LR$$3J z6G}n}#^&fWB$i-OOoaKj0ibe2Bu%Vpwkq8wK|zh?dHyn?af8wQ2g|7-Z94+X*NmHq z+?>5r*yO;&hY!<`a)1S_?XtAm6VF{$RV7x;PvqL3p0};>9c|0{0(!^i&`6&*X-bKS z3qnvxd>B+vV9IqsR=wCS?D_leaIz&jInfE@j@7v0=g%|f)FOIJl#+i;8b)K8L~np@ zf`x;F!;YhO{{j=Db-{VCHr4@er$1FbGrtk^G0{K_)hA6c$?&$vYs}4Pu~`!{Gk7#)Ul5##JlEgaN_|36ktrb|0evJ0daP`s=1p)7 zBpf1+Ms3*v&mpeDK=>M2bxkwIdO0)V#9V)s-nmy(_A?Haz6~~G-;f&{VN=6C z1hj1pn#u+}lZK)URHtftyKS!7MwQpxkPE4hf@_oE!HPjla0XQy^qz}g(_VRtz>^<8 z{)?V|Wk8Cm1Q^6OCmp6cyyWiQyN4r_>*VEI(1q47Ab~dI3l}b=FAl&3(utm)J_j9d zXe%nn$!SkpT!V%}OUlC3J$-$4K|$Y$=#)?8mP@)%VO=;pqm*!bN)wpXUwwU8z6e?r z9UMgK&Y|tn9%C4*;W04v@|W2<+%NIXvc963E7K%Q3K0bqqgVGLq7Tm2RRQO z)J;8NYh!~viPUFhZ5?M%vBOOt9v{!e8%$msi_VBipWMm9!qT`!zx%ZpXmO+$)z$Kf z!O`_`=|#oG@1S0Q^o`D#{ioe`q`d&Mpw~R{5TBapi~+zFTlI-E6b%!A z$IE9IZIr_bs_W~|D=P;^l@0dFswUz`=vkG%d-njJW@!ru*ZhhKPwchE?%h}`&z?P- zsJ?C6wr-i)$!#SwuI6w1{GLAt*|!RPw+Z_v`}+FM$;l1H`X?nMY@?x}!P3vq&wo{3 zp4YfbW-x6`mRyd&@Pwo!4R%di_Z{d-x_o&H`pI+~lIVmoGqba@PNb!$W1eqDl#zaX z7#0}BtBkOXHadqEM69T2bm7Anfe3X$n*i35O$_K0R# zz|$&i4d@DB$m_Io%7VoF&6{m~@x5BEreDGm-efza40CWlejT5vcw&b`TfrTu0MJ&b z@#E;sMJsYmPMC}zvC|-;rP&4Kn`k)=dvO`$v1Z=0ZKA_jE4u?Ku{}fE-AMF+BXx&T zGu-K`I+=1DT^^m-@8{>5DWS>9e#rhn@_%oS7?X5oej5_vkl17uK^{S^sr zz@VuVJ$+C7{h5dc%KiI0Bhqhl-vfqByhpxTEE2*}(;DTPK1;1=a^#ITDQRhp23GXO zX_f~y>U^D)L9>-jpJFp1vh>#{&?1CE$8<%A-LE=4GGvTpR?$vQl9`cV9v++3^IdNv zej{yOzy0vdT*MqimqS!kl!cWQkqDDdw;`QFk8w|e$yc-vPPe&m3!$qIbIaD9Y3tTp zbO+qXv=c*?QDeFA&nAH;CL5c1h1VfV&&@<@c-`8#oxLq3Uq!8Vee72*FJ3i18NkFS8vkyv1}D{J~~sHil8(bK_9456i0N3llC<&{hC zw-l=UDF3%*La&wt6`O&9^}h}P;Jx+gg(N#2-A>)1e_@GhHncyY%yMs7*bM>@z6MNRjYuATV*4U7^GvNJL! z|8+>govb6IgoM_Fj@@n+yN&kxLN(ou}P@5u@USLB;axeK1ibTz>uUUH*5WWBk7g9kYH# zP1H(7n##7~J}GOcQ1HRonYsBJI-7>LZYgQ2Wx9Hr$3M;w)qLTlHrr{n`~iE6M*beL zdbquj*CX6Z5)BXG5h6vu5=5q3Jt(;@_H)O=|6a#nv!J^8%YM3yh4LXcqP8(de1Tr4 zdZ0gUVIq_A`f0nQ%2(&*ug|4=K27C~^KgrPs$zHP&hpdZGkoO>17c0~bK$fZ8CBZp zEjrHQPBeq5ev109X|g8c7t*F$yARne@+i&?Pv4$gzjX2{PDc3>lG}IIaPHkq10_W3 zK+MNI`)Y$f(euxb)S1`Da?*3hoGcCG51JcFr{my|q&hxhB4$8o=aao!!+TWp6`Pm^ zCw&3O{bq;Ekm(Y2(UG5={o;m??}tB~A8SuoMKc$tXT4_gf*~DkbZ`+=7`~yj#24z` zRU2G3bhff_sg?Gul8-vqK4ov`pAekx9MT@1XjM?=AiC)PA@at|9(FGWG2e61M`C$S z>t(Vb($ zb=}VQV95^S6d3JqUd*2IIn=U{XkU=@^9-w1M>(^I{I~J&zvC0lKO38e9wzbkne$k8 z3GG+@(5#`!rcor8sacwv_uf@C*L=wO(de^-igT!IBu^@e-x;4)oXO6yZ>f>X$TbL> z6`}Gj_|`Dja>X^!M#L+$InQ2vX3Mv4hbLbz7u^b1!%=Y0Fk{D>tRk-q{ojO2D?;{* zjx;xGUGMlyf<158CD_i%!#5@*Dk^Yv^q}jSmAkVSp-+N=rJb(i+uYjHG90Y@Ngkoe zrcGg6J_H5^&QCkJ?C=*3cz(;iiDJ0T#US~$PS*vsyB2?m+q7&~Q~NqI+|G~u^@y$Z z`aXgFHE;0NZvIn83 z_68@9kd3cr^dEEFw6UvQ4uOdHSV7ImxS`gJlYLhw1FIGuaN5WurCvvPd3rF&d|1Qv z$kCCVYE5$L<*Qd^rFEE$yTotlB;I_Rp6)REj2_G8qv@oz+nZ+j+SHtQ^@{K6C+Ryz zZOHZm)G;z_NGUgs+-iR#+d226e)qop5?9898%YY~frT-4V_Wp}2KpNUpGLUwg?P1d z<;Qn2MWR~2-(0D@(cG5StLWk9?oU7vC6%MJegd6&vOnR|AgX&L=W-h%c6I_Be-*Pi(K`QrIvclxbDuRfGh-W6Cr zq|OjJc5HN%)+5%yev=|eb9m;{z@a&d!v-0nI*yJsQ$6j!+I|isczMyUad=DS;glB^ z7NLG6WVdhArcM3l%hehk8%qPls6%4sX7(^>58pD_-e|RvjayYxR-bP5lMi<^JLy=q zZ91W^&+~Ukd+NkF*=Gq0i&?gUV_w1H1<%S!M>KvM=qd{;Ogl!;-OIeZddzyA->9^T z?U3R(=iCD;R?^V(9DP;Xt{D)(ypDF`zC%Z!&pJx@EH3O7j*_3$=ooHtieTgue#l0- z%TwaJuuegN!R&(;^|;ihpfadOM@5}WBSRY9wKQ4wtM!Dxk1FcOij2sQwJcHjVa9rA zFkl^nLEEU?HPd&FeVGe?Q5JRicAvDfF(_IwxG;E1G1Z|6C!`EicaJN?X}YT~FmR6* zdgzCQhd&8kY~vQ4DAn;jK*$ut%X1Mmqtyow93+O&`vIXWhKR}}iexz^;`YsyTXaAn>)?>jC%~J4L{wgFWQ|gfQ77j_t&-dnH}I>oao-*!mK8uHU3cu z5$G#H#Z=|aw&Bs8XOwMM?wB)ne!5A0A;0kurDhGmjwDTlS~eKAdsxn~Q8Z_N^5CFS z9AZihW^?Q+)qd~5O*_`l;-a(< zD_v>&AWhoXEd7}c8)MCd6aq*j0cIBNAsR7cbf>LXu=&3DL-f^c}!sCs=g$a;~DSzMp^a!2|3>FIbL7qF)L zW6PPJG>^gg2fH!D{EqJSQx!AYyl8jaS6BA;BE)+HCA!oOAd4(5)q1txeDvlHaL2SI z_}Xg>8AeNCzfIbkd=?skn!01Xd*e)_Dvznr`l*KWEO*akQ>+tO=x)<@j8#0Cis!D&{ zSz4GFoIu)_)w`Rz8M!jG{T)Xa6);#toA=Vk?>onaM%!UB92> zLO$x55G<^n?pH8|?AbfO;^3@A4U8oH^zu}o*4)+29 z3@$vYQCw0E_bnnW-|+^mB@PuR|Vr>Fc`^G63P7gJ;pv-K{R* z-`mqeRF->s?kawnMzRYX^s=g|2QpYx_nAe^Tp>B$PPhptsE|*eo}uLh))&rCpJqe< z;L`c+jA;~$k&0_0vg)57FQo?=PYwc?V%qi?X`(0f zK?u>X+|VyTS_4Ow#Pm(;*MCL1LFgJi30ezOCT3=4-EO80YmhGAyLz!1uU%xgqG$cF)y^7ADbp7qyw}oVz-?PehBkmeXm2d~hM!g04BXt<7t1?RY z+S;E2_ok)2qB8q16#LJ^c;e`|RY^iRu@txH42~aCaT~VTRWMUAZ8{ik72~%Zj)c6QNfRfl-u`w_vw$HKJ8hmcH<_Y z3tM<7_BYKNeH4l`N;)qB1NEfiHMO+p85nA`25JmGjg`wfJKJm|zDZ-G?Xl*1Zutn} zL^eo!*73*SN%Z~u_q{i)xd=fnJe(Nnup1(ZMyUIck|O1Gf^E@qwgUqj;}V+w6;Kgp z&pwIj|Gm@~p6CD#4Id-8%HjDylm_b(XMWw6r9D}WjxJdgbFAXWk4JFYsjAur8l|30 zMloytW{rsD=sxI`uFS_?5aiEae?h5qio!zBNGc&o*SKGQ@a)-oh=;>dQyj;S2f=x2 z=gysXb#>=wy?(c7C9eQeqz?5B?*vzY$xYo~-m^fuyu>dcfP?U?na$12@*5i$0v1@9 znLkEF<-r#b`W4z{2%`t0u^pAIRSXQi`kho|rs*ju!WdRK5)Zg00b-*9|MqS6f((X=giCm;D5mm`yYJbdRkiI=ssTF7Yz+cxGh)>Z|6GGVTt*oRnCeFLaEPFqzs(6e#q(qj_6yrUj^vuQ~ zPc2qjU+ct>MIax=&RwBuynZs3!#*paMkYCzZXyc#6by;S1`L!DnVjhm$67-8>%s2| z&N|;~Yo*|0g4)7=0uv)YrteP`9{3vs=_*H^K$O-4-MONSAS zS{C6i0?RsV;6NzXZQ4Zo6WriEhM(5FZOxWp^u055q^yXD2UgMbo;`7b3d`~2pH80W zBP)-OSaCIHbcU5?TCHai_~4~_@%)`LYdwySvRsxZSZSE{$+3B%)fACb>tI*0TXRs} z)KIb~J%_fR>9;A%j<;mXfp7La#`TQ6o0wb4%_-0Jo2wY4E)Ga9vKed1?Gq~WP*72o z9W7)u8z_61{K1>d@U2@UQB`ub>Gb^kNH?_geD|EH0HtKotDxS6Ci z&Edm(jdnK`$ti(j9#i7ov68-@?@u&8bzvzs2)3NK+UzbnNNF8{eAYft6VzcYcf8Pv zqLjlyxoOass-MHPI2tCIG?RY}SH}x=CqCgCv&hNGw*VFV)}GK;;i00;ji_4mRdHBM zrI%lynUT+Tm2K(eVBLqfJ~c5t;(dgY49lI#CI$kpxrf#Q*!5f;QqsVyH0jf<mA~c4-0>Vr zo2cRw60TglD1p0vxOe>#^T}0IvH>4g?=q2k6Qy_8;z$m?W2}|lPILS2HOS4fzgDvP zY{S>sWiCkWyX|?}VrrqB%jDS}UzE3KkUac}T%9cK;lJo)Usc{hz#)&mGrT(R#s>ptVT3eDW^GY+c=PAl#uH9M*@$qf9n1`!a z?>vC7&xfQWMg)>EF~!Sg%oWyX3HT$*MaWs(^j7I;@oeB(^fh~XS0Vf&yQeRBc#F=~ zHqZ7Oe@iWMW4#QEpjsN`k@#7o(3`>}`lkugE(=0Jh&UWg`k(=8s3_r8w>^WUtFQ{Q6%2UxQ zIx@~FI_{8nHSlBWfPG|#(^T^hEjD{`w#!$x;FfvM&yLKcB;fK!aw}toLueT8_ZaRD zUesA>Z_{;~N=Yf;V|bL-ShcMyo8StD?uUxar=peI-Q72^2ycz6D@Eyz2<@%9z!~<QT5o4JSQT)OOpdn11~(Jp8`XPP*hHN(g^EaQKV)p_Tb1F?KR`C;zse zE!UTS0I_GJG`Q(b&L`giMn4-C#G^vO!u2AqaoB}&N=o_~IF`q+O%CdBNDZ&HC$M!w zSMUxt=ycGCxRG?rCw;j~33ou`QdA}_vRGFoPyE@PR{`{3shyrR8+-gC^ zv`mr>v^oksF=oN>ZY3;BfBpJ}@)SP)dQ`Q33@9nIB&0I#R{h-7r3u3A)zN!fkl}@W z`t<9a8@$(~C?YjG{bkr;v1?RBA7eE{@u*(vhFi1VD;>?poTstJqs9wnY%>g__4ORq zY}^A}2{wCR(m>MEf(6w8{0!W!vY|l+Hi{_BB1j$?E#Y1{{3{}c*M89kRj&LZFOKBF zls+odQVCb6tJkiz{`yr6dWDGp4S(qjpe{~&{1MfEBm;mQSB9Cn>4Uk0qZblZA`0m$ z^}`Z4^{TQgP^2!=fNitr@QL8DGMJ@hXFp6z5<)@rBtjX~yL(7nsAKOJ7iU9u0w31K zD0>9v_@fVBzPvzb8gb|>b6=?`ZVnhvH`pp6R=wq~bN>7@y?y}Tp25K$sGFj=s|E_( zhBDV&(AXG=IvIRuosmxG`MiEzuigOf(Axt3H{i_+w6ru(#1~~;!l@SCq~M~!nZgOz zvFPWVI1_RL0+mHX1#RG!(EWDwJ$8XMCKOq;Cw4ioOGzN&WT z)YbPQBEowo*6hp&1=@ikrzV&%lo?$s0vL65@QuYBpPrlJQ_tT(pvThE?Le-x z!mayLn-{nYGG^G3dEU{~ButxON&NN42k9FyWJU^ujQaEKoHZC6hG-8&G>iv@jnJ~w zTY(rY@Uv@dW5Xi?9{4UTEdZ0*2rh$&-3W#fiJn;3rOTJUVoI&aiYq@}l0MZ$8}R95 zJlx1}h!xECP!m43VFzyqXH2gj>iib~!=VJr314X2{2QvOmdQ*BBX~bXx z%7^TPDDM*%=!S+w1^6Fs!}`564*Lq8GBwa??dq!TR+>wpS(1IZXo$LE_lKoqSFx>I z28}gG1qH7tD(Z;%0HT3?)pXNTh7%5{0R~6aU|cRnb?C;I#|R7cYY5X+HrsJHptLrC zNR)Yf^eJ#nlZX;OZ|}3UJ|BFv8wOBNEhG0?o}DKHMK6TSRhFb)NR zYFusE-O=&ajvY@c?h<}w#Neu{yQia?Zp9DWg8&hzj8dll2W3N*Y#eJkp1YM(K{EffAHa5rXFf_Gi z+c;4)z6JMUnc(ArfZkBB#SjHCOozM#QzwV8o;EPhf?=zPiHRYMsSQy=hAnm$sDwG! zbk319AioIWuV>n&NBImQmqhB_=E$VqQmtr!W4_^OHG14!KvPrGXrfBNcqn~p3(C=> zoh7MJGk!+K#>uUYOpF*PAZQ6zHvCGMQFoyE7T82fve}-&!Vc>3ITU?8cEtm-eyUqvbSmM13uxmJlve=(!sL>ijGl}v_^&cCNn=t3 z+l;OQ5@pjZ(tLZgqloxGq&kz%;)GXlbn+UM;90GDb_2xLy}zHG{R=Q^3|XR>u4|j| z>$Mp=nwXGf5a1RDTQI*Y4kii3VI8X??CG^{IuaDf)E8|(`~pQETDYw zYEz`Z)%~@Bh9B&yK}W|9oH2oDp({}N^Jgw@3=H4| zh_`t1WTN&dxuKyHDiGkNeRx3r1{ph4Rhv}`_!&2VJAr8w!Hz-oB2Z@_u@)9W@J8=~ zpLBeD{P@mP80MjACI>hVvD)zZL4E*y>VV`FbZ{Q@2wme(QBec@>ozB}xd@TIVSA^>TcaI8>cWKq zpI1Y0?$ce@TxsqC>sB75;Lvlipzi_s1HK|AA=L1or}c2lN&S>wc61a`m+jDks++i3 z3{;0Mn-795qz@ywYeGV=5H^fY@A@F9l^Rp7r|W?*_x5`t^+8Elo9L6ET_0zyM29SV;Y!<7oi8Wf%WUQ@I5BDzgh6S7H;2wvChC0HWmbFIM zR+ims9e7cgYJ<5N;BTrd`HK*UR8&9|S?d-E3k%QAXSI|rhDAh2<6bzxm(on6sjlwn zKgWC!+Bl$d-F3y$EI*a+i&Eyt8fOC!yYmHRgeor}_JqDSU93}&Aq-X!YKO-6Hzymr zEJ#A?>gohs12PWZ5q>ke(!+8ALZ0XmFaq`uy$(7j0Z9dn36pJYLya57mD%=55Rv$-Orj5E3(X>hrTAueR<=D4Q3yP)No7 z^pZRN7FUnHA+mm5XNhlc^S<)$*OmxJvot`M~U^@yCSoD%u0^^dXF>SeMcGnGQS{xS*;!Gt?*6Cv4yP^@-Rok4f(b z;>IcnOtjJsWaV@fqvVNz4$^jTcR&=S7t+bd@Nf%SCw^5_U)!_`fdQfy4EB%V;k(({ z^Q#5f*+a>j?g~vU*hd>@4!&MN^mhS%`wR#E=#*cd#-3F|!-W)!tpUeFeAeSQ7I6Lz zzH53%XD6}kAY_n0q=b!LxG$~DOf|Sy$#`IPsJO1_H|A=63F*W!Zcwx!=7=){AQ7b| zK!AfuqAVt4Vy;?E4TTzE28t%Rh^r%uH~=2wzf)NH>h;XIuuo!A#~HSsLVSA)Dc|Ah zn3VPe+-NMOh)asFecziS_N|_to?Yk}!QY1dpr>#+;L{UwUU@lAC}_}2mo*Tt^y~X# z(0n{pF1U;Uz|Nolifcn51f>tX{>qx^@#a)k_s+h)67YC8(kyroY&B*GH2D%#zp`>; zROAWJhp2qw=oI5g@j%pBpot?|1S1LRR1?Ebx9&@xe8i+oSa~}(1E^o7Kq&vwEHI5ij=JUTbn(In*Typ}9`37107`IIv2^@pe`-)#j zKGEv4?J*4YuA4T2$xGv0iHoq;8AB3s6iBuuB7wrPve3v#SFB8;)BWx(1KZr;i3RI;vuNCcro^7I&jGrH|yq=u(&{Ay$H-%h_ zupW`cIw9{QBgDpNYe8IiQ9+>qtSW?xo&=c_HMQ{IAoO(%bS(EoE`Ws+Vmom*$Ej0a zZ5KuunB~J6fU8&aMUBHHj*+3)_hz_v`V^a#Ku|NWJM?>R2b`hj= zgc&xmy2s*H1N9WvIsB6gkt%EjMgV1AxpplNPm%cRME-O$5^n;M5aDH${<$Jp-J<3M zM)M8oi)al;a#E`mP9rHPNu>cOA~sYjr5f+QD?bL%u0>vcIsKha%`5hO|i~OKC_E7UErWw) z@ckt+BMdPaEaHfGa7GE7xHNDsk?Rh=H3-Z=rstx42&s&&M{=}cqC56GvO|JwcS}pw z;=&wS;WWU363-V;{&{dPaZm{SlJ20D3m5>Aq!9t*#32;XU>b~evhbR|pbReL`9%8{ zjP!BGaLNQp%;o^#ZM4G@n<;ot#K?%bh{OpC1{!17A=Sh08SpN8p@;(@aEm5WQh&hQ z0f_=scvu;5Ku5qcBwyI5mlKSMQBiILH2va*S}FxK8yqdq zi6=v3npmljL8wPqV>}jPO~duw#;nDX6bz+K@#|-7!DuDq!%-!OoN%H9aNNg`G+-@s z8U#8V!FwnFio}D2V1VExFHd?aNn{=qqFS>Qxwz{rhxIx1{ zI7$-Lw_VdRNHQxsJ z-#o{&AMd1(Clz`llpXmJ!&X~eZFWOUDHNg>B91ROep;n3`#ePmCl=uLllI-heny;S z^wx>>i}4-RWxD|QKpLDwdBw2zUI9Z1DKoBwX{SJ+B`qR|(TNU^}=xeYs6_8ne2bU&a4 zet^Yi!!8U-qT>MwKI+!GLxxM4a`XWl_-?d`IQ4z$Wz_jaA^c&G+_`_g)6y5CefR$- zU-ADIWrbdq^eVJG!|A597!~$f1qH1(wY}4eVzhooxQfauCazvlEC@<>^5fGAL>BntA5|*J$rtzt+8oK5HvrO z;bYBa^9=0dsYeUp!k2P}7Khi|6WQF>$?vSwCEJ!g)C`VeFI7Q=_H-kgik5=a_CfvV zhUtMDHk2TyWB1?r+^De$mSjx{tZABOpwDOjVwR)7IMQXX!;^92iJT${&9Zb4a~1m+ z_EEKuKST$m%u1}MEy1eS6(*kHaE|_k@B$m%u3P=Hs;1Z5ZxcNDK~r`_?mzGQ1{AZ(x3&qZuf@*PQ*d$cmLVmU9Ul z;ZafT6$L>B&CO1|SMsSo|E>lZ-Zy)f66#*nXI8%@hDmT>H%e5Gr==DX)aX?sW!wG2 z>#7T0ZvET7${f)Idj(CXVLDWEdnSEZ=TAPg<>bbE?Uf-quYg)YbW{ zCt3Dz4@n2vjnbUiNW0(i&LI!Vy#C_M$WH7QMMBR{U%G!RbK%>{-2BIU`u%GOaw{n{ zxjs6vqpa`Tg&k$ixp%wD{Y&djMbNKTGk9yU%1bXslB0mfzA3!s3cH7%G9LX1$*?e>nf{&}D)^96Zx6jYnnK1lVaeey&jKAyy*UM5B|i`Z6A7CFEf^X|7aUB?IQsbR$#SB z&FN`tcr4X;bp-qO95h;6aq0FMiO03|Q6~0}AzP^V@9DgY6w1QrGY9y8ZUy&#K^#83yq;mD>A74>=bXYisND=`A!b7My3b zjT~}P{e~i@e`5db5|XVFpMg;#3A9{ldRejXd8Phv<yi1U`(5-1I{5v7XrUZy3d@5LbuVZ4_3aFlAxopNXGO;@10uHZBazIM0s^IWu*k`n z2+4^qtUsH#?fsBgE}3$@D0gJ<9J6tLJP&isr`zPo1t5%<6G@T%A!)PuVK05;M?nH! zx@i|+pe(+U3S6g=hh0&Vt<(R--J6F~z4z~MVnk z=S+dEqn*+G*A1T2L8Eja?>UbI1dKt}y|b@{x45F>Mhm-s(RD7$&z`d7Y$OHXG;kexjbt!6qAHn6x;^6*Vy)J9Kt&ls$*Xi&9{CzG^-KgL2p3-^ANs zL+a(;+0&9id6X7a@ae$=y7q;!)sfUii*!duMn(!H_ldL{zq0EU7O+hgrP6<|`R9EY zH2C9T3&)tefk@iVJfF{%<)klNOClFYTc_8m#&pE^b5zIDa-O#&M+}@>HoNfN!pSs) z1hnD9r+X<61@-AsKF=I=Ta9u}<~GveoXF@{@!)Xo`=8p2Pp=O9#*#Oq2OUNC<=Z#) z{TDcra;I0is2233h0qorCT0BD_n%gUjm~*rl?>A`_Rin~sbE%^mv`jv$E%NrZ2a07 zmCDl+5n23jR8OP5mbFsSA)U0q+_P8M;gdiBU_OC9p6@pC+0^(deG40X+Zi#VHIZTF zr7{@W#qOa%hqmkb(twL-f}RL__)*`9!Y)!UCL`};_TJWhUf}NjKTu_Y3%B^AF`%O& zeNB=$ZE&Yzv*%ntYcR(HA+1wJ64mPd7ftz=t9vBSuBdNmtcp^>t<0%UQRlI_6!Y%& zeOu%8gg5AlW}E1f7YY>}mRF#5hyWb-!H`B)1c`(1sIhh5oA^gVMp();()#O?RmSiW~3iI(xQ4zkI3f_4pK?8 zL+!0@_CXKSrZ=y=ub#%rppS&PTZjTw>j{o%!?Ov$bGUY57>wE0Z zsI-qjRN{rYpKhBJx*0}tM=#q=uHx}XFvy7*Nbx*Idp?;-`(QRVJZjkMq*37bA?s|m zrJ_jg&$V8Q^*8Qw$`%f^MtYQHPTwx=SH8+CZmL|k{dl8XwOWLWGVR=KoaTayv{K2( z3|eDd!1KFGc{#NOh8p=gdBeIhe`Q6jG~nJZvjmmh%J;}lq3vU(YjNV`m)o_$OWEc& z(@60*nuzo}8!vv;Q?HJGE4CdjPf8z~VdpbxmkgS#`B-yyevW}UQOY=HHz3q1>c#2h z;<<(6NtXX~lvh^Z6Y-LFgTC4>J!ENH+6^y|(z#3L0+i5>;auY4};&g7e{v`dI&qbLCb3 z)90F8h@sDqj#e+GYSoOK+!kx<9;@`{c*a-}ETTP9m(D9Nu9ezmkTERt`OAkq`b~Q? zLyU_p?5Fg->?(FMFrRqllw|$skk9zf(GinQZyD$qWexYmzYDG6R;H?TU)fg>Ss5y~ z%KPM2M$u=6+{de5i^$uIT+A+3S#o7mztL`2#)DybW=XC|{fruf2T|VD`IX^fw>=nH z>1R8mgPHi6!*p$)9=&>cM*xK)h+hkLqTISwOf1BvFG<@CchjDdE}v5;chIgZA6GQa zT=0*-dw)e=`N|>yy5qTpT+L2!RXs1->A!6fdSx8nl_NVh(&MtQP2RGg-eT$zA+s$>o7_kSt8Gp(P7W>2LjbgC}XbKi|EE zhL6XSC?Skq0**`A?S%tf2$Apj24o{qRAn&8M+6335r zw@25ClI$tEW6eG>FQvC#iq5|Ia9u}muaGqTSnoZx6H(2nyN_A~2cLnC8#Q9#Z;YC5 zYz}@|&qQsKjT7_)W!<+0Kl&QP#QXJK-0Ab)eER$czeA03fmv{J?1r?QKDn=N(0OsN zfNe7BR+L@C{p97oC*U&YW2zT+&DLhwdKj zX$p;2EG!sJnv$MbzLdBa|FA7`o3%Y6|*wo;BhO5?rfX!=u~xrR(eJ#BYB*V&G_q7AWt&=MoaPeR8Tl zlyK!Q7NB>rSg8M-BxNNLvd8*a%)4QxPQ59UM;4?8K7*_qov+3*(JkWJa%Ioxn} zV&Yir#lh!Aaq5j23)_=gKJ}$*L+KEO!vFsLWWR06+~YgLoC9B(3%j<)kuS9s7WZ^J z^YF13?UAP5DG+gv`brZCTGt?O|5MC*j8kXfU^#K|kf^*9PajF#yi`4G@AV?pfXUj2 zNts4x4dHurH_kMzY(0;Y>V!1j8%;<5yMSOw^shFJ4y+F_LBj%)Qwx|VY$lzn{KKb znPo#yjj@KrBkoYAs*9KaFh@$Eb$u%1{^phE3-#+Yl*L@0#$^n%V$SCkZ1Peb4bTir z(_bPA{GNH48PWWO;cTAW&cg>i?HV#qI2R$Dq z^=EJ142-8JPA)7QRaYvTEpvjss}X(YrBHNxy6$zN(~Qh#aw;@!&J`TbHhO%-0$ zIo%~oDct0wr(%z_4HmuQ$;#Kuetf(h!dH69@^Hxpa5zXwUak+EI%p5i+4J!WNZtt4 z{)st_8JW!S@wZ|lGsAB9Je;cui(1FsgI+V`=^`WRTx|efXPgf~4G!wtJhmbT<=-QuYDLCQR<~U`*4x*VW_C}=fk;Xa>qjw$PqNp53RD=2B`~wP1}OF ze&*dfM@q$wn|GW#r7`h6$?(PN%txX9R}4J6P8z)^5^h#x=98@+rOk>YQpXS7W*)Y$ z9r>FV4r`zrCA<%R{CNo*{-=O|)OJ6ifBW}USMnd;1`Eq&UjdUx^vH-m#1O zhMJnByrQgr;#ji9CnN{}t`1BxX58vb`;yq*eVJW#0RS5%BZN59h4-p%J~?Q8H) zQqMwN0ElT+7k3Q&ec*(?zCIO*$l&i$vrTi7VGqVr)$yakhwd!jr)auA3j;dF+#EXi zC?8sm{v*t}b)T6Rji3h$+oJr8c2nxVoP)akME42(dji;}^6X&asda(rCp9&rCzkwq zvpQ4M+0co(JSs}OlcTyi!J7_|As&6p-%V$%51d@{=6`Gr)~c`=owS;Q4$94!Q8t^U zGu9dMX$aouEBA1!Dz2|z>YdfN_|T&71jubdEwVbl?=t=z*dcedd#X63!=#Db(7t7l zHcNxRP0iRz=Pqs>q*x8r7y8Ae$m6kXm;}%RxME$NR5(W9K=tW%jzywgVF#<9&oOFGhj-rT0 zRPM1dQo|Y0cK{G&F9se0kld0wnu3;aAe1uzeF1r3+s>V3w&3q!-&d?y0sIIjfY`pA zf0Rj&xD5gG>sx%t)HJa^*z6fE-kY|qJ#|VP$!c${kG1JOT4cw<_d~+$Q2v8xjD+k+S6A(eA!a@$ zK%p-BXyjs!EvOkC?H5va0{Va8z!EyCFwh8A5p#*r76EO*iu_jyRXA~NgmWG#oo})- zg$6yxgZFt9AAGpM+8?p5;=%rvRq3=#W!kxm9U`+uHlu>zGLjA4!w&jrhBxO@O{%QISMx0d+xE-Mt*Xe;gEYa@T{Qx#XK7uv$+?P9-ua-h!PQHVAKX&lEHx7E=P zL*E7!eBl1jJ}CsG3R_0VgrIzlB0bT!L^%9I*9}| z#60cPKmY85#t*s*wyi*?J$dtH7p5C7-v^Nypdv7SZwY=4-DaZcgmwU=>x?s6c0$Ah z03nq7jWSvQYkCfWt(-POFiX+(XCdBHSGNLyE%0Orp+;32R)j=$Vh*X zd15u9N=#EwaK_-4n_JUMPA$bdeYYfVcevP}AQl1DDU`hFrlzI<-*^Zh8L<7J^8i3( zTf9*lN3vSJ1AsbWXe6c$;^}MTqo6B;vE(<=Ln@tu93P6)g)B}ME-o%z!@~)GYq3|I zdE~}di9YkvVE8$Dx5|`^(1pz__g-lfg^`}#lZkg$ZO`GbD)nRL3@gVwEK?h@Qkb7_ zsSY^ev&<`K$2%Q;dccKqK1Z+1a&H=Tw3N~fBB?~zj?bf0hw<@T=$V7KarDHAivUMp z%6bUoM~H_3xPT7b08lJ~p#&zw`oJ*<+jd*|4j_kUvZ&)oTU%Fqtpk3g_jBM@{~0*K z@57FSKK{%M8P#auYe<95V<{1623T6|hDs5nlF+nN!8>E+iPjVr2g=ndHIW^UxCqjc z7mbSTCK^3ZmBG)@aSk@Py10meboJ)VoA2m;v-!Sk(#Zh%;OCE~AYlKXad#Lb2WXx_ zu;U8GccNzA-q`9d%EVYMqlNMjy`gZb$Kq6@x)qEPq}zy&G5iTQdxWCUc~QDGT;d!|1nv%q zNVI&`VgmqC>Tl1J2S3I?>P$|XI?gzj6$C@Mw$jE%_OL1y5E#6-cIoKpF%?3>1Tu5> zsWW3^n=zaoumE|j*Cn4m5t>#wsf13}>C-Z8TLlFfg350G2BSgqN!C1r(@!Paad?$? zgE=wP{_WehrsS&n`XDgQKn($D4r`B9K}lBtgb|nr5}+pm0Rho9lek^PcvAFei^NJ+ zSDE2z!g&G9Nx$Z(2{A*!Xuf6dlM_6NkqLh+Nt4`}Pd{l7n*YFJ=MGd;Cr#dz!Or50FwOR2D}wgd3y5`vK3gS?%v%yz#?qm-r{AYoc( zU=0Rj8Xx+Va%#ViY#P1QR}ZTSlo@Oi(L9xwZj8HHlyOE|+o`(d$nP*ICc6I}twvgI z*Q2L(}%wqd$l1BkB(eyfw(Vp_vu?#G_$Wu(7hhag~=_Z^2bxzikS;9~3Mu z7Qp<-YPH=xG6eP=PDORgtCz~ges_yty`*HxgM-H~`aI|&K<5++_g!ru{9s6McVmFi zY;M+x-PVV9{`!>=xdXZf+A)BJYHDezczRN0M;)f$RHtZvk=DNcyf&*ZW*pn$$g9F2#=bNTJ91`SH{f5 zH~ETLN=1^(Xi@LkN>kXVvX6~ks{cGQ44O_!;#Adg)BK{g+v@ zEMXsjk?^a%baflU@#Duq0*a|W)-Xxn;S?2lZhY_t{0k8p`mJ^K_4r#wvyb9n;^2Cq zmB~}OYSq)kJ0g4bI4G1Go;r0M-F*BoPX0e<&h(}>r^Lj3x_ry>I2mD}%wVxp`{V&& zSfEv7*^wWCjw{GKx)M>iE9ftR;pT_WGEK=kGai|M4klV}5E;zZ#Pr->uaNAu5ho?W z)LK1e49M7w-rw3jUK|=&w16V~u>!~fWwAz`Zco?6UHv&q@$jIKfRzN*8=SFRWn zP!fKXcW`}{C613|&b8B*F7>;tk1$I=j$jUGKH#0;w+ZPmg8K-KM|fOIOUrm8w9TX6 zy<6urb6ckdJ!+88BBePtfm{m&CK|eQoKgk%{QMj~Ihy7GL3uu<37nEGf_-5fd=MW5 z<{Pt;Z=p>L1OX0y#x6&1=nvb%D?q0D1|A(CQDE6JcFb|Zk;6uypAAXVj7v&4u3twl z`Z;2ugnKCnG8Y$Smads{NYD}jBIi9|U&Em-VIcX^?pc;Odrx zw`Ewf&EOff0v;=rnAt7gAq4C?a4o7Y(q6y5gKvS>djDvvlRcW{2%Uh&qQ3Yk^7~XO z>vgE+KZn7CT$9eYD+AOOsPnOmE%Hn(fs@CM9_@k;2JBN)TU!;B$1qD*hja|C0T2N= z$k7PRQUgQoaD6M+YQ_C6d)Qz~qxYX*#^E{Q`>VtVL?uC( z`~4a?FK3s(|5q6n$r+B#fB5Mb@YRndl(r3jl5fxnYa^A7&>Waw8ktDNW5AQBj6&K6bUCbTF{ZAb)2u0aS|d)`!6r z0PqUHg8yRabHu%Uix0blcLR{3MLyiOd>NoXjRa5KguuwYJkE}f!RYqCDd>g2$_f8T zK@ok#5Gm*hIvfas^{%G^11|UT-z1U0BiI~E`uFvJkT3Uj_jN7GFLm@B|8irP$M>^9 z910Ogd$1I_FaTQdQ*K$>1eizK`XVST?ubmd0k{DW4)9b_PF-q7IIID(N~jkS%Fw`F z);KxTY?^f&)^%S~uPD0wI6al;Q)p0rtJ1 zo|2@O^$;8h+lii|U{HovpV88?!}xdLBk9j(UfBYU1Z4PZJPK5B|J=tuFoI1zD?j6) zWERk67YzIdE<4g{xcCW>N$N2I9AEEg>SBIhdIHpuS3Fb8*S6|4s_J@DV1q|Qkh*Qh zjuqa}@B@{-%a@w-+Yjd(BCQ;L*dpdJ>a-!SLJNxk#2PQcSa5?8V5=cAB=9m|wOAzO z5yYSmp0Lwrv#;)SYPDsg14x!&>HHXL`9#39QAn`PfG;fp42_^3WsR3`L7&6M!3)tS zx6Bo9#AWqBn+TGnt(p%3{AUueVsM2q-B}DwCnTpOBz|7ETBJ}m0bo3{?o6pea^F~G zhcvDiF&Z5D<{5K;%09o&IDjBLSSZM(wmXje{PGX^e^6b&jK;CCl#3IH6TQp0AjDkTR-|WZaw%vM(`&0IVJB64w?fL zUkHE;!FdKA3%DZj3m=!kFVQGuWqN0vu_u6}!Y=^~OE6RD2(Ai%dB|*VyTmZD9MZ;& z5(=yI3=K5^%?6yu+1XhXWa9bh;nfmvU+LrN3BD4}GCU-}x~j;kgT$<`QotJ#90boH zmt>uUpMwp)AX-F;kGm$0gHm$`7}}*{5Rw!JMiJ0R?nVM$13M}|KU=2Zxr9LS6Z|b~ z843zlz;(e`0)~Bvu0iG40wO%n%2+E7F{4Aiym4ofjg|v~L~x++f)*-4!ay|#;_>2m z27(>DXHPH4X5{RlM0(38qu`K07wd%x%KBnVguh4(j*^}m1rB4u_Q>dlgO zFN5qte0OA4bZdI~5Oou1RPWmxeF3^70CJScDB49pqX?0B95@2*>(4Fw5#$V6k9i3| z4dK|tu;$Q>I13CQHi5uN|ML%U-=^4js4q+2B|)I^*}HcSuqHuIo|HjUkPaL%60UJH zf*gR-0Q|iNZYgddK~i!X$zt?IT_PFqHTWcAd_Cg*s`l+*ClEOy2S*v0a)`074t?_j z_E7$q3vukNTGDY-_Jj0{Y)$~#EIbEP89tuT)?Z$TB;p*la;D9R5BVQ)qrnU#=pl8W ziP(EGqarX19m!2nmYZB-B9h@7<2ficDt69U{(UR2pHW0Ow!ic1K@CulARuaV!2y3bxI9sMJN|Lsek z4r+Zk&Iqzpua8;+T#sbvgCR|IxOb5CmU|IU{mdhB=s59y0WsR~6zA*8m%N1mhF%JM7$qm@dd<#v`p+xS9Xp z8({dr3FM{3U>01DWw7~Mp#p+T2+0*Fc%h_upibdY!yhJ+Ig84Jg<#n(fFM{IrOX#r zRf5?m%|8ZVR_;#^f0oM3PRzu3nAZcpp_CJ%@%fKZhCv01bRBVpt7A2O&Ki zD(A2ZmdN4W0_+Vybhf2DPNJrjo0JxQh{ujzi3W{~6DA@tcj6et?E7W%vBUW8r48DK zYPjrhdzN-q2$BiqOL(&$sQM!_zD-*k^+K*CwQw$6&fy-)0R+_tvYu7IbskYyXXqqU zXn_ko8LeVluO`jH#Z>{a8Vbz90f}q#=PC!CI{O>O@zy{3yW<5jg%B zVJ#{)y`%tTK?weXV)F#drrS8eAV$?$TEccA=mV6yQt;@IjrcUOW#S?u^(P2xaGZ2N zVG=M{oWg;&9BBgj923(MZvR_m$xc}1S<@L6etxqzZ{IGHAq$@JE9GjTCjixu(tr(z zU<7gN)Wd=?Hwv(LO=S>qi82+-R+Ub0dQkX*K{dl)`V+Ju#5Rx|>Bk5Fkd=_M(63n; zx^lhXmn?fT#5kKo&tv>rah2fVqM{-WOw@1+4QB8Y@(zpFbju&##B_VI`WAFNkffz8 z?Z=nRbDiQxf&xsqCSaUuYJOXH%EFW*bil+F6TokO-~^+#YF|K86tfUQ9W*DBbE;LKQb6W-z@=zn-lacrc$wTf9r z3)JbEVA)ZQL4eOqYD+d|M3NJOuMS@&3Wr17G_aEpFyrVx3<+VBcq{6E?;gLncuG^2 zoGu(GpBF_8su#p&68%d2E|f*3Y?1E!zQ9yDIg&0!4AJW^x9AX zMh?CRsrWYJD1DIo$Pd8{PKW@mXK6B68lWSzZ{ z-zKJ}9CEG0N1?caocVQ9lG%sr%hiXiq_}YW)YC3=!9^xJ4(nhK!nKyNZP)-FKrwWK zetgv+Eg~7N9&Cs&tFA5qWccULpKJ}8dr;Pe17T(DmSBK^L5vR@Woym{pfxy+F#TZF zvhwm0Nwl~)k;fymLi`TIJZItf3i*9NDZ}LvG*AMO{EagP*krQR&&1IT@4kNA~`RzV~3+kYxADe4ADE)li!I6lVoVCe*QE2Ck!W znm^mU8mcpp`z{5$5=f{^ZhfQls2C#kM-%HRz7Qtt*aEtbQWuYMl9{KHSxrS2b!<|< z)bo|NvgW1PqGR?^zXjPo-wLIBPg54#!fz)GmxP)PqNS&5oyg;4Sugn=eJ36i;dj?J zMcW}VAuBk_Y^I_0*nSk@+pNhjbA7lRFzvEhA;Rb0$C%upJVsIW7PP+W-(;!m;n1*% zh*u7)A_V)9pj+AHkBbfV4H+72`HKapM06`@@$H>0Nu?x!k6B{dxg3X~zO!@A(|O3? z(L+E*9wmm+vlraAkdH}8m2~JW;PRr@_ZbpTsFUWjRm1KRoJIu&?x3=s*=o$iDorD% zfq_^H5hPYj8i-Qz03S{_XdyB#F>&O2N3D1ogds0>Keb5QvUTeXc)zuLO86>nnV`Er z-8R?R+A&%};|4Pp(^DMeI%Gyl>R?WU=0b4Q&1xb+ z<&aYflC|#xs-x>`{y6gv#8@Z?p%NzR_+t}F<5!-B*jL%2lLR4be`85I1pcw=5q6Kx zT(ah^A?Ms*JYlss`MX)Etf%5VXv!O~kwrELWCgGcKx&Y1iOK)1HU8kigU&}1=I#_e z&Oz~~Ri@yqRfoOBiQOtM-!gEP^rn0@NSzotAA#>93T+;gB)aZQ840K(s3l}}@NF(l zQ=B-MQ+Fpj_2t2Uz*a!fiV@{W{74g~&&ZbA0Dh05H(+qWf;W!8&PBRnteH@fk6nOK z^CmT8uoM(w4T z)YPxG1vsh61dZO;_uB14wrCqc1ptXeLYY%nrK~WdnGkA&y@`1%$t}akBmy9@25$85 zSy`GDY-mOw`S`D@aZFlj*5f;=-{G6Y!m4sHg@H(CP^lz*T+V2|FZ??^^A&T%7p~xx zLZ{vcly=-4MzB3f2Xo={1@A)Ka{&~ODon})E36N0oJh>^mxiKB@a~|2BGp2sfT0#$ z-_O3u;*7=WsA=spIAUrli2n=K(D(49?Ji^<99843FH$^0#`hH+D*>yND2;!Y0$T`0 zqDgS!A0Sf)$P)t!pxi>e9={wO5DbexL}W`i2kqeJ2rfU$@<=94hMUt+@0Cvkv*u-L zDp7?)&gMS72~}zsIznv$<`nI{LPGoi2l=UG=vS0T??E#JUm7kQ92d}~5V$LnCBMAm z7l*7Hh&_nfkzYhab03U`Pav90ppGHtBPuqiTG{&(q&o83{jS2ecpxcW0T&kM6QSwz z7caVX1)LezaDGDM-BjSE3_=$yY!KmiSm*qN>NQWD;^ykQ<>Ol!eyYvqXx7x-9Cu zxD>?D2Q(!S>D!_0X0v#fmcfyO$|VZ%Q1l31|EsbUDCI<@Z5QUZV*t?~(HwCiQEz#U zAREUH43-)M$>F?{3^+851T!8D5=8e9zE~r%P2P28q^i--tF0&59PJT;Uyc8&!Wtp= zFv26D`L}R=+y(OUh-wIS5yEERYcGJU_gk}~RZwV`_};x}yE(;6eb>pd6ZrD3JP9El z;TupxiAb>?#;uolyGs#+N>HNcB^aqTx=_MF5<-lABI+%O3Lzed_ilXQ=Eo!d7@3eS z;zwxl@p)26d?`52Y{GhXa5zvUxlrg$?>~)S!JS5*raI>+smXYgv^6)<4N|>^@=Fwt zkwWxUN4Qn@yhG8R7lquFdAQrS64koxo%e(i&(BTt5@n*4rV|LgkXG7Ro?gD@XdChh zJmo!5(BVZK-Z;3uLQ~~ELIP;xJb~1{?5JBhY_s5rP(m32p}vE=hVFd-!jo)=p%U1z z@A)3`s1kfYgn+>WAffk2yuvw_?|UUS=bYd0!EDvqwSu6_5_Kpd+48h5AYAO=AZpYX zAcmo?JPKou`iErBge-opDomP)aS7!Vvl`5-`hr3ip(OLOUIV6L+4AMG`CL_2ryE%l zc-%<0FTkT4Ll&ZAF!Fc#muxh)=Kedbxb5;=6Y`8%vbLQ$eOlt^4g;X|Eh3~gn%jT{ zNl!sPD*BJtrQa1@*&77R zr_LPn7q*~;0OQ>~IN03Ybws{7({?M4DkKfkFo@vSD`Z13=ejI9{PFvjS+d;IwBzVW zx5D%yt+Pl@3KQ`Kl5WtW#97TR_01)w#t60Adw` z#YWW*S<^r70|d(^Im>Q`<{lQy*4z+$13|KuXId~z(E>)|HN8>V!?qe2EH1vN+dN6^ zBIneqCVlRhcPet~W{1YXI)A0*e z9VG2(ijCbvq~-fuT$bA^MsrBTNN@QN(X#EYjuen_6o>CsX@CcED5WyTYuT8zhVJ(# z;mwNHVv5*0Zw)2giXj`%1N--jDdsqJu`3tcZO=2J&m0_#5;v*axO?vE8iZ-NQ==VX zuH8KD*|W>r&(7{VuG~Sluj9jHsGQ5PmoGO`NG}cLMyBe7Mgt$ZJ`6E*{<*-F`M0io zCpBknPWMK@I9M!aU8U2~9Q=(dw5?4)e*bV*e~)Erst?&f@6(ML!&24J#ap(Q_K40BI<&!p0jySsB zhlPdr6M?$)1Q5HYzQJGVl^RdkYnDY0vD_rh4#A++!YW%CZm?);i{D`QL?RCrH&4ma z%Q(y2x_;dVfRr&sKdrxLwL`)idD6eqd547sCr2~BH^*FFzy6xWu<6bbYm?8<4CrEB znIw1Oa_e7&4o=sWgi#De6NkO}A9_cs{@U_Na_@D&MF_W;kX;qaY8w)A`z*3W&9@FtztF z{Ac&SU#+Tt40?$Jnksg?#ryz=lH-ZO4+SV)6}QQq;t(fO!f77K*VrRH?%WiAn35oA zRet16yu}l_%b%Rq=>BIzH2)ht`FQPx#*wX*iAIqWqb6nUw2QqHS|?9lYqGQkp#?&b z1fKFgDvCW1VJ%yQvv?F&cc3kL?|a_NCL3X$^0!ZngRlNepqZoBbbROcNc;47&!}N> z)nIvobk)BkNPLeNp3B7+TzBuUFs+!sHOzDS-@9X~qXygC; zkBcM3x++wW`a_Zo)%J|nd8p`u3=SPIU+yP=9`EzZ!$fB-5OppBe}=X`DiV9LUm;3@ zz6vV4aXr8DxI1?!&tzDW&?HOVaTXdyakk*3dB7T%g>YVlpJ_ z@PP58Vpj zdm4xBQR!XQ*=4Atq2sERLjHTQgbx9v+Ve2^YLlxcwQ#C(aXi@Hc;!m{tm%0}oY)B7 zwj8}wx18*!E}hgN?$Ke#1=*Uv_gL=^Am*P1iW(YDsFduCHO^aanQ0Ttc|9lsv74e?`y_eYdt~WAewk}J=yjp+-OwiG zUg1bLTNX*lG)M>RK@ z#g~W~514r|k~hR@;7VmdVO)GO+1KFy}0SueU3lm z4jCEAd3pBH8|A2cNwQ&%bf>Jv1d*(*C;vJwWhUaJhCI5qw0o1xW}qvoKO8J`#~v3@ zrYe>(%-1({_`s8mKmCd|E3bsxr|57Wt?4RSfSO~`&vVKG zFxjLMCZp=NchBxNg@x4F5LIks+CBUHtxjHW?N-KjMh&JI)B+CvldoTy-dLD(h)uJp zy5;a7jx76JDImA&XO6~$Ki681jc64f|9I_S*>0>N@a8MPUECMd-qv5A!&O@U{%ne) zyuGOg9p^FntJ5>K+3k&`LD}=J&n~_-c2FXP;^7`N835*d@pk-u~RhH*_rF!8#yb}y@)m}4k}exDhImEf3EeBQUWz^cN9bcp2Z?n4cQ{Fz|v^ zE1_MbI_`j{g2fW8c%ez~ud~=YK9U& zx6Kq38cB(Rgf*Hwm%4RsZmh;;NoTEL-k~!Nk{%0J$sI{l25IS`umQs%Ox<6gh%W7cS|k4YN9wzm6JJdtvVA%)`U z_(T*-#J#A}jcpW}M7Gs9pWVr-HVcWGe|Z2Q95-yv-)uXgI2XIOte1T$;ZmNb6S`$tRhc)^L~FMC$BA zDCb2f(wM6^?AQ!a9xht{^_jT%cyj$qi>&$5_4J`0RYjFy@^>xB>eddGQ&UoGc{%qr zLJ~2Nj+@}bO4x3iX?0i=8PTfS7WHq;aaCbBKkHkrg`j=!%?oP&PD7k7?L&zER1Y6M z<2#ZJVh?q09y9!gT4mSY4H#`6JZmK-KSTKuKyZ1$VG&GJ-EdBJE_c4!=ZErxPhm;Q zx0+fi%fN zA37xbxFWq|D2h7IKzK4b0`2+3g10Zu%)ofCa)Cp7P964rgEyFdJ=if$6l*f;XTi5YahAz@EE6ytruwBiC*hm*YMn0Fd z-mSR@Jg2`HZW8?=SE7;Siwx%w6x}i+vMcJ=YwYPP3eW-qoGhcIt6S>Bm(X)JmMzuz z;=iXyEzPYvEk7|5Mn2Z7Lom*Hx7Zr*8s$ZKn}TtP)$DsrU^SUI*VRNtQ8{q+no@=_ z%b609xL{W-Nd5VPtJR}aPf4G$MC{~+Ru7su1a_qD1Fp_bkF@_-R5hp#c<`WlkN-@; zs0bO(wJTZG+GPIgNx0Vfz|*NsKR^tVuNMqh)@jDPxE!=}pHZcX)ip|=`VtmgMr>>{ zW({~g*nJyVZ$o&!1)53Nr)>OyO_5%Cddfz`Qd_M7SIO*vXknaLQ)7*~ZT& z!}`yD;1c6p14^4+TW*~DY%SEWHr*)ef&3!oOtki7GqWX~A8F9uYteU>&U30FYAhq9 z<7H+HH-bLZ95{cVveCf3w75A;%y|BiYSzt?Lz5UX!=Y$LC-2CE3fEJyXomO3jayjP z*Pojm?J#yoqZ{iXIbEsO@GRP@Trj|>shMtZVp+}N9GTLc%%0q2Nw<5>at-m{@cftl zrAQn)6rSexZRFLEnW)3WidbWemTFkMd24xHSy9`#lAzrETQ(wjoepJj93aN!lJdaN zG!AHOj)7k9z7RtY@vS9`2i{I|Ipv2s&!{^O9&c{=FTvCU-R1IeBkK6QXpB| za5^vr!aLvNsh4|!WOcK$FL;uA_t_I;Aos5m-mi9NsJuN-HOsU*Sgm@I8bIS0EeyyR z&CG714h~tVk0xko$IjHh^6!CZ{}dF^h)XXONo~uc``Xa5V&zCB7j0fYNU26RZ0z6{ zNx|zh<58vP=r_}%_m%7GYLHd@l3Sp8fl&bif1G)rp6bN!_f8nKo9@43eUo)>KludgOtyy(fpXu`xmyVX-e7sF^SYb4uCNQlWTSa5pD0KVe_)NziNI4Sjs?RI_i96sD zvhm6f=iRveJI2WU$w7@@H5?s|6K5^3@f;Y`TUposlK=fF=WAjkxzTGH;?H#EGaB?viiEs(XfepA zI?6ID%&s~UuX4pK;~U-Sc&$jaFsJ0c(x|4C8PS>og_nh^8kNPL+`nqs7|N{tsjlLfKCeNR)R&hehMy@cwz@gHxlDY1=XUhO zvAk}@s{>!}Cz*-F+LxME8xsYYQN^PEjM&;(nmrU8=_M~v zmEIs?ko#p`5r}G{RE`d)c7rFHcoLVsc-OtuFCg2ZF$=x3#g;`t%HBaA7V@vBR-DOt zTy~N8b#&g^zu4NmB6q6*ys};^KKR~78dXZ^w?nX7tYq`;%{DMSvkA=oo_kiFv)1<} zCx=9oe^4ktUQ<3qW43S4`o&FihYFT>%+5QDEmVkAN3mB%J{WZ`Xpb0Z%$YpXfcf0j z>jS2{?y4^6rTY~d^`(W}9&bKg6kaOa&h9wyaYn>NKcYFfsleXg8tLWnjmG6}H3nxq z_@z$)vmCtZ3_swc|13CAd^2i^hX&HYD<{fplAH1b9RyTWwXJvD>eg~~{Jpu_R8l6lfwe`FC`qVbYi?#0y=j~&qLq(^qbRn(Sacd zMo{44#G_$$aG7_KB|AijlX(h_o zL9&7qnsq=S8EUq%`vwG%TWktm0?hC=UYi+cBml&|qvf;K=LV=b&FNOYXnGTqw$bF| zRdkg}>Ht^~ixUkX`P_Vjqy-zGv(f0e>}%KBfHv9Bp^zEo^TY%tq6G)c64Y$PuXGan z;)!QRmqUsCnO$!=Cc)f9tAPb_wP;^pb_l~}AcD|9v;#2qw<2rmrP?JaO?sVK{a>CJ z36y@vi321RQgw7mN)dpfc#rV=7iGuzR6ZE*&o* zvS)%P0Za^Zm!tT%xHCdFd}EM5?Y<%-<2Jn;%7h5z2`~WJ0Uee33i1#0zAmH21*YFP z4+{I@LdP2ce&O-LrOf}lzj#z9-Leb~*;U~k5aPpuAn01?X)>cXbZ?_e%RSsZQJZ!J z+^YVL0%d?Cdx0-Q=V>dtc3(iv0d&Z@`|ft?-mA;|n^Fi#=2V-GNLV`AfKiYMza{7r zxM1K6zoRqbQBIff7YnelG(Q|&wNn7e;bI>^*W_I4B^E#&t0(21Mq&VOPBm}X)lsnu z4R@lIE)}-sv+iAIwCpgC3n*?AfG;2IIC&l24~T`&T%l52FesX-v(@N)XW=z~XAHF4 z=&&4swMFTqnV(EDXrC5>5*t5g7KE6$L7pr6luwkslyJCk{_Fuz#A=6o5ba#R4VHNL zU?C@Z_!ewSKYdyU(7w8QyFoLc2AdUfJ3X5kjbOY}ty&(#7M*;1RtyuGSAwwBi}PD- znqrHNT3wojHlSlAXiIrlD6_L42cHUUU;<8xWl2FZn%w>xO-eFWGzQqSRxjG(BN4+$ zbnhQLe(YG5&n9BPw67!IgFu-O5C`lx-RUHQ2mp`1y*;`{iu_yy5T;9G{Cc(sI#zU#ZQ zyTRWehN?jfJv{!T({S_Q@$TZwUthBTU2^*MKi6Q_37o1~l(&6xN5fa(>n3hR0@kn% zs2Dtl`PbJUpn#VoGu?{;Zkjj@bic>wV#aA7SILy<#61b{=iE|WV9^K&QTspw+?9Qy^p z5MbYTo{Cw4|Jnv>Dtev(*b~6h+m~UdaNgJ1-pwlncmYJy4_#NV^8vprwbkr88&$?| zmd+e|ycWn((N4|VxB&#J4Qw8f1wFmWOA-LmZokL2 z=NQ_EXgrz$qD@C&hH*Gf#hnr$bbDd7VH-o-2U>0w0-s*JVdtrv7z0p`uk1L|I>6K> zf3<%f;3K#ypd%(0u4+ZExNBs@AI=0b;0cT`(sO+9;kZ*TFEyv`Bp8O+>E<+xNq}+X zllJJO?toQ$1)cb6a_`4H!vWcxIt9HSu95qH1(bob_d>Cp{QQm2@y0+VkAGm~TgS?Z zc@xWER+n}H!AF2F5eUh)v`=p^bx5>UL@KedT z2Msn`r|Fz~cYc3>90fdw*{rjoFjbCnixVtD`yqM|2+4CeGhJ6?03v;L=q{^v!_2MW?R41LGQbS3 zDfcY^;9wh>(PSACK8nq_kkSN%t9d>N&`>n~;XuG#e}=nH5QNaHM~^ZnX}DM&}C6r_77I)vbWuG+Zk9eV08rUZl4I%DY- zNLBW(ZlQxpZiJ*4SR;^2VA;6wFl?r9Qvq;n0Q=#xfE%?#JCPek6PQP^jWGFfg=xy1 z&GMuW-2~SQhlgJ3WtIxfO&%Lw9e-%cs1wZeYmSK#@u>;1OUB+o#ivt)2 zOza_0#;ws)*L|asSJRF_wk=%fEbT}4v{%|*ig{#8!BZdQ4zlv%%p?CBjst_A*A;?A!zpEX1W;07f2)V63XF}KPQ(p}*N(;AMwG?& zS(oRs1Se3}_R}O1sR$Gad@TJloFWji#(-6P5D}q&e)TP1!1Ko84`j7-85kMY1N{SC zV(PTiQm>as0{IEk0VWPP83+piO{sRv`-{PPn!NQ9wE61bX9Q$dP*9G%17J-UmcEwy z>FYoqf?x)AWOX{CGRxM?T8;;ZgC1eSAvw$J&#OpC&rVL+j*C0a|GW%sVVGeoh%F*E zcPkAHp0GJQ6Qxi2q4(?RQ|6SCrv6%c5zVn({Iokz-zVY~Tpt2f4hCnn;y$1$jvhO< zilAP=V&cOHfF>a1-nnOPfeQ@+_XYr8V4h2G6NKd-7aMgU_MDqe$PE|r^VkWqN>FD2 zyd#FM*x5~-DJW|@FZxfi(P1E^58PU{Fc|UPE33;|)!Pr*LXPhzP;rfEi$f z$bjkeQ;ll8{x<~a*ZScNB**e&mRD*F2b0ayU0G+*X9`9~- zAxB`H+&w%706fAc5{ks&wbVY_zjW|x+|o|>f%=C6$ARb0us@@Z@IpjZtLmxbIk0Ci z^)JNZ#^Q2q&V^G1oY`S;1CgfT+!FInmQVLngizrna9D_y+)Hs>&VexotH3I7>`S(T zg(qcP6;L0D14m=oh%p@)3!ve-(gVkpiQys> z9)3!Ql!*-4uqp%y9$;Oa@;#0mJaFL7Z}E{g zO?}39dh8+wYeY?@KH$HT} z?FEgi1kNc@PgWlQWQ!5dIaKCUu#%#&o;Ry!iwI(L3e2f?UUWME`51+ExzJU*=eq^PHQQ@_Opb4<%Xzvdcnh& zR{rf`gE+c{FeZOrr#^4^FV5tKy~_bN`unAXkLEj6cSu1mwuxcJSU>ZrEX-8XMPdNz}nQA=)D z*H%^L)?Ivw6kI8vN(%MCdsUKaF6?JS!)GD65X1?Gba5HBIy9%9Iu#O%$4mEKc!hS`DL^;>0;fZq_XPr zlmFQ=J72rYW7*DSaw-b7AvtcTPQ39tlGoi9r~wC0Zhw6``Nx`s(yl9d$!dZ8^b*!* zi{|XZwASp#OhxiOUMaTvJmsr`AMD&5nTEXwd|4M8KyL@ z=@&y08t=}J>(F^pP53kv#RD~CNpYu!guAQ5a|Rds9h_9}Gb|mF9;PcaO&K3qFsz$S ze||d2joHeYtNg7<2%RWC;)$Zu^3??kf&LlFO9~@BR5!`=m<&pd9E`Y~$070ajCzEB zLFCRnlf1FP)2220`%y%6*)82z{v%7sxvL>g`0al^ZBT3mO^AV8L2auP%@jLT9S#q5l(mt@`; z_d`2uauxmFy?=SRIg`!g!14Dsw3AYAsrTu;qLxev8;-A6iB2wLqi6Gd^0Gp@n>?fz zR3iCA%45qUTjGV*FffB+wzs!O-j9;;wbs`qN_*YwAKux){xOx=fL~tTCuiaQ3zrnR z`<_!Lt%ttcG^vnY=g}=;r7NAerNGDQ#=JxP*ho*(6&dc+{!9qF#N9?#^$DLX##5}@ z&`%5S!?a|-vWxSj^CC=+IXp-!v_t-Cf7;dCo=GRwB`~!Nf7CIy7 zb-4Bgy@KLT((X)0%7`tX7%=Nj$+|K5}U!{dpp?6@x)_a#n(p^bjphnx z;k^8{ZtPx%q0=SSPVbyLSn?w#m(tukS&MzypI-{3d!J(O(hu1sCNI69;NYUW>to-w z@I2am@)Jk)lGbm}S3bySpxbxp$Wd|@3jMPVnb$ZZH?D-8AbwxO$cT-#%l{tBVX{(-YZUOGlfWZgQlsiC?HZLU&(fspK2&XDU;x zxC4}mpQb6>H%3^|hfa4L->_JJJRTC|=aS7=&#^WgANzUL$uqslGS#N#L07<3Rb$DO zTS|%Bwr=$$)h07>e&O+ER*Ec&6=$q@#jLhmugK=oBCtp4mvP-3+ z&*5_Y8>NM5K9j0|7OIw7#+y5K&;PgP2}faRY^UcdnuLvrMn3Jr`V6Pb`{UWB!b^G9 zGIBh5GCSw8p7Ruxsy+?WulyRfapgWOEh%CHig@sF-n7P`0f8opsKcA1=iio_U`8 zzW2WNwXePRdi!z1T;+i3-S4U#JtK5~a?+P{T%aCx0h_8)!}*D(Admji@b19s4D7p7 z3I5B@>|Bky=t?gCqqP}AFjLocdivx3ePjH4b7JuWZ)*9@m>qXTWWhZEA|*@Dr?~cL z5+lgDmI^#WH(oouW~yzwP7WwIXKLDR?TPx3K`Ha_z@G8CKxEIT*ap*hw>||8ohh%=L?7n%&N;P_wjmtQ3@e$dL||? zVKfE(sl5Eo?xJ%cv|ra_qMpjrlj_az&_vPULxL{9V%P2d9`MXKztUj_vHm#_2pr$W zg|9d?y!d@BGkZ}-$`{dreIjLE#WMbhxdGOUu1}*P(HzY=|w@g)Au-~We zTL7}m2Tb@+3sNYYt@kva&Oq|KeCxaBX&6pTSJZ*^>Q~v_%W7M;u-X#>txbP6d#&49 zF;qKPtP5Xn_IcGp&h@`}3P}`w`#5C-H7nm8R|qyGAh}khI-%lkD{P->F)Ast9LWlz z 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 literal 0 HcmV?d00001 diff --git a/documentation/docs/aws/export_key_material.png b/documentation/docs/aws/export_key_material.png new file mode 100644 index 0000000000000000000000000000000000000000..8e7f6a277eb4797d84facf398d01f508e0b89b73 GIT binary patch literal 192466 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 M!%GH~^Vfg-Ke}pb%m4rY literal 0 HcmV?d00001 diff --git a/documentation/docs/aws_fargate.md b/documentation/docs/aws/fargate.md similarity index 100% rename from documentation/docs/aws_fargate.md rename to documentation/docs/aws/fargate.md diff --git a/documentation/docs/aws/import_kek.png b/documentation/docs/aws/import_kek.png new file mode 100644 index 0000000000000000000000000000000000000000..7d56ac012e375be5ad7c1ecab25732fe2a36b5e2 GIT binary patch literal 259736 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 literal 0 HcmV?d00001 diff --git a/documentation/docs/index.md b/documentation/docs/index.md index 170150ce7a..b1144dd77c 100644 --- a/documentation/docs/index.md +++ b/documentation/docs/index.md @@ -13,10 +13,10 @@ The **Cosmian KMS** is a high-performance, [**source available**](https://github ## Standards' compliance - [FIPS 140-3](./fips.md) mode -- KMIP support (versions 1.0-1.4, 2.0-2.1) in both binary and JSON formats - see [KMIP documentation](./kmip/index.md) -- [HSM support](./hsms/index.md) for Trustway Proteccio & Crypt2Pay, Utimaco general purpose, Nitrokey HSM 2, Smartcard HSMs, etc. with KMS keys wrapped by the HSM -- Developed in Rust, a memory safe language, with the source code available on [GitHub](https://github.com/Cosmian/kms) -- 100% developed in the European Union +- KMIP support (versions 1.0-1.4, 2.0-2.1) in both binary and JSON formats - see [KMIP documentation](./kmip/index.md). +- [HSM support](./hsms/index.md) for Trustway Proteccio & Crypt2Pay, Utimaco general purpose, Nitrokey HSM 2, Smartcard HSMs, etc. with KMS keys wrapped by the HSM. +- Developed in Rust, a memory safe language, with the source code available on [GitHub](https://github.com/Cosmian/kms). +- 100% developed in the European Union. ## Modern technology @@ -32,6 +32,7 @@ The **Cosmian KMS** is a high-performance, [**source available**](https://github - **Cloud integrations**: - [Azure BYOK](./azure/byok.md) - [GCP CSEK](./google_gcp/csek.md) and [Google CMEK](./google_gcp/cmek.md) + - [AWS BYOK](./aws/byok.md) and [AWS Fargate](./aws/fargate.md) - ... - **Workplace security**: - [Google Workspace Client Side Encryption (CSE)](./google_cse/index.md) @@ -78,6 +79,8 @@ token authentication. ![Cosmian KMS UI](./images/kms-ui.png) +The UI can be [fully customized](./ui_branding.md) to match your organization's branding. + ## Client CLI The [Cosmian CLI](../cosmian_cli/index.md) provides a powerful command-line interface for managing the server, handling keys, and performing encryption/decryption operations. It features integrated help and is available for multiple operating systems. From 224bdcfc352da55c9dc651ad7f2dfc6a9e13ef61 Mon Sep 17 00:00:00 2001 From: HatemMn <19950216+HatemMn@users.noreply.github.com> Date: Thu, 19 Feb 2026 11:52:09 +0100 Subject: [PATCH 16/16] feat: fix ci --- crate/cli/src/tests/kms/aws/integration_tests.rs | 1 - crate/server/src/main.rs | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/crate/cli/src/tests/kms/aws/integration_tests.rs b/crate/cli/src/tests/kms/aws/integration_tests.rs index f9c45c1e1a..62f1994639 100644 --- a/crate/cli/src/tests/kms/aws/integration_tests.rs +++ b/crate/cli/src/tests/kms/aws/integration_tests.rs @@ -410,4 +410,3 @@ async fn aws_byok_with_rsa_aes_key_wrap_sha256() -> KmsCliResult<()> { // Ok(plaintext) // } - diff --git a/crate/server/src/main.rs b/crate/server/src/main.rs index 8caddd145e..07345b8b9b 100644 --- a/crate/server/src/main.rs +++ b/crate/server/src/main.rs @@ -322,6 +322,8 @@ rolling_log_name = "kms_log" enable_metering = false environment = "development" ansi_colors = false + +[kmip.allowlists] "#; assert_eq!(toml_string.trim(), toml::to_string(&config).unwrap().trim());