From 2acaeff4494efa6b000a651944c7f428dec357ab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 07:48:02 +0000 Subject: [PATCH 01/24] Bump anyhow from 1.0.92 to 1.0.93 in the patch-dependencies group (#1149) Bumps the patch-dependencies group with 1 update: [anyhow](https://github.com/dtolnay/anyhow). Updates `anyhow` from 1.0.92 to 1.0.93 - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](https://github.com/dtolnay/anyhow/compare/1.0.92...1.0.93) --- updated-dependencies: - dependency-name: anyhow dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- crates/client/Cargo.toml | 2 +- crates/protocol/Cargo.toml | 2 +- crates/test-cli/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 702a3f9b1..0acea213c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -215,9 +215,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.92" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" +checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "approx" diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 36e5a27e1..4d78151f7 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -30,7 +30,7 @@ reqwest ={ version="0.12.9", features=["json", "stream"], optional=true base64 ={ version="0.22.0", optional=true } synedrion ={ version="0.2.0-beta.0", optional=true } hex ={ version="0.4.3", optional=true } -anyhow ="1.0.92" +anyhow ="1.0.93" # Only for the browser js-sys={ version="0.3.72", optional=true } diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index 470013cff..60d38e90f 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -49,7 +49,7 @@ schnorrkel ={ version="0.11.4", default-features=false, features=["std" [dev-dependencies] serial_test="3.1.1" sp-keyring ="34.0.0" -anyhow ="1.0.92" +anyhow ="1.0.93" num_cpus ="1.16.0" [features] diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index e4e69ec7b..8f545c199 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -14,7 +14,7 @@ clap ={ version="4.5.20", features=["derive"] } colored ="2.0.4" subxt ="0.35.3" sp-core ="31.0.0" -anyhow ="1.0.92" +anyhow ="1.0.93" tokio ={ version="1.41", features=["macros", "rt-multi-thread", "io-util", "process"] } hex ="0.4.3" bincode ="1.3.3" diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index ef2652f41..e9e0f6197 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -12,7 +12,7 @@ edition ='2021' # Common serde ={ version="1.0", default-features=false, features=["derive"] } serde_json ="1.0" -anyhow ="1.0.92" +anyhow ="1.0.93" thiserror ="1.0.68" blake2 ="0.10.4" x25519-dalek ={ version="2.0.1", features=["static_secrets"] } From 07225c7330cf9cb9d2bc25dd8bf45f42f01765a7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 08:56:49 +0100 Subject: [PATCH 02/24] Bump thiserror from 1.0.68 to 2.0.0 (#1150) Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.68 to 2.0.0. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.68...2.0.0) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: peg --- Cargo.lock | 270 ++++++++++--------- crates/client/Cargo.toml | 2 +- crates/kvdb/Cargo.toml | 2 +- crates/protocol/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- 5 files changed, 149 insertions(+), 129 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0acea213c..d1f661d4e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -422,7 +422,7 @@ dependencies = [ "nom", "num-traits", "rusticata-macros", - "thiserror", + "thiserror 1.0.68", "time", ] @@ -1129,7 +1129,7 @@ dependencies = [ "semver 1.0.22", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -2533,7 +2533,7 @@ dependencies = [ "sp-keyring 34.0.0", "subxt", "synedrion", - "thiserror", + "thiserror 2.0.0", "tokio", "tracing", "x25519-dalek 2.0.1", @@ -2568,7 +2568,7 @@ dependencies = [ "sled", "sp-core 31.0.0", "synedrion", - "thiserror", + "thiserror 2.0.0", "tokio", "tracing", "zeroize", @@ -2593,7 +2593,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a50c0e3e7224af04d8bebc6994f7428796de5f88861c89291644f2a85a44d3c" dependencies = [ "entropy-programs-core", - "thiserror", + "thiserror 1.0.68", "wasmtime 12.0.2", ] @@ -2628,7 +2628,7 @@ dependencies = [ "sp-keyring 34.0.0", "subxt", "synedrion", - "thiserror", + "thiserror 2.0.0", "tokio", "tokio-tungstenite", "tracing", @@ -2841,7 +2841,7 @@ dependencies = [ "subxt-signer", "synedrion", "tdx-quote", - "thiserror", + "thiserror 2.0.0", "tokio", "tokio-tungstenite", "tower-http 0.6.1", @@ -2935,7 +2935,7 @@ dependencies = [ "serde", "serde_json", "sha3", - "thiserror", + "thiserror 1.0.68", "uint", ] @@ -2992,7 +2992,7 @@ dependencies = [ "serde_json", "strum 0.26.3", "tempfile", - "thiserror", + "thiserror 1.0.68", "tiny-keccak", "unicode-xid", ] @@ -3098,7 +3098,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" dependencies = [ "libc", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -3334,7 +3334,7 @@ dependencies = [ "sp-storage 20.0.0", "sp-trie 30.0.0", "sp-wasm-interface 20.0.0", - "thiserror", + "thiserror 1.0.68", "thousands", ] @@ -3971,7 +3971,7 @@ dependencies = [ "pin-project", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -3990,7 +3990,7 @@ dependencies = [ "http 1.1.0", "js-sys", "pin-project", - "thiserror", + "thiserror 1.0.68", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -4101,7 +4101,7 @@ dependencies = [ "pest_derive", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -4908,7 +4908,7 @@ dependencies = [ "rustls-native-certs 0.7.0", "rustls-pki-types", "soketto", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-rustls 0.25.0", "tokio-util", @@ -4934,7 +4934,7 @@ dependencies = [ "serde", "serde_json", "soketto", - "thiserror", + "thiserror 1.0.68", "tokio", "tracing", ] @@ -4958,7 +4958,7 @@ dependencies = [ "rustc-hash", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "tracing", @@ -4978,7 +4978,7 @@ dependencies = [ "jsonrpsee-types 0.22.4", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "tokio", "tower 0.4.13", "tracing", @@ -5026,7 +5026,7 @@ dependencies = [ "serde", "serde_json", "soketto", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "tokio-util", @@ -5050,7 +5050,7 @@ dependencies = [ "serde", "serde_json", "soketto", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "tokio-util", @@ -5068,7 +5068,7 @@ dependencies = [ "beef", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "tracing", ] @@ -5082,7 +5082,7 @@ dependencies = [ "beef", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -5283,7 +5283,7 @@ dependencies = [ "rand", "rw-stream-sink", "smallvec", - "thiserror", + "thiserror 1.0.68", "unsigned-varint", "void", ] @@ -5320,7 +5320,7 @@ dependencies = [ "quick-protobuf", "quick-protobuf-codec", "smallvec", - "thiserror", + "thiserror 1.0.68", "void", ] @@ -5338,7 +5338,7 @@ dependencies = [ "quick-protobuf", "rand", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.68", "zeroize", ] @@ -5364,7 +5364,7 @@ dependencies = [ "rand", "sha2 0.10.8", "smallvec", - "thiserror", + "thiserror 1.0.68", "uint", "unsigned-varint", "void", @@ -5423,7 +5423,7 @@ dependencies = [ "sha2 0.10.8", "snow", "static_assertions", - "thiserror", + "thiserror 1.0.68", "x25519-dalek 1.1.1", "zeroize", ] @@ -5463,7 +5463,7 @@ dependencies = [ "quinn-proto", "rand", "rustls 0.20.9", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -5544,7 +5544,7 @@ dependencies = [ "rcgen", "ring 0.16.20", "rustls 0.20.9", - "thiserror", + "thiserror 1.0.68", "webpki", "x509-parser", "yasna", @@ -5592,7 +5592,7 @@ dependencies = [ "futures", "libp2p-core", "log", - "thiserror", + "thiserror 1.0.68", "yamux", ] @@ -6045,7 +6045,7 @@ dependencies = [ "rand_chacha 0.3.1", "rand_distr", "subtle 2.5.0", - "thiserror", + "thiserror 1.0.68", "zeroize", ] @@ -6320,7 +6320,7 @@ dependencies = [ "anyhow", "byteorder", "paste", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -6334,7 +6334,7 @@ dependencies = [ "log", "netlink-packet-core", "netlink-sys", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -7902,7 +7902,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "311fb059dee1a7b802f036316d790138c613a4e8b180c822e3925a662e9f0c95" dependencies = [ "memchr", - "thiserror", + "thiserror 1.0.68", "ucd-trie", ] @@ -8367,7 +8367,7 @@ dependencies = [ "lazy_static", "memchr", "parking_lot 0.12.3", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -8556,7 +8556,7 @@ dependencies = [ "asynchronous-codec", "bytes", "quick-protobuf", - "thiserror", + "thiserror 1.0.68", "unsigned-varint", ] @@ -8583,7 +8583,7 @@ dependencies = [ "rustc-hash", "rustls 0.20.9", "slab", - "thiserror", + "thiserror 1.0.68", "tinyvec", "tracing", "webpki", @@ -8763,7 +8763,7 @@ checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ "getrandom 0.2.15", "libredox", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -8913,7 +8913,7 @@ dependencies = [ "nom", "pin-project-lite 0.2.14", "reqwest", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9055,7 +9055,7 @@ dependencies = [ "netlink-packet-route", "netlink-proto", "nix", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -9324,7 +9324,7 @@ dependencies = [ "log", "sp-core 29.0.0", "sp-wasm-interface 20.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9336,7 +9336,7 @@ dependencies = [ "log", "sp-core 32.0.0", "sp-wasm-interface 21.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9366,7 +9366,7 @@ dependencies = [ "sp-keystore 0.35.0", "sp-runtime 32.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9528,7 +9528,7 @@ dependencies = [ "sp-panic-handler", "sp-runtime 32.0.0", "sp-version 30.0.0", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -9570,7 +9570,7 @@ dependencies = [ "sp-panic-handler", "sp-runtime 35.0.0", "sp-version 33.0.0", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -9707,7 +9707,7 @@ dependencies = [ "sp-runtime 32.0.0", "sp-state-machine 0.36.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9733,7 +9733,7 @@ dependencies = [ "sp-runtime 35.0.0", "sp-state-machine 0.39.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9770,7 +9770,7 @@ dependencies = [ "sp-keystore 0.35.0", "sp-runtime 32.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9793,7 +9793,7 @@ dependencies = [ "sp-core 29.0.0", "sp-keystore 0.35.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9851,7 +9851,7 @@ dependencies = [ "sp-keystore 0.35.0", "sp-runtime 32.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9872,7 +9872,7 @@ dependencies = [ "sp-blockchain 29.0.0", "sp-core 29.0.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -9955,7 +9955,7 @@ dependencies = [ "sc-allocator 24.0.0", "sp-maybe-compressed-blob", "sp-wasm-interface 20.0.0", - "thiserror", + "thiserror 1.0.68", "wasm-instrument", ] @@ -9969,7 +9969,7 @@ dependencies = [ "sc-allocator 27.0.0", "sp-maybe-compressed-blob", "sp-wasm-interface 21.0.0", - "thiserror", + "thiserror 1.0.68", "wasm-instrument", ] @@ -10071,7 +10071,7 @@ dependencies = [ "sp-application-crypto 31.0.0", "sp-core 29.0.0", "sp-keystore 0.35.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10086,7 +10086,7 @@ dependencies = [ "sp-application-crypto 34.0.0", "sp-core 32.0.0", "sp-keystore 0.38.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10116,7 +10116,7 @@ dependencies = [ "sp-keystore 0.35.0", "sp-mixnet 0.5.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10146,7 +10146,7 @@ dependencies = [ "sp-keystore 0.38.0", "sp-mixnet 0.8.0", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10185,7 +10185,7 @@ dependencies = [ "sp-core 29.0.0", "sp-runtime 32.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "unsigned-varint", @@ -10229,7 +10229,7 @@ dependencies = [ "sp-core 32.0.0", "sp-runtime 35.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "unsigned-varint", @@ -10254,7 +10254,7 @@ dependencies = [ "sc-network 0.35.0", "sp-blockchain 29.0.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", "unsigned-varint", ] @@ -10275,7 +10275,7 @@ dependencies = [ "sc-network 0.38.0", "sp-blockchain 32.0.0", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", "unsigned-varint", ] @@ -10354,7 +10354,7 @@ dependencies = [ "sp-blockchain 29.0.0", "sp-core 29.0.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10376,7 +10376,7 @@ dependencies = [ "sp-blockchain 32.0.0", "sp-core 32.0.0", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10411,7 +10411,7 @@ dependencies = [ "sp-core 29.0.0", "sp-runtime 32.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", ] @@ -10448,7 +10448,7 @@ dependencies = [ "sp-core 32.0.0", "sp-runtime 35.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", ] @@ -10622,7 +10622,7 @@ dependencies = [ "sp-rpc 27.0.0", "sp-runtime 32.0.0", "sp-version 30.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10643,7 +10643,7 @@ dependencies = [ "sp-rpc 30.0.0", "sp-runtime 35.0.0", "sp-version 33.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10707,7 +10707,7 @@ dependencies = [ "sp-rpc 27.0.0", "sp-runtime 32.0.0", "sp-version 30.0.0", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", ] @@ -10739,7 +10739,7 @@ dependencies = [ "sp-rpc 30.0.0", "sp-runtime 35.0.0", "sp-version 33.0.0", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", ] @@ -10802,7 +10802,7 @@ dependencies = [ "static_init", "substrate-prometheus-endpoint", "tempfile", - "thiserror", + "thiserror 1.0.68", "tokio", "tracing", "tracing-futures", @@ -10867,7 +10867,7 @@ dependencies = [ "static_init", "substrate-prometheus-endpoint", "tempfile", - "thiserror", + "thiserror 1.0.68", "tokio", "tracing", "tracing-futures", @@ -10907,7 +10907,7 @@ dependencies = [ "fs4", "log", "sp-core 29.0.0", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -10928,7 +10928,7 @@ dependencies = [ "serde_json", "sp-blockchain 29.0.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -10991,7 +10991,7 @@ dependencies = [ "sc-utils 15.0.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "wasm-timer", ] @@ -11011,7 +11011,7 @@ dependencies = [ "sc-utils 17.0.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.68", "wasm-timer", ] @@ -11040,7 +11040,7 @@ dependencies = [ "sp-rpc 27.0.0", "sp-runtime 32.0.0", "sp-tracing 16.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "tracing-log 0.1.4", "tracing-subscriber 0.2.25", @@ -11071,7 +11071,7 @@ dependencies = [ "sp-rpc 30.0.0", "sp-runtime 35.0.0", "sp-tracing 17.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "tracing-log 0.1.4", "tracing-subscriber 0.2.25", @@ -11114,7 +11114,7 @@ dependencies = [ "sp-tracing 16.0.0", "sp-transaction-pool 27.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -11142,7 +11142,7 @@ dependencies = [ "sp-tracing 17.0.0", "sp-transaction-pool 30.0.0", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -11159,7 +11159,7 @@ dependencies = [ "sp-blockchain 29.0.0", "sp-core 29.0.0", "sp-runtime 32.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -11176,7 +11176,7 @@ dependencies = [ "sp-blockchain 32.0.0", "sp-core 32.0.0", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -11324,7 +11324,7 @@ dependencies = [ "quote", "scale-info", "syn 2.0.87", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12046,7 +12046,7 @@ dependencies = [ "sp-std 14.0.0", "sp-trie 30.0.0", "sp-version 30.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12069,7 +12069,7 @@ dependencies = [ "sp-std 14.0.0", "sp-trie 33.0.0", "sp-version 33.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12243,7 +12243,7 @@ dependencies = [ "sp-database", "sp-runtime 32.0.0", "sp-state-machine 0.36.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12262,7 +12262,7 @@ dependencies = [ "sp-database", "sp-runtime 35.0.0", "sp-state-machine 0.39.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12278,7 +12278,7 @@ dependencies = [ "sp-inherents 27.0.0", "sp-runtime 32.0.0", "sp-state-machine 0.36.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12294,7 +12294,7 @@ dependencies = [ "sp-inherents 30.0.0", "sp-runtime 35.0.0", "sp-state-machine 0.39.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12455,7 +12455,7 @@ dependencies = [ "sp-storage 20.0.0", "ss58-registry", "substrate-bip39 0.4.6", - "thiserror", + "thiserror 1.0.68", "tracing", "w3f-bls", "zeroize", @@ -12502,7 +12502,7 @@ dependencies = [ "sp-storage 20.0.0", "ss58-registry", "substrate-bip39 0.5.0", - "thiserror", + "thiserror 1.0.68", "tracing", "w3f-bls", "zeroize", @@ -12549,7 +12549,7 @@ dependencies = [ "sp-storage 21.0.0", "ss58-registry", "substrate-bip39 0.6.0", - "thiserror", + "thiserror 1.0.68", "tracing", "w3f-bls", "zeroize", @@ -12671,7 +12671,7 @@ dependencies = [ "scale-info", "sp-runtime 32.0.0", "sp-std 14.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12685,7 +12685,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12811,7 +12811,7 @@ dependencies = [ "parking_lot 0.12.3", "sp-core 29.0.0", "sp-externalities 0.26.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -12844,7 +12844,7 @@ version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0c768c11afbe698a090386876911da4236af199cd38a5866748df4d8628aeff" dependencies = [ - "thiserror", + "thiserror 1.0.68", "zstd 0.12.4", ] @@ -13205,7 +13205,7 @@ dependencies = [ "sp-panic-handler", "sp-std 14.0.0", "sp-trie 30.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", ] @@ -13227,7 +13227,7 @@ dependencies = [ "sp-panic-handler", "sp-std 14.0.0", "sp-trie 32.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", ] @@ -13248,7 +13248,7 @@ dependencies = [ "sp-externalities 0.28.0", "sp-panic-handler", "sp-trie 33.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", ] @@ -13275,7 +13275,7 @@ dependencies = [ "sp-runtime 32.0.0", "sp-runtime-interface 25.0.0", "sp-std 14.0.0", - "thiserror", + "thiserror 1.0.68", "x25519-dalek 2.0.1", ] @@ -13300,7 +13300,7 @@ dependencies = [ "sp-externalities 0.28.0", "sp-runtime 35.0.0", "sp-runtime-interface 27.0.0", - "thiserror", + "thiserror 1.0.68", "x25519-dalek 2.0.1", ] @@ -13354,7 +13354,7 @@ dependencies = [ "sp-inherents 27.0.0", "sp-runtime 32.0.0", "sp-std 14.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -13367,7 +13367,7 @@ dependencies = [ "parity-scale-codec", "sp-inherents 30.0.0", "sp-runtime 35.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -13465,7 +13465,7 @@ dependencies = [ "sp-core 29.0.0", "sp-externalities 0.26.0", "sp-std 14.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", "trie-root", @@ -13490,7 +13490,7 @@ dependencies = [ "sp-core 31.0.0", "sp-externalities 0.27.0", "sp-std 14.0.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", "trie-root", @@ -13514,7 +13514,7 @@ dependencies = [ "schnellru", "sp-core 32.0.0", "sp-externalities 0.28.0", - "thiserror", + "thiserror 1.0.68", "tracing", "trie-db", "trie-root", @@ -13535,7 +13535,7 @@ dependencies = [ "sp-runtime 32.0.0", "sp-std 14.0.0", "sp-version-proc-macro 13.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -13553,7 +13553,7 @@ dependencies = [ "sp-runtime 35.0.0", "sp-std 14.0.0", "sp-version-proc-macro 14.0.0", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -13900,7 +13900,7 @@ dependencies = [ "hyper 0.14.28", "log", "prometheus", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -13982,7 +13982,7 @@ dependencies = [ "subxt-lightclient", "subxt-macro", "subxt-metadata", - "thiserror", + "thiserror 1.0.68", "tokio-util", "tracing", "url", @@ -14006,7 +14006,7 @@ dependencies = [ "scale-typegen", "subxt-metadata", "syn 2.0.87", - "thiserror", + "thiserror 1.0.68", "tokio", ] @@ -14028,7 +14028,7 @@ dependencies = [ "serde_json", "smoldot", "smoldot-light", - "thiserror", + "thiserror 1.0.68", "tokio", "tokio-stream", "tracing", @@ -14122,7 +14122,7 @@ dependencies = [ "proc-macro2", "quote", "syn 1.0.109", - "thiserror", + "thiserror 1.0.68", ] [[package]] @@ -14286,7 +14286,16 @@ version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02dd99dc800bbb97186339685293e1cc5d9df1f8fae2d0aecd9ff1c77efea892" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.68", +] + +[[package]] +name = "thiserror" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15291287e9bff1bc6f9ff3409ed9af665bec7a5fc8ac079ea96be07bca0e2668" +dependencies = [ + "thiserror-impl 2.0.0", ] [[package]] @@ -14300,6 +14309,17 @@ dependencies = [ "syn 2.0.87", ] +[[package]] +name = "thiserror-impl" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22efd00f33f93fa62848a7cab956c3d38c8d43095efda1decfc2b3a5dc0b8972" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "thousands" version = "0.2.0" @@ -14855,7 +14875,7 @@ dependencies = [ "rand", "smallvec", "socket2 0.4.10", - "thiserror", + "thiserror 1.0.68", "tinyvec", "tokio", "tracing", @@ -14876,7 +14896,7 @@ dependencies = [ "parking_lot 0.12.3", "resolv-conf", "smallvec", - "thiserror", + "thiserror 1.0.68", "tokio", "tracing", "trust-dns-proto", @@ -14945,7 +14965,7 @@ dependencies = [ "log", "rand", "sha1", - "thiserror", + "thiserror 1.0.68", "utf-8", ] @@ -15171,7 +15191,7 @@ dependencies = [ "rand_core 0.6.4", "sha2 0.10.8", "sha3", - "thiserror", + "thiserror 1.0.68", "zeroize", ] @@ -15355,7 +15375,7 @@ dependencies = [ "strum 0.24.1", "strum_macros 0.24.3", "tempfile", - "thiserror", + "thiserror 1.0.68", "wasm-opt-cxx-sys", "wasm-opt-sys", ] @@ -15665,7 +15685,7 @@ dependencies = [ "log", "object 0.30.4", "target-lexicon", - "thiserror", + "thiserror 1.0.68", "wasmparser 0.102.0", "wasmtime-cranelift-shared 8.0.1", "wasmtime-environ 8.0.1", @@ -15688,7 +15708,7 @@ dependencies = [ "log", "object 0.31.1", "target-lexicon", - "thiserror", + "thiserror 1.0.68", "wasmparser 0.110.0", "wasmtime-cranelift-shared 12.0.2", "wasmtime-environ 12.0.2", @@ -15740,7 +15760,7 @@ dependencies = [ "object 0.30.4", "serde", "target-lexicon", - "thiserror", + "thiserror 1.0.68", "wasmparser 0.102.0", "wasmtime-types 8.0.1", ] @@ -15759,7 +15779,7 @@ dependencies = [ "object 0.31.1", "serde", "target-lexicon", - "thiserror", + "thiserror 1.0.68", "wasm-encoder 0.31.1", "wasmparser 0.110.0", "wasmprinter", @@ -15937,7 +15957,7 @@ checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ "cranelift-entity 0.95.1", "serde", - "thiserror", + "thiserror 1.0.68", "wasmparser 0.102.0", ] @@ -15949,7 +15969,7 @@ checksum = "77943729d4b46141538e8d0b6168915dc5f88575ecdfea26753fd3ba8bab244a" dependencies = [ "cranelift-entity 0.99.2", "serde", - "thiserror", + "thiserror 1.0.68", "wasmparser 0.110.0", ] @@ -16642,7 +16662,7 @@ dependencies = [ "nom", "oid-registry", "rusticata-macros", - "thiserror", + "thiserror 1.0.68", "time", ] diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 4d78151f7..3798ff9c8 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -14,7 +14,7 @@ serde ={ version="1.0", default-features=false, features=["derive"] } entropy-shared={ version="0.3.0-rc.1", path="../shared", default-features=false } subxt ={ version="0.35.3", default-features=false, features=["jsonrpsee"] } num ="0.4.3" -thiserror ="1.0.68" +thiserror ="2.0.0" futures ="0.3" sp-core ={ version="31.0.0", default-features=false, features=["full_crypto", "serde"] } tracing ="0.1.37" diff --git a/crates/kvdb/Cargo.toml b/crates/kvdb/Cargo.toml index 5efcae38b..b10b8705a 100644 --- a/crates/kvdb/Cargo.toml +++ b/crates/kvdb/Cargo.toml @@ -12,7 +12,7 @@ edition ='2021' # Common rand ={ version="0.8", default-features=false } serde ={ version="1.0", features=["derive"] } -thiserror="1.0.68" +thiserror="2.0.0" hex ="0.4.3" # Substrate diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index 60d38e90f..80981fb70 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -20,7 +20,7 @@ x25519-dalek ={ version="2.0.1", features=["static_secrets"] } futures ="0.3" hex ="0.4.3" blake2 ="0.10.4" -thiserror ="1.0.68" +thiserror ="2.0.0" snow ="0.9.6" getrandom ={ version="0.2", features=["js"] } rand_core ={ version="0.6.4", features=["getrandom"] } diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index e9e0f6197..a6c94dfa1 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -12,8 +12,8 @@ edition ='2021' # Common serde ={ version="1.0", default-features=false, features=["derive"] } serde_json ="1.0" +thiserror ="2.0.0" anyhow ="1.0.93" -thiserror ="1.0.68" blake2 ="0.10.4" x25519-dalek ={ version="2.0.1", features=["static_secrets"] } rand_core ="0.6.4" From 72e6d3370ed272b77ffd867cd3f14c414fd30d02 Mon Sep 17 00:00:00 2001 From: Hernando Castano Date: Fri, 8 Nov 2024 11:00:37 +0700 Subject: [PATCH 03/24] Add quote guards to `ServerInfo` related extrinsics (#1123) * Add quote guard to `change_endpoint` extrinsic * Add quote guard to `change_threshold_accounts` extrinsic * Bump metadata * RustFmt * Get `entropy-client` test for `change_endpoint` working * Get `change_threshold_account` test compiling Doesn't work yet though, but this is at least a good checkpoint * Add way to `request_attestation` from client * Almost have `change_threshold_account` test working Faling to verify the PCK though... * TaploFmt * Be a bit more descriptive with the TSS public key variable * Make `update_threshold_account()` use updated PCK It looks like if the TSS Account ID and X25519 public keys are changing then we're probably on different hardware so the PCK will also change. This also gets the client test for the extrisnic passing. * Clean up `change_threshold_account()` test * Clean up the `request_attestation` client method a bit * Get `entropy-test-cli` compiling again * Remove unnecessary `.clone()` * Update `test-cli` for new extrinsic arguments * Get staking tests working again * Get Staking benchmarks compiling * Get `change_endpoint` benchmark working * Get `change_threshold_accounts` benchmark working * RustFmt benches * Use better mock endpoint * Switch to requiring a PCK chain instead of a certificate directly This matches what `validate()` does and prevents us from having an invalid PCK become part of `ServerInfo`. * Bump metadata * Update `client` to use PCK certificate chains * Update the `test-cli` to use PCK certificate chains * Undo some formatting changes * Variables mystery amount * Add `CHANGELOG` entry * Revert "Add `CHANGELOG` entry" This reverts commit fe7aadd6b01dcb839f3026ed5bdb57042a64f588. * Updated `CHANGELOG` without formatting --- CHANGELOG.md | 6 +- Cargo.lock | 1 + crates/client/Cargo.toml | 1 + crates/client/entropy_metadata.scale | Bin 209698 -> 209774 bytes crates/client/src/client.rs | 45 +++++- crates/client/src/tests.rs | 112 +++++++++++++-- crates/test-cli/src/lib.rs | 23 ++- crates/testing-utils/src/lib.rs | 2 + .../src/helpers/validator.rs | 2 +- pallets/staking/src/benchmarking.rs | 78 ++++++++-- pallets/staking/src/lib.rs | 101 +++++++++++-- pallets/staking/src/tests.rs | 134 ++++++++++++++++-- 12 files changed, 442 insertions(+), 63 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ada5aaea8..4665f8a79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,7 +17,10 @@ At the moment this project **does not** adhere to `AttestationQueue` config types were removed from the Attestation pallet. - In [#1068](https://github.com/entropyxyz/entropy-core/pull/1068) an extra type `PckCertChainVerifier` was added to the staking extension pallet's `Config` trait. -- In [#1134](https://github.com/entropyxyz/entropy-core/pull/1134/) the ```no-sync``` option was removed +- In [#1123](https://github.com/entropyxyz/entropy-core/pull/1123/) the `change_endpoint()` and + `change_threshold_accounts()` extrinsics got new TDX `quote` related parameters added. +- In [#1134](https://github.com/entropyxyz/entropy-core/pull/1134/) the `--no-sync` option was + removed. ### Added - Protocol message versioning ([#1140](https://github.com/entropyxyz/entropy-core/pull/1140)) @@ -26,6 +29,7 @@ At the moment this project **does not** adhere to - Use correct key rotation endpoint in OCW ([#1104](https://github.com/entropyxyz/entropy-core/pull/1104)) - Change attestation flow to be pull based ([#1109](https://github.com/entropyxyz/entropy-core/pull/1109/)) - Handle PCK certificates ([#1068](https://github.com/entropyxyz/entropy-core/pull/1068)) +- Add quote guards to `ServerInfo` related extrinsics ([#1123](https://github.com/entropyxyz/entropy-core/pull/1123/)) - Remove declare synced ([#1134](https://github.com/entropyxyz/entropy-core/pull/1134/)) ## [0.3.0-rc.1](https://github.com/entropyxyz/entropy-core/compare/release/v0.2.0...release/v0.3.0-rc.1) - 2024-10-04 diff --git a/Cargo.lock b/Cargo.lock index d1f661d4e..46fcf7257 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2533,6 +2533,7 @@ dependencies = [ "sp-keyring 34.0.0", "subxt", "synedrion", + "tdx-quote", "thiserror 2.0.0", "tokio", "tracing", diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 3798ff9c8..ed0ac71ac 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -40,6 +40,7 @@ tokio ={ version="1.41", features=["time"] } serial_test ="3.1.1" sp-keyring ="34.0.0" entropy-testing-utils={ path="../testing-utils" } +tdx-quote ={ version="0.0.1", features=["mock"] } [features] default=["native", "full-client-native"] diff --git a/crates/client/entropy_metadata.scale b/crates/client/entropy_metadata.scale index fcfbd8800746eaa47293aebd17012d87cefbfd01..00e10f14ada10341859b6eaa12033d6e59070578 100644 GIT binary patch delta 84 zcmZ4VjOX1mo(-8VWH}fWQu9&@@-y>FOc-UtQj={;E$kQ=MG8yvOHwD7yzpQYn7sFe c%jDMA>Vi;Fgu3ScFWUdVVBG%y1(UKD0Ax@hv;Y7A delta 44 zcmV+{0Mq~O<_x0d46teF3j_fmWo~3}Z)t9HlZNO>0SJ@N=tP4}>4#0}0k=)*0wGGp C(i6A< diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 5e5ace6e0..98e73bda6 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -341,8 +341,10 @@ pub async fn change_endpoint( rpc: &LegacyRpcMethods, user_keypair: sr25519::Pair, new_endpoint: String, + quote: Vec, ) -> anyhow::Result { - let change_endpoint_tx = entropy::tx().staking_extension().change_endpoint(new_endpoint.into()); + let change_endpoint_tx = + entropy::tx().staking_extension().change_endpoint(new_endpoint.into(), quote); let in_block = submit_transaction_with_pair(api, rpc, &user_keypair, &change_endpoint_tx, None).await?; let result_event = in_block @@ -358,13 +360,18 @@ pub async fn change_threshold_accounts( user_keypair: sr25519::Pair, new_tss_account: String, new_x25519_public_key: String, + new_pck_certificate_chain: Vec>, + quote: Vec, ) -> anyhow::Result { let tss_account = SubxtAccountId32::from_str(&new_tss_account)?; + let x25519_public_key = hex::decode(new_x25519_public_key)? + .try_into() + .map_err(|_| anyhow!("X25519 pub key needs to be 32 bytes"))?; let change_threshold_accounts = entropy::tx().staking_extension().change_threshold_accounts( tss_account, - hex::decode(new_x25519_public_key)? - .try_into() - .map_err(|_| anyhow!("X25519 pub key needs to be 32 bytes"))?, + x25519_public_key, + new_pck_certificate_chain, + quote, ); let in_block = submit_transaction_with_pair(api, rpc, &user_keypair, &change_threshold_accounts, None) @@ -414,3 +421,33 @@ async fn jumpstart_inner( Ok(()) } + +/// An extrinsic to indicate to the chain that it should expect an attestation from the `signer` at +/// some point in the near future. +/// +/// The returned `nonce` must be used when generating a `quote` for the chain. +#[tracing::instrument( + skip_all, + fields( + attestee = ?attestee.public(), + ) +)] +pub async fn request_attestation( + api: &OnlineClient, + rpc: &LegacyRpcMethods, + attestee: sr25519::Pair, +) -> Result, ClientError> { + tracing::debug!("{} is requesting an attestation.", attestee.public()); + + let request_attestation = entropy::tx().attestation().request_attestation(); + + let result = + submit_transaction_with_pair(api, rpc, &attestee, &request_attestation, None).await?; + let result_event = result + .find_first::()? + .ok_or(crate::errors::SubstrateError::NoEvent)?; + + let nonce = result_event.0; + + Ok(nonce) +} diff --git a/crates/client/src/tests.rs b/crates/client/src/tests.rs index 819bf8bae..93e406037 100644 --- a/crates/client/src/tests.rs +++ b/crates/client/src/tests.rs @@ -11,17 +11,23 @@ use crate::{ }, get_api, get_rpc, EntropyConfig, }, - change_endpoint, change_threshold_accounts, register, remove_program, store_program, + change_endpoint, change_threshold_accounts, register, remove_program, request_attestation, + store_program, substrate::query_chain, update_programs, }; + use entropy_testing_utils::{ - constants::{TEST_PROGRAM_WASM_BYTECODE, TSS_ACCOUNTS}, - helpers::{derive_mock_pck_verifying_key, encode_verifying_key}, + constants::{TEST_PROGRAM_WASM_BYTECODE, TSS_ACCOUNTS, X25519_PUBLIC_KEYS}, + helpers::encode_verifying_key, jump_start_network, spawn_testing_validators, substrate_context::test_context_stationary, test_node_process_testing_state, ChainSpecType, }; +use rand::{ + rngs::{OsRng, StdRng}, + SeedableRng, +}; use serial_test::serial; use sp_core::{sr25519, Pair, H256}; use sp_keyring::AccountKeyring; @@ -36,7 +42,33 @@ async fn test_change_endpoint() { let api = get_api(&substrate_context.node_proc.ws_url).await.unwrap(); let rpc = get_rpc(&substrate_context.node_proc.ws_url).await.unwrap(); - let result = change_endpoint(&api, &rpc, one.into(), "new_endpoint".to_string()).await.unwrap(); + // By using this `Alice` account we can skip the `request_attestation` step since this is + // already set up at genesis. + let tss_account_id = &TSS_ACCOUNTS[0]; + let x25519_public_key = X25519_PUBLIC_KEYS[0]; + + // This nonce is what was used in the genesis config for `Alice`. + let nonce = [0; 32]; + + let quote = { + let signing_key = tdx_quote::SigningKey::random(&mut OsRng); + let public_key = sr25519::Public(tss_account_id.0); + + // We need to add `1` here since the quote is being checked in the next block + let block_number = rpc.chain_get_header(None).await.unwrap().unwrap().number + 1; + + let input_data = + entropy_shared::QuoteInputData::new(public_key, x25519_public_key, nonce, block_number); + + let mut pck_seeder = StdRng::from_seed(public_key.0); + let pck = tdx_quote::SigningKey::random(&mut pck_seeder); + + tdx_quote::Quote::mock(signing_key.clone(), pck, input_data.0).as_bytes().to_vec() + }; + + let result = + change_endpoint(&api, &rpc, one.into(), "new_endpoint".to_string(), quote).await.unwrap(); + assert_eq!( format!("{:?}", result), format!( @@ -57,22 +89,72 @@ async fn test_change_threshold_accounts() { let api = get_api(&substrate_context.node_proc.ws_url).await.unwrap(); let rpc = get_rpc(&substrate_context.node_proc.ws_url).await.unwrap(); - let x25519_public_key = [0u8; 32]; - let result = change_threshold_accounts( + + // We need to use an account that's not a validator (so not our default development/test accounts) + // otherwise we're not able to update the TSS and X25519 keys for our existing validator. + let non_validator_seed = + "gospel prosper cactus remember snap enact refuse review bind rescue guard sock"; + let (tss_signer_pair, x25519_secret) = + entropy_testing_utils::get_signer_and_x25519_secret_from_mnemonic(non_validator_seed) + .unwrap(); + + let tss_public_key = tss_signer_pair.signer().public(); + let x25519_public_key = x25519_dalek::PublicKey::from(&x25519_secret); + + // We need to give our new TSS account some funds before it can request an attestation. + let dest = tss_signer_pair.account_id().clone().into(); + let amount = 10 * entropy_shared::MIN_BALANCE; + let balance_transfer_tx = entropy::tx().balances().transfer_allow_death(dest, amount); + let _transfer_result = crate::substrate::submit_transaction_with_pair( &api, &rpc, - one.into(), - AccountId32(one.pair().public().0.into()).to_string(), - hex::encode(x25519_public_key), + &one.pair(), + &balance_transfer_tx, + None, ) .await .unwrap(); - let provisioning_certification_key = { - let key = derive_mock_pck_verifying_key(&TSS_ACCOUNTS[0]); - BoundedVec(encode_verifying_key(&key).unwrap().to_vec()) + // When we request an attestation we get a nonce back that we must use when generating our quote. + let nonce = request_attestation(&api, &rpc, tss_signer_pair.signer().clone()).await.unwrap(); + let nonce: [u8; 32] = nonce.try_into().unwrap(); + + let mut pck_seeder = StdRng::from_seed(tss_public_key.0.clone()); + let pck = tdx_quote::SigningKey::random(&mut pck_seeder); + let encoded_pck = encode_verifying_key(&pck.verifying_key()).unwrap().to_vec(); + + // Our runtime is using the mock `PckCertChainVerifier`, which means that the expected + // "certificate" basically is just our TSS account ID. This account needs to match the one + // used to sign the following `quote`. + let pck_certificate_chain = vec![tss_public_key.0.to_vec()]; + + let quote = { + // We need to add `1` here since the quote is being checked in the next block + let block_number = rpc.chain_get_header(None).await.unwrap().unwrap().number + 1; + + let input_data = entropy_shared::QuoteInputData::new( + tss_public_key, + *x25519_public_key.as_bytes(), + nonce, + block_number, + ); + + let signing_key = tdx_quote::SigningKey::random(&mut OsRng); + tdx_quote::Quote::mock(signing_key.clone(), pck.clone(), input_data.0).as_bytes().to_vec() }; + let result = change_threshold_accounts( + &api, + &rpc, + one.into(), + tss_public_key.to_string(), + hex::encode(*x25519_public_key.as_bytes()), + pck_certificate_chain, + quote, + ) + .await + .unwrap(); + assert_eq!( format!("{:?}", result), format!( @@ -80,10 +162,10 @@ async fn test_change_threshold_accounts() { events::ThresholdAccountChanged( AccountId32(one.pair().public().0), ServerInfo { - tss_account: AccountId32(one.pair().public().0), - x25519_public_key, + tss_account: AccountId32(tss_public_key.0), + x25519_public_key: *x25519_public_key.as_bytes(), endpoint: "127.0.0.1:3001".as_bytes().to_vec(), - provisioning_certification_key, + provisioning_certification_key: BoundedVec(encoded_pck), } ) ) diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index 9bc063167..6a9007861 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -145,6 +145,11 @@ enum CliCommand { ChangeEndpoint { /// New endpoint to change to (ex. "127.0.0.1:3001") new_endpoint: String, + /// The Intel TDX quote used to prove that this TSS is running on TDX hardware. + /// + /// The quote format is specified in: + /// https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf + quote: String, /// The mnemonic for the validator stash account to use for the call, should be stash address #[arg(short, long)] mnemonic_option: Option, @@ -155,6 +160,13 @@ enum CliCommand { new_tss_account: String, /// New x25519 public key new_x25519_public_key: String, + /// The new Provisioning Certification Key (PCK) certificate chain to be used for the TSS. + new_pck_certificate_chain: Vec, + /// The Intel TDX quote used to prove that this TSS is running on TDX hardware. + /// + /// The quote format is specified in: + /// https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf + quote: String, /// The mnemonic for the validator stash account to use for the call, should be stash address #[arg(short, long)] mnemonic_option: Option, @@ -433,7 +445,7 @@ pub async fn run_command( Ok("Got status".to_string()) }, - CliCommand::ChangeEndpoint { new_endpoint, mnemonic_option } => { + CliCommand::ChangeEndpoint { new_endpoint, quote, mnemonic_option } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { mnemonic_option } else { @@ -443,13 +455,16 @@ pub async fn run_command( let user_keypair = ::from_string(&mnemonic, None)?; println!("User account for current call: {}", user_keypair.public()); - let result_event = change_endpoint(&api, &rpc, user_keypair, new_endpoint).await?; + let result_event = + change_endpoint(&api, &rpc, user_keypair, new_endpoint, quote.into()).await?; println!("Event result: {:?}", result_event); Ok("Endpoint changed".to_string()) }, CliCommand::ChangeThresholdAccounts { new_tss_account, new_x25519_public_key, + new_pck_certificate_chain, + quote, mnemonic_option, } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { @@ -460,12 +475,16 @@ pub async fn run_command( let user_keypair = ::from_string(&mnemonic, None)?; println!("User account for current call: {}", user_keypair.public()); + let new_pck_certificate_chain = + new_pck_certificate_chain.iter().cloned().map(|i| i.into()).collect::<_>(); let result_event = change_threshold_accounts( &api, &rpc, user_keypair, new_tss_account, new_x25519_public_key, + new_pck_certificate_chain, + quote.into(), ) .await?; println!("Event result: {:?}", result_event); diff --git a/crates/testing-utils/src/lib.rs b/crates/testing-utils/src/lib.rs index 22329cb1c..435cd9afa 100644 --- a/crates/testing-utils/src/lib.rs +++ b/crates/testing-utils/src/lib.rs @@ -27,3 +27,5 @@ pub use entropy_tss::helpers::tests::{ }; pub use node_proc::TestNodeProcess; pub use substrate_context::*; + +pub use entropy_tss::helpers::validator::get_signer_and_x25519_secret_from_mnemonic; diff --git a/crates/threshold-signature-server/src/helpers/validator.rs b/crates/threshold-signature-server/src/helpers/validator.rs index b571e0181..3811b0414 100644 --- a/crates/threshold-signature-server/src/helpers/validator.rs +++ b/crates/threshold-signature-server/src/helpers/validator.rs @@ -88,7 +88,7 @@ fn get_x25519_secret_from_hkdf(hkdf: &Hkdf) -> Result( if validate_also { let block_number = 0; - let endpoint = vec![20, 20]; + let endpoint = b"http://localhost:3001".to_vec(); let (quote, joining_server_info) = prepare_attestation_for_validate::( threshold, x25519_public_key, @@ -172,33 +172,86 @@ benchmarks! { let caller: T::AccountId = whitelisted_caller(); let bonder: T::AccountId = account("bond", 0, SEED); let threshold: T::AccountId = account("threshold", 0, SEED); + + let endpoint = b"http://localhost:3001"; let x25519_public_key = NULL_ARR; - prep_bond_and_validate::(true, caller.clone(), bonder.clone(), threshold, NULL_ARR); + let validate_also = true; + prep_bond_and_validate::( + validate_also, + caller.clone(), + bonder.clone(), + threshold.clone(), + x25519_public_key.clone(), + ); - }: _(RawOrigin::Signed(bonder.clone()), vec![30]) + // For quote verification this needs to be the _next_ block, and right now we're at block `0`. + let block_number = 1; + let quote = prepare_attestation_for_validate::( + threshold, + x25519_public_key, + endpoint.clone().to_vec(), + block_number, + ) + .0; + }: _(RawOrigin::Signed(bonder.clone()), endpoint.to_vec(), quote) verify { - assert_last_event::(Event::::EndpointChanged(bonder, vec![30]).into()); + assert_last_event::(Event::::EndpointChanged(bonder, endpoint.to_vec()).into()); } change_threshold_accounts { let s in 0 .. MAX_SIGNERS as u32; + let caller: T::AccountId = whitelisted_caller(); let _bonder: T::AccountId = account("bond", 0, SEED); - let validator_id_res = ::ValidatorId::try_from(_bonder.clone()).or(Err(Error::::InvalidValidatorId)); - let validator_id_signers = ::ValidatorId::try_from(caller.clone()).or(Err(Error::::InvalidValidatorId)).unwrap(); - let bonder: T::ValidatorId = validator_id_res.expect("Issue converting account id into validator id"); + + let validator_id_res = ::ValidatorId::try_from(_bonder.clone()) + .or(Err(Error::::InvalidValidatorId)); + let validator_id_signers = ::ValidatorId::try_from(caller.clone()) + .or(Err(Error::::InvalidValidatorId)) + .unwrap(); + let bonder: T::ValidatorId = + validator_id_res.expect("Issue converting account id into validator id"); + let threshold: T::AccountId = account("threshold", 0, SEED); + let new_threshold: T::AccountId = account("new_threshold", 0, SEED); + let x25519_public_key: [u8; 32] = NULL_ARR; - prep_bond_and_validate::(true, caller.clone(), _bonder.clone(), threshold, NULL_ARR); + let endpoint = b"http://localhost:3001".to_vec(); + + let validate_also = true; + prep_bond_and_validate::( + validate_also, + caller.clone(), + _bonder.clone(), + threshold.clone(), + x25519_public_key.clone(), + ); + + // For quote verification this needs to be the _next_ block, and right now we're at block `0`. + let block_number = 1; + let (quote , joining_server_info) = prepare_attestation_for_validate::( + new_threshold.clone(), + x25519_public_key, + endpoint.clone().to_vec(), + block_number, + ); + + let pck_certificate_chain = joining_server_info.pck_certificate_chain; + let signers = vec![validator_id_signers.clone(); s as usize]; Signers::::put(signers.clone()); - - }: _(RawOrigin::Signed(_bonder.clone()), _bonder.clone(), NULL_ARR) + }: _( + RawOrigin::Signed(_bonder.clone()), + new_threshold.clone(), + x25519_public_key.clone(), + pck_certificate_chain, + quote + ) verify { let server_info = ServerInfo { - endpoint: vec![20, 20], - tss_account: _bonder.clone(), + endpoint: b"http://localhost:3001".to_vec(), + tss_account: new_threshold.clone(), x25519_public_key: NULL_ARR, provisioning_certification_key: MOCK_PCK_DERIVED_FROM_NULL_ARRAY.to_vec().try_into().unwrap(), }; @@ -330,6 +383,7 @@ benchmarks! { x25519_public_key.clone() ); + // For quote verification this needs to be the _next_ block, and right now we're at block `0`. let block_number = 1; let (quote, joining_server_info) = prepare_attestation_for_validate::(threshold_account.clone(), x25519_public_key, endpoint.clone(), block_number); diff --git a/pallets/staking/src/lib.rs b/pallets/staking/src/lib.rs index fcd37e88a..8154f3bde 100644 --- a/pallets/staking/src/lib.rs +++ b/pallets/staking/src/lib.rs @@ -378,12 +378,26 @@ pub mod pallet { #[pallet::call] impl Pallet { - /// Allows a validator to change their endpoint so signers can find them when they are coms - /// manager `endpoint`: nodes's endpoint + /// Allows a validator to change the endpoint used by their Threshold Siganture Scheme + /// (TSS) server. + /// + /// # Expects TDX Quote + /// + /// A valid TDX quote must be passed along in order to ensure that the validator is running + /// TDX hardware. In order for the chain to be aware that a quote is expected from the + /// validator `pallet_attestation::request_attestation()` must be called first. + /// + /// The quote format is specified in: + /// https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf #[pallet::call_index(0)] #[pallet::weight(::WeightInfo::change_endpoint())] - pub fn change_endpoint(origin: OriginFor, endpoint: Vec) -> DispatchResult { + pub fn change_endpoint( + origin: OriginFor, + endpoint: Vec, + quote: Vec, + ) -> DispatchResult { let who = ensure_signed(origin)?; + ensure!( endpoint.len() as u32 <= T::MaxEndpointLength::get(), Error::::EndpointTooLong @@ -396,31 +410,60 @@ pub mod pallet { ThresholdServers::::try_mutate(&validator_id, |maybe_server_info| { if let Some(server_info) = maybe_server_info { + // Before we modify the `server_info`, we want to check that the validator is + // still running TDX hardware. + ensure!( + >::verify_quote( + &server_info.tss_account.clone(), + server_info.x25519_public_key, + server_info.provisioning_certification_key.clone(), + quote + ) + .is_ok(), + Error::::FailedAttestationCheck + ); + server_info.endpoint.clone_from(&endpoint); + Ok(()) } else { Err(Error::::NoBond) } })?; + Self::deposit_event(Event::EndpointChanged(who, endpoint)); Ok(()) } - /// Allows a validator to change their threshold key so can confirm done when coms manager - /// `new_account`: nodes's threshold account + /// Allows a validator to change their associated threshold server AccountID and X25519 + /// public key. + /// + /// # Expects TDX Quote + /// + /// A valid TDX quote must be passed along in order to ensure that the validator is running + /// TDX hardware. In order for the chain to be aware that a quote is expected from the + /// validator `pallet_attestation::request_attestation()` must be called first. + /// + /// The **new** TSS AccountID must be used when requesting this quote. + /// + /// The quote format is specified in: + /// https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf #[pallet::call_index(1)] #[pallet::weight(::WeightInfo::change_threshold_accounts(MAX_SIGNERS as u32))] pub fn change_threshold_accounts( origin: OriginFor, tss_account: T::AccountId, x25519_public_key: X25519PublicKey, + pck_certificate_chain: Vec>, + quote: Vec, ) -> DispatchResultWithPostInfo { + let who = ensure_signed(origin)?; + ensure!( !ThresholdToStash::::contains_key(&tss_account), Error::::TssAccountAlreadyExists ); - let who = ensure_signed(origin)?; let stash = Self::get_stash(&who)?; let validator_id = ::ValidatorId::try_from(stash) .or(Err(Error::::InvalidValidatorId))?; @@ -431,20 +474,48 @@ pub mod pallet { Error::::NoChangingThresholdAccountWhenSigner ); - let new_server_info: ServerInfo = - ThresholdServers::::try_mutate(&validator_id, |maybe_server_info| { + let provisioning_certification_key = + T::PckCertChainVerifier::verify_pck_certificate_chain(pck_certificate_chain) + .map_err(|error| { + let e: Error = error.into(); + e + })?; + + let new_server_info: ServerInfo = ThresholdServers::::try_mutate( + &validator_id, + |maybe_server_info| { if let Some(server_info) = maybe_server_info { - server_info.tss_account = tss_account.clone(); + // Before we modify the `server_info`, we want to check that the validator is + // still running TDX hardware. + ensure!( + >::verify_quote( + &tss_account.clone(), + x25519_public_key, + provisioning_certification_key.clone(), + quote + ) + .is_ok(), + Error::::FailedAttestationCheck + ); + + server_info.tss_account = tss_account; server_info.x25519_public_key = x25519_public_key; - ThresholdToStash::::insert(&tss_account, &validator_id); + server_info.provisioning_certification_key = provisioning_certification_key; + + ThresholdToStash::::insert(&server_info.tss_account, &validator_id); + Ok(server_info.clone()) } else { Err(Error::::NoBond) } - })?; + }, + )?; + Self::deposit_event(Event::ThresholdAccountChanged(validator_id, new_server_info)); - Ok(Some(::WeightInfo::change_threshold_accounts(signers.len() as u32)) - .into()) + + let actual_weight = + ::WeightInfo::change_threshold_accounts(signers.len() as u32); + Ok(Some(actual_weight).into()) } /// Wraps's Substrate's `unbond` extrinsic but checks to make sure targeted account is not a signer or next signer @@ -521,9 +592,11 @@ pub mod pallet { /// Wrap's Substrate's `staking_pallet::validate()` extrinsic, but enforces that /// information about a validator's threshold server is provided. /// + /// # Expects TDX Quote + /// /// A valid TDX quote must be passed along in order to ensure that the validator candidate /// is running TDX hardware. In order for the chain to be aware that a quote is expected - /// from the candidate, `pallet_attestation::request_attestation()` must be called first. + /// from the candidate `pallet_attestation::request_attestation()` must be called first. /// /// The quote format is specified in: /// https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf diff --git a/pallets/staking/src/tests.rs b/pallets/staking/src/tests.rs index 0340d4cf9..01eef85a6 100644 --- a/pallets/staking/src/tests.rs +++ b/pallets/staking/src/tests.rs @@ -82,7 +82,7 @@ fn it_takes_in_an_endpoint() { let joining_server_info = JoiningServerInfo { tss_account: 3, x25519_public_key: NULL_ARR, - endpoint: vec![20; 26], + endpoint: [20; (crate::tests::MaxEndpointLength::get() + 1) as usize].to_vec(), pck_certificate_chain: vec![[0u8; 32].to_vec()], }; assert_noop!( @@ -156,6 +156,8 @@ fn it_will_not_allow_validator_to_use_existing_tss_account() { #[test] fn it_changes_endpoint() { new_test_ext().execute_with(|| { + let endpoint = b"http://localhost:3001".to_vec(); + assert_ok!(FrameStaking::bond( RuntimeOrigin::signed(1), 100u64, @@ -165,7 +167,7 @@ fn it_changes_endpoint() { let joining_server_info = JoiningServerInfo { tss_account: 3, x25519_public_key: NULL_ARR, - endpoint: vec![20], + endpoint: endpoint.clone(), pck_certificate_chain: vec![[0u8; 32].to_vec()], }; assert_ok!(Staking::validate( @@ -175,16 +177,52 @@ fn it_changes_endpoint() { VALID_QUOTE.to_vec(), )); - assert_ok!(Staking::change_endpoint(RuntimeOrigin::signed(1), vec![30])); - assert_eq!(Staking::threshold_server(1).unwrap().endpoint, vec![30]); + assert_ok!(Staking::change_endpoint( + RuntimeOrigin::signed(1), + endpoint.clone(), + VALID_QUOTE.to_vec() + )); + assert_eq!(Staking::threshold_server(1).unwrap().endpoint, endpoint); assert_noop!( - Staking::change_endpoint(RuntimeOrigin::signed(3), vec![30]), + Staking::change_endpoint(RuntimeOrigin::signed(3), endpoint, VALID_QUOTE.to_vec()), Error::::NoBond ); }); } +#[test] +fn it_doesnt_change_endpoint_with_invalid_quote() { + new_test_ext().execute_with(|| { + let endpoint = b"http://localhost:3001".to_vec(); + + assert_ok!(FrameStaking::bond( + RuntimeOrigin::signed(1), + 100u64, + pallet_staking::RewardDestination::Account(1), + )); + + let joining_server_info = JoiningServerInfo { + tss_account: 3, + x25519_public_key: NULL_ARR, + endpoint: endpoint.clone(), + pck_certificate_chain: vec![[0u8; 32].to_vec()], + }; + + assert_ok!(Staking::validate( + RuntimeOrigin::signed(1), + pallet_staking::ValidatorPrefs::default(), + joining_server_info.clone(), + VALID_QUOTE.to_vec(), + )); + + assert_noop!( + Staking::change_endpoint(RuntimeOrigin::signed(1), endpoint, INVALID_QUOTE.to_vec()), + Error::::FailedAttestationCheck + ); + }) +} + #[test] fn it_changes_threshold_account() { new_test_ext().execute_with(|| { @@ -194,11 +232,12 @@ fn it_changes_threshold_account() { pallet_staking::RewardDestination::Account(1), )); + let pck_certificate_chain = vec![vec![0u8; 32]]; let joining_server_info = JoiningServerInfo { tss_account: 3, x25519_public_key: NULL_ARR, endpoint: vec![20], - pck_certificate_chain: vec![[0u8; 32].to_vec()], + pck_certificate_chain: pck_certificate_chain.clone(), }; assert_ok!(Staking::validate( RuntimeOrigin::signed(1), @@ -207,12 +246,24 @@ fn it_changes_threshold_account() { VALID_QUOTE.to_vec(), )); - assert_ok!(Staking::change_threshold_accounts(RuntimeOrigin::signed(1), 4, NULL_ARR)); + assert_ok!(Staking::change_threshold_accounts( + RuntimeOrigin::signed(1), + 4, + NULL_ARR, + pck_certificate_chain.clone(), + VALID_QUOTE.to_vec() + )); assert_eq!(Staking::threshold_server(1).unwrap().tss_account, 4); assert_eq!(Staking::threshold_to_stash(4).unwrap(), 1); assert_noop!( - Staking::change_threshold_accounts(RuntimeOrigin::signed(4), 5, NULL_ARR), + Staking::change_threshold_accounts( + RuntimeOrigin::signed(4), + 5, + NULL_ARR, + pck_certificate_chain.clone(), + VALID_QUOTE.to_vec() + ), Error::::NotController ); @@ -227,7 +278,7 @@ fn it_changes_threshold_account() { tss_account: 5, x25519_public_key: NULL_ARR, endpoint: vec![20], - pck_certificate_chain: vec![[0u8; 32].to_vec()], + pck_certificate_chain: pck_certificate_chain.clone(), }; assert_ok!(Staking::validate( RuntimeOrigin::signed(2), @@ -237,18 +288,66 @@ fn it_changes_threshold_account() { )); assert_noop!( - Staking::change_threshold_accounts(RuntimeOrigin::signed(1), 5, NULL_ARR), + Staking::change_threshold_accounts( + RuntimeOrigin::signed(1), + 5, + NULL_ARR, + pck_certificate_chain.clone(), + VALID_QUOTE.to_vec() + ), Error::::TssAccountAlreadyExists ); Signers::::put(vec![1]); assert_noop!( - Staking::change_threshold_accounts(RuntimeOrigin::signed(1), 9, NULL_ARR,), + Staking::change_threshold_accounts( + RuntimeOrigin::signed(1), + 9, + NULL_ARR, + pck_certificate_chain.clone(), + VALID_QUOTE.to_vec() + ), Error::::NoChangingThresholdAccountWhenSigner ); }); } +#[test] +fn it_doesnt_allow_changing_threshold_account_with_invalid_quote() { + new_test_ext().execute_with(|| { + assert_ok!(FrameStaking::bond( + RuntimeOrigin::signed(1), + 100u64, + pallet_staking::RewardDestination::Account(1), + )); + + let pck_certificate_chain = vec![[0u8; 32].to_vec()]; + let joining_server_info = JoiningServerInfo { + tss_account: 3, + x25519_public_key: NULL_ARR, + endpoint: vec![20], + pck_certificate_chain: pck_certificate_chain.clone(), + }; + assert_ok!(Staking::validate( + RuntimeOrigin::signed(1), + pallet_staking::ValidatorPrefs::default(), + joining_server_info.clone(), + VALID_QUOTE.to_vec(), + )); + + assert_noop!( + Staking::change_threshold_accounts( + RuntimeOrigin::signed(1), + 4, + NULL_ARR, + pck_certificate_chain.clone(), + INVALID_QUOTE.to_vec() + ), + Error::::FailedAttestationCheck + ); + }) +} + #[test] fn it_will_not_allow_existing_tss_account_when_changing_threshold_account() { new_test_ext().execute_with(|| { @@ -258,11 +357,12 @@ fn it_will_not_allow_existing_tss_account_when_changing_threshold_account() { pallet_staking::RewardDestination::Account(1), )); + let pck_certificate_chain = vec![[0u8; 32].to_vec()]; let joining_server_info = JoiningServerInfo { tss_account: 3, x25519_public_key: NULL_ARR, endpoint: vec![20], - pck_certificate_chain: vec![[0u8; 32].to_vec()], + pck_certificate_chain: pck_certificate_chain.clone(), }; assert_ok!(Staking::validate( RuntimeOrigin::signed(1), @@ -282,7 +382,7 @@ fn it_will_not_allow_existing_tss_account_when_changing_threshold_account() { tss_account: 5, x25519_public_key: NULL_ARR, endpoint: vec![20], - pck_certificate_chain: vec![[0u8; 32].to_vec()], + pck_certificate_chain: pck_certificate_chain.clone(), }; assert_ok!(Staking::validate( RuntimeOrigin::signed(2), @@ -292,7 +392,13 @@ fn it_will_not_allow_existing_tss_account_when_changing_threshold_account() { )); assert_noop!( - Staking::change_threshold_accounts(RuntimeOrigin::signed(1), 5, NULL_ARR), + Staking::change_threshold_accounts( + RuntimeOrigin::signed(1), + 5, + NULL_ARR, + pck_certificate_chain.clone(), + VALID_QUOTE.to_vec() + ), Error::::TssAccountAlreadyExists ); }); From def835980d5555534245c3472d427904277c52a2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Nov 2024 08:14:24 +0000 Subject: [PATCH 04/24] Bump tokio from 1.41.0 to 1.41.1 in the patch-dependencies group (#1155) Bumps the patch-dependencies group with 1 update: [tokio](https://github.com/tokio-rs/tokio). Updates `tokio` from 1.41.0 to 1.41.1 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.41.0...tokio-1.41.1) --- updated-dependencies: - dependency-name: tokio dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 46fcf7257..91651fca9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14415,9 +14415,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.0" +version = "1.41.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" +checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" dependencies = [ "backtrace", "bytes", From 101108ac7cbd46a6947b3e5253f0f342c7c899ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Nov 2024 16:46:42 +0700 Subject: [PATCH 05/24] Bump tempfile from 3.13.0 to 3.14.0 (#1156) Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.13.0 to 3.14.0. - [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stebalien/tempfile/compare/v3.13.0...v3.14.0) --- updated-dependencies: - dependency-name: tempfile dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 40 ++++++++++++++++++++-------------------- node/cli/Cargo.toml | 2 +- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 91651fca9..8c6af2418 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -511,7 +511,7 @@ dependencies = [ "futures-lite", "parking", "polling", - "rustix 0.38.37", + "rustix 0.38.39", "slab", "tracing", "windows-sys 0.52.0", @@ -563,7 +563,7 @@ dependencies = [ "cfg-if", "event-listener 5.3.0", "futures-lite", - "rustix 0.38.37", + "rustix 0.38.39", "tracing", "windows-sys 0.52.0", ] @@ -580,7 +580,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 0.38.37", + "rustix 0.38.39", "signal-hook-registry", "slab", "windows-sys 0.48.0", @@ -3704,7 +3704,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "29f9df8a11882c4e3335eb2d18a0137c505d9ca927470b0cac9c6f0ae07d28f7" dependencies = [ - "rustix 0.38.37", + "rustix 0.38.39", "windows-sys 0.48.0", ] @@ -5184,9 +5184,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.162" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" [[package]] name = "libloading" @@ -5932,7 +5932,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.38.37", + "rustix 0.38.39", ] [[package]] @@ -8148,7 +8148,7 @@ dependencies = [ "concurrent-queue", "hermit-abi", "pin-project-lite 0.2.14", - "rustix 0.38.37", + "rustix 0.38.39", "tracing", "windows-sys 0.52.0", ] @@ -9122,9 +9122,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.37" +version = "0.38.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" dependencies = [ "bitflags 2.5.0", "errno", @@ -14245,14 +14245,14 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" dependencies = [ "cfg-if", "fastrand", "once_cell", - "rustix 0.38.37", + "rustix 0.38.39", "windows-sys 0.59.0", ] @@ -14271,7 +14271,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef" dependencies = [ - "rustix 0.38.37", + "rustix 0.38.39", "windows-sys 0.59.0", ] @@ -15641,7 +15641,7 @@ dependencies = [ "directories-next", "file-per-thread-logger 0.2.0", "log", - "rustix 0.38.37", + "rustix 0.38.39", "serde", "sha2 0.10.8", "toml 0.5.11", @@ -15796,7 +15796,7 @@ checksum = "fc8c8410c03a79073ea06806ccde3da4854c646bd646b3b2707b99b3746c3f70" dependencies = [ "cc", "cfg-if", - "rustix 0.38.37", + "rustix 0.38.39", "wasmtime-asm-macros 12.0.2", "wasmtime-versioned-export-macros", "windows-sys 0.48.0", @@ -15842,7 +15842,7 @@ dependencies = [ "log", "object 0.31.1", "rustc-demangle", - "rustix 0.38.37", + "rustix 0.38.39", "serde", "target-lexicon", "wasmtime-environ 12.0.2", @@ -15871,7 +15871,7 @@ checksum = "aef27ea6c34ef888030d15560037fe7ef27a5609fbbba8e1e3e41dc4245f5bb2" dependencies = [ "object 0.31.1", "once_cell", - "rustix 0.38.37", + "rustix 0.38.39", "wasmtime-versioned-export-macros", ] @@ -15939,7 +15939,7 @@ dependencies = [ "memoffset 0.9.1", "paste", "rand", - "rustix 0.38.37", + "rustix 0.38.39", "sptr", "wasm-encoder 0.31.1", "wasmtime-asm-macros 12.0.2", @@ -16074,7 +16074,7 @@ dependencies = [ "either", "home", "once_cell", - "rustix 0.38.37", + "rustix 0.38.39", ] [[package]] diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index 885e2629d..511277768 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -106,7 +106,7 @@ substrate-build-script-utils={ version="11.0.0" } try-runtime-cli ={ version="0.42.0" } [dev-dependencies] -tempfile ="3.13.0" +tempfile ="3.14.0" sp-tracing={ version="16.0.0" } [features] From 9bec5111322aa7209db3f4a7153834aee3335432 Mon Sep 17 00:00:00 2001 From: Hernando Castano Date: Mon, 11 Nov 2024 15:00:19 +0700 Subject: [PATCH 06/24] Cherry pick release branch changes into `master` (#1157) * Release `v0.3.0` against new branch (#1133) * Bump version from to `v0.3.0` * Update `CHANGELOG` This updates the info for the full release as well as includes a missed breaking change. * Use released version of `tdx-quote` * Get rid of warning when building tests * Update `Unreleased` section link * TaploFmt --- CHANGELOG.md | 11 +++--- Cargo.lock | 38 ++++++++++---------- crates/client/Cargo.toml | 6 ++-- crates/kvdb/Cargo.toml | 4 +-- crates/protocol/Cargo.toml | 4 +-- crates/shared/Cargo.toml | 2 +- crates/test-cli/Cargo.toml | 6 ++-- crates/testing-utils/Cargo.toml | 38 ++++++++++---------- crates/threshold-signature-server/Cargo.toml | 12 +++---- node/cli/Cargo.toml | 10 +++--- pallets/attestation/Cargo.toml | 8 ++--- pallets/oracle/Cargo.toml | 2 +- pallets/parameters/Cargo.toml | 4 +-- pallets/programs/Cargo.toml | 2 +- pallets/propagation/Cargo.toml | 14 ++++---- pallets/registry/Cargo.toml | 10 +++--- pallets/slashing/Cargo.toml | 2 +- pallets/staking/Cargo.toml | 6 ++-- pallets/transaction-pause/Cargo.toml | 4 +-- runtime/Cargo.toml | 22 ++++++------ scripts/create-test-keyshares/Cargo.toml | 10 +++--- 21 files changed, 107 insertions(+), 108 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4665f8a79..f9318243b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). At the moment this project **does not** adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased](https://github.com/entropyxyz/entropy-core/compare/release/v0.3.0-rc.1...master) +## [Unreleased](https://github.com/entropyxyz/entropy-core/compare/release/v0.3.0...master) ### Breaking Changes - In [#1104](https://github.com/entropyxyz/entropy-core/pull/1104) the `/validator/rotate_network_key` endpoint was renamed to `rotate_network_key` @@ -32,14 +32,14 @@ At the moment this project **does not** adhere to - Add quote guards to `ServerInfo` related extrinsics ([#1123](https://github.com/entropyxyz/entropy-core/pull/1123/)) - Remove declare synced ([#1134](https://github.com/entropyxyz/entropy-core/pull/1134/)) -## [0.3.0-rc.1](https://github.com/entropyxyz/entropy-core/compare/release/v0.2.0...release/v0.3.0-rc.1) - 2024-10-04 +## [0.3.0](https://github.com/entropyxyz/entropy-core/compare/release/v0.2.0...release/v0.3.0) - 2024-10-22 ### Breaking Changes - In [#799](https://github.com/entropyxyz/entropy-core/pull/799) the concept of subgroups was removed in favour of a single pool of signers. - In [#801](https://github.com/entropyxyz/entropy-core/pull/801) permissioned access mode was removed. -- In [#879](https://github.com/entropyxyz/entropy-core/pull/879) the network migrated from t-of-N +- In [#879](https://github.com/entropyxyz/entropy-core/pull/879) the network migrated from N-of-N cryptography to `t-of-N` cryptography. - In [#938](https://github.com/entropyxyz/entropy-core/pull/938), the chainspec got a couple of new fields, `pallet_staking_extension::initial_signers`, `pallet_parameters::total_signers`, and @@ -60,7 +60,10 @@ At the moment this project **does not** adhere to As such, `UserSignatureRequest` no longer requires the `validators_info` field since the the relayer adds that in after. The response received from the validator is now a `Vec` from the signers. -- In ([#1063](https://github.com/entropyxyz/entropy-core/pull/1063)) the +- In [#1051](https://github.com/entropyxyz/entropy-core/pull/1051) an extra field representing a provisioning certification key (PCK) + was added to the Staking Extension's `threshold_server` genesis configuration in the network + chainspecs. +- In [#1063](https://github.com/entropyxyz/entropy-core/pull/1063) the `pallet_staking_extension::validate()` extrinsic was changed so that in order to populate certain data structures related to a candidates state (namely `ThresholdToStash` and `ThresholdServer`) an attestation from the Attestation pallet must have been received. Success of the `validate()` diff --git a/Cargo.lock b/Cargo.lock index 8c6af2418..e0c3faa14 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2434,7 +2434,7 @@ dependencies = [ [[package]] name = "entropy" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "clap", "entropy-runtime", @@ -2510,7 +2510,7 @@ dependencies = [ [[package]] name = "entropy-client" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "anyhow", "base64 0.22.1", @@ -2542,7 +2542,7 @@ dependencies = [ [[package]] name = "entropy-create-test-keyshares" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-kvdb", "entropy-shared", @@ -2555,7 +2555,7 @@ dependencies = [ [[package]] name = "entropy-kvdb" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "bincode 1.3.3", "chacha20poly1305 0.9.1", @@ -2600,7 +2600,7 @@ dependencies = [ [[package]] name = "entropy-protocol" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "anyhow", "async-trait", @@ -2642,7 +2642,7 @@ dependencies = [ [[package]] name = "entropy-runtime" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-shared", "frame-benchmarking", @@ -2727,7 +2727,7 @@ dependencies = [ [[package]] name = "entropy-shared" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "blake2 0.10.6", "hex-literal", @@ -2746,7 +2746,7 @@ dependencies = [ [[package]] name = "entropy-test-cli" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "anyhow", "bincode 1.3.3", @@ -2764,7 +2764,7 @@ dependencies = [ [[package]] name = "entropy-testing-utils" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "axum", "entropy-kvdb", @@ -2790,7 +2790,7 @@ dependencies = [ [[package]] name = "entropy-tss" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "anyhow", "axum", @@ -6739,7 +6739,7 @@ dependencies = [ [[package]] name = "pallet-attestation" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-shared", "frame-benchmarking", @@ -7182,7 +7182,7 @@ dependencies = [ [[package]] name = "pallet-oracle" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "frame-benchmarking", "frame-support 29.0.2", @@ -7197,7 +7197,7 @@ dependencies = [ [[package]] name = "pallet-parameters" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-shared", "frame-benchmarking", @@ -7233,7 +7233,7 @@ dependencies = [ [[package]] name = "pallet-programs" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "frame-benchmarking", "frame-support 29.0.2", @@ -7251,7 +7251,7 @@ dependencies = [ [[package]] name = "pallet-propagation" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-shared", "frame-benchmarking", @@ -7318,7 +7318,7 @@ dependencies = [ [[package]] name = "pallet-registry" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "bip32", "entropy-shared", @@ -7411,7 +7411,7 @@ dependencies = [ [[package]] name = "pallet-slashing" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7461,7 +7461,7 @@ dependencies = [ [[package]] name = "pallet-staking-extension" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "entropy-shared", "frame-benchmarking", @@ -7567,7 +7567,7 @@ dependencies = [ [[package]] name = "pallet-transaction-pause" -version = "0.3.0-rc.1" +version = "0.3.0" dependencies = [ "frame-benchmarking", "frame-support 29.0.2", diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index ed0ac71ac..3bd8eff51 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="entropy-client" -version ="0.3.0-rc.1" +version ="0.3.0" edition ="2021" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' @@ -11,7 +11,7 @@ repository ='https://github.com/entropyxyz/entropy-core' [dependencies] sha3 ="0.10.8" serde ={ version="1.0", default-features=false, features=["derive"] } -entropy-shared={ version="0.3.0-rc.1", path="../shared", default-features=false } +entropy-shared={ version="0.3.0", path="../shared", default-features=false } subxt ={ version="0.35.3", default-features=false, features=["jsonrpsee"] } num ="0.4.3" thiserror ="2.0.0" @@ -25,7 +25,7 @@ blake2 ={ version="0.10.4", optional=true } rand_core ={ version="0.6.4", optional=true } serde_json ={ version="1.0", optional=true } x25519-dalek ={ version="2.0.1", features=["static_secrets"], optional=true } -entropy-protocol={ version="0.3.0-rc.1", path="../protocol", optional=true, default-features=false } +entropy-protocol={ version="0.3.0", path="../protocol", optional=true, default-features=false } reqwest ={ version="0.12.9", features=["json", "stream"], optional=true } base64 ={ version="0.22.0", optional=true } synedrion ={ version="0.2.0-beta.0", optional=true } diff --git a/crates/kvdb/Cargo.toml b/crates/kvdb/Cargo.toml index b10b8705a..b3782ccb9 100644 --- a/crates/kvdb/Cargo.toml +++ b/crates/kvdb/Cargo.toml @@ -1,7 +1,7 @@ [package] name ="entropy-kvdb" description="Encrypted key-value database for the Entropy Theshold Signing Server" -version ="0.3.0-rc.1" +version ="0.3.0" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -32,7 +32,7 @@ tracing={ version="0.1", default-features=false } # Misc sled ="0.34.7" bincode ="1.3.3" -entropy-protocol={ version="0.3.0-rc.1", path="../protocol" } +entropy-protocol={ version="0.3.0", path="../protocol" } [dev-dependencies] serial_test="3.1.1" diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index 80981fb70..22e801c7d 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='entropy-protocol' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] description="Entropy Signing and DKG protocol execution and transport logic" homepage ='https://entropy.xyz/' @@ -10,7 +10,7 @@ edition ='2021' [dependencies] async-trait ="0.1.83" -entropy-shared ={ version="0.3.0-rc.1", path="../shared", default-features=false } +entropy-shared ={ version="0.3.0", path="../shared", default-features=false } synedrion ={ version="0.2.0-beta.0" } serde ={ version="1.0", features=["derive"], default-features=false } subxt ={ version="0.35.3", default-features=false } diff --git a/crates/shared/Cargo.toml b/crates/shared/Cargo.toml index 2c5aa8698..d90ffa2a7 100644 --- a/crates/shared/Cargo.toml +++ b/crates/shared/Cargo.toml @@ -1,7 +1,7 @@ [package] name ="entropy-shared" description="Shared types used by the Entropy chain node and Entropy Threshold Signing Server" -version ="0.3.0-rc.1" +version ="0.3.0" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index 8f545c199..c78d3b3fc 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -1,7 +1,7 @@ [package] name ="entropy-test-cli" description="Simple command line interface client for testing Entropy" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -9,7 +9,7 @@ repository ='https://github.com/entropyxyz/entropy-core' edition ='2021' [dependencies] -entropy-client={ version="0.3.0-rc.1", path="../client" } +entropy-client={ version="0.3.0", path="../client" } clap ={ version="4.5.20", features=["derive"] } colored ="2.0.4" subxt ="0.35.3" @@ -20,4 +20,4 @@ hex ="0.4.3" bincode ="1.3.3" x25519-dalek ="2.0.1" sp-runtime ={ version="32.0.0", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../shared" } +entropy-shared={ version="0.3.0", path="../shared" } diff --git a/crates/testing-utils/Cargo.toml b/crates/testing-utils/Cargo.toml index 68b37361d..4f2fb3173 100644 --- a/crates/testing-utils/Cargo.toml +++ b/crates/testing-utils/Cargo.toml @@ -1,7 +1,7 @@ [package] name ="entropy-testing-utils" description="Utilities for testing the Entropy Threshold Signature Server" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -9,26 +9,24 @@ repository ='https://github.com/entropyxyz/entropy-core' edition ='2021' [dependencies] -subxt="0.35.3" -sp-keyring="34.0.0" -project-root="0.2.2" -sp-core={ version="31.0.0", default-features=false } +subxt ="0.35.3" +sp-keyring ="34.0.0" +project-root ="0.2.2" +sp-core ={ version="31.0.0", default-features=false } parity-scale-codec="3.6.12" -lazy_static="1.5.0" -hex-literal="0.4.1" -tokio={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util", "process"] } -axum={ version="0.7.7" } -entropy-shared={ version="0.3.0-rc.1", path="../shared" } -entropy-kvdb={ version="0.3.0-rc.1", path="../kvdb", default-features=false } -entropy-tss={ version="0.3.0-rc.1", path="../threshold-signature-server", features=[ - "test_helpers", -] } -entropy-protocol={ version="0.3.0-rc.1", path="../protocol" } -synedrion={ version="0.2.0-beta.0" } -hex="0.4.3" -rand_core="0.6.4" -rand="0.8.5" -tdx-quote={ version="0.0.1", features=["mock"] } +lazy_static ="1.5.0" +hex-literal ="0.4.1" +tokio ={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util", "process"] } +axum ={ version="0.7.7" } +entropy-shared ={ version="0.3.0", path="../shared" } +entropy-kvdb ={ version="0.3.0", path="../kvdb", default-features=false } +entropy-tss ={ version="0.3.0", path="../threshold-signature-server", features=["test_helpers"] } +entropy-protocol ={ version="0.3.0", path="../protocol" } +synedrion ={ version="0.2.0-beta.0" } +hex ="0.4.3" +rand_core ="0.6.4" +rand ="0.8.5" +tdx-quote ={ version="0.0.1", features=["mock"] } # Logging tracing ="0.1.37" diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index a6c94dfa1..e9ceaab0b 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="entropy-tss" -version ="0.3.0-rc.1" +version ="0.3.0" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' description='Entropy threshold signature scheme (TSS) server' @@ -40,12 +40,10 @@ parity-scale-codec="3.6.12" sp-core ={ version="31.0.0", default-features=false } # Entropy -entropy-shared={ version="0.3.0-rc.1", path="../shared" } -entropy-kvdb={ version="0.3.0-rc.1", path="../kvdb", default-features=false } -entropy-protocol={ version="0.3.0-rc.1", path="../protocol", features=["server"] } -entropy-client={ version="0.3.0-rc.1", path="../client", default-features=false, features=[ - "native", -] } +entropy-shared ={ version="0.3.0", path="../shared" } +entropy-kvdb ={ version="0.3.0", path="../kvdb", default-features=false } +entropy-protocol={ version="0.3.0", path="../protocol", features=["server"] } +entropy-client ={ version="0.3.0", path="../client", default-features=false, features=["native"] } # Programs entropy-programs-runtime="0.10.0" diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index 511277768..d75ddd884 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='entropy' -version ='0.3.0-rc.1' +version ='0.3.0' description="Entropy substrate node" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' @@ -90,12 +90,12 @@ pallet-transaction-payment ={ version="29.0.0" } pallet-transaction-payment-rpc={ version="31.0.0" } # Entropy Dependencies -entropy-runtime={ version="0.3.0-rc.1", path="../../runtime" } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", default-features=false, features=[ +entropy-runtime={ version="0.3.0", path="../../runtime" } +entropy-shared={ version="0.3.0", path="../../crates/shared", default-features=false, features=[ "wasm-no-std", ] } -pallet-registry={ version="0.3.0-rc.1", path="../../pallets/registry" } -pallet-staking-extension={ version="0.3.0-rc.1", path="../../pallets/staking" } +pallet-registry={ version="0.3.0", path="../../pallets/registry" } +pallet-staking-extension={ version="0.3.0", path="../../pallets/staking" } project-root="0.2.2" [build-dependencies] diff --git a/pallets/attestation/Cargo.toml b/pallets/attestation/Cargo.toml index a5e282d9d..e9b7356bd 100644 --- a/pallets/attestation/Cargo.toml +++ b/pallets/attestation/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="pallet-attestation" -version ="0.3.0-rc.1" +version ="0.3.0" authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -23,11 +23,11 @@ sp-std ={ version="14.0.0", default-features=false } pallet-session ={ version="29.0.0", default-features=false, optional=true } rand_chacha ={ version="0.3", default-features=false } -pallet-parameters={ version="0.3.0-rc.1", path="../parameters", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", features=[ +pallet-parameters={ version="0.3.0", path="../parameters", default-features=false } +entropy-shared={ version="0.3.0", path="../../crates/shared", features=[ "wasm-no-std", ], default-features=false } -pallet-staking-extension={ version="0.3.0-rc.1", path="../staking", default-features=false } +pallet-staking-extension={ version="0.3.0", path="../staking", default-features=false } tdx-quote="0.0.1" [dev-dependencies] diff --git a/pallets/oracle/Cargo.toml b/pallets/oracle/Cargo.toml index 81f3612dd..0c3e43c2a 100644 --- a/pallets/oracle/Cargo.toml +++ b/pallets/oracle/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="pallet-oracle" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' diff --git a/pallets/parameters/Cargo.toml b/pallets/parameters/Cargo.toml index ad3932b32..cb20c9ff2 100644 --- a/pallets/parameters/Cargo.toml +++ b/pallets/parameters/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="pallet-parameters" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -19,7 +19,7 @@ sp-runtime ={ version="32.0.0", default-features=false } sp-std ={ version="14.0.0", default-features=false } pallet-session ={ version="29.0.0", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", features=[ +entropy-shared={ version="0.3.0", path="../../crates/shared", features=[ "wasm-no-std", ], default-features=false } diff --git a/pallets/programs/Cargo.toml b/pallets/programs/Cargo.toml index d4d3c3002..0091d4aee 100644 --- a/pallets/programs/Cargo.toml +++ b/pallets/programs/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='pallet-programs' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' diff --git a/pallets/propagation/Cargo.toml b/pallets/propagation/Cargo.toml index b21818add..c6734fd05 100644 --- a/pallets/propagation/Cargo.toml +++ b/pallets/propagation/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='pallet-propagation' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -26,13 +26,13 @@ sp-io ={ version="31.0.0", default-features=false } sp-runtime ={ version="32.0.0", default-features=false } sp-staking ={ version="27.0.0", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", default-features=false, features=[ +entropy-shared={ version="0.3.0", path="../../crates/shared", default-features=false, features=[ "wasm-no-std", ] } -pallet-registry={ version="0.3.0-rc.1", path="../registry", default-features=false } -pallet-programs={ version="0.3.0-rc.1", path="../programs", default-features=false } -pallet-staking-extension={ version="0.3.0-rc.1", path="../staking", default-features=false } -pallet-attestation={ version="0.3.0-rc.1", path="../attestation", default-features=false } +pallet-registry={ version="0.3.0", path="../registry", default-features=false } +pallet-programs={ version="0.3.0", path="../programs", default-features=false } +pallet-staking-extension={ version="0.3.0", path="../staking", default-features=false } +pallet-attestation={ version="0.3.0", path="../attestation", default-features=false } [dev-dependencies] parking_lot="0.12.3" @@ -47,7 +47,7 @@ pallet-staking-reward-curve ={ version="11.0.0" } pallet-timestamp ={ version="28.0.0", default-features=false } sp-keystore ={ version="0.35.0" } sp-npos-elections ={ version="27.0.0", default-features=false } -pallet-parameters ={ version="0.3.0-rc.1", path="../parameters", default-features=false } +pallet-parameters ={ version="0.3.0", path="../parameters", default-features=false } [features] default=['std'] diff --git a/pallets/registry/Cargo.toml b/pallets/registry/Cargo.toml index a8bbc0922..e172ac17d 100644 --- a/pallets/registry/Cargo.toml +++ b/pallets/registry/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='pallet-registry' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -29,12 +29,12 @@ sp-core ={ version="29.0.0", default-features=false } sp-runtime ={ version="32.0.0", default-features=false } sp-std ={ version="14.0.0", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", features=[ +entropy-shared={ version="0.3.0", path="../../crates/shared", features=[ "wasm-no-std", ], default-features=false } -pallet-programs={ version="0.3.0-rc.1", path="../programs", default-features=false } -pallet-staking-extension={ version="0.3.0-rc.1", path="../staking", default-features=false } -pallet-parameters={ version="0.3.0-rc.1", path="../parameters", default-features=false } +pallet-programs={ version="0.3.0", path="../programs", default-features=false } +pallet-staking-extension={ version="0.3.0", path="../staking", default-features=false } +pallet-parameters={ version="0.3.0", path="../parameters", default-features=false } [dev-dependencies] frame-election-provider-support={ version="29.0.0", default-features=false } diff --git a/pallets/slashing/Cargo.toml b/pallets/slashing/Cargo.toml index 7e3c90df8..d360f0925 100644 --- a/pallets/slashing/Cargo.toml +++ b/pallets/slashing/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='pallet-slashing' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' diff --git a/pallets/staking/Cargo.toml b/pallets/staking/Cargo.toml index 4aa83ec0e..ebbca89b1 100644 --- a/pallets/staking/Cargo.toml +++ b/pallets/staking/Cargo.toml @@ -1,6 +1,6 @@ [package] name ='pallet-staking-extension' -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -33,8 +33,8 @@ spki ="0.7.3" p256 ={ version="0.13.2", default-features=false, features=["ecdsa"] } rand ={ version="0.8.5", default-features=false, features=["alloc"] } -pallet-parameters={ version="0.3.0-rc.1", path="../parameters", default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../../crates/shared", features=[ +pallet-parameters={ version="0.3.0", path="../parameters", default-features=false } +entropy-shared={ version="0.3.0", path="../../crates/shared", features=[ "wasm-no-std", ], default-features=false } diff --git a/pallets/transaction-pause/Cargo.toml b/pallets/transaction-pause/Cargo.toml index c9a349a98..247605972 100644 --- a/pallets/transaction-pause/Cargo.toml +++ b/pallets/transaction-pause/Cargo.toml @@ -1,6 +1,6 @@ [package] name ="pallet-transaction-pause" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -25,7 +25,7 @@ pallet-balances={ version="29.0.0" } sp-core ={ version="29.0.0" } sp-io ={ version="31.0.0" } -pallet-programs={ version="0.3.0-rc.1", default-features=false, path="../programs" } +pallet-programs={ version="0.3.0", default-features=false, path="../programs" } [features] default=["std"] diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index fd90c6247..3cdcdb26b 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -1,7 +1,7 @@ [package] name ='entropy-runtime' description="The substrate runtime for the Entropy chain node" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -95,17 +95,17 @@ pallet-utility ={ version="29.0.0", default-featur pallet-vesting ={ version="29.0.0", default-features=false } # Entropy Pallets -pallet-programs ={ version='0.3.0-rc.1', path='../pallets/programs', default-features=false } -pallet-propagation ={ version='0.3.0-rc.1', path='../pallets/propagation', default-features=false } -pallet-registry ={ version='0.3.0-rc.1', path='../pallets/registry', default-features=false } -pallet-slashing ={ version='0.3.0-rc.1', path='../pallets/slashing', default-features=false } -pallet-staking-extension={ version='0.3.0-rc.1', path='../pallets/staking', default-features=false } -pallet-transaction-pause={ version='0.3.0-rc.1', path='../pallets/transaction-pause', default-features=false } -pallet-parameters ={ version='0.3.0-rc.1', path='../pallets/parameters', default-features=false } -pallet-attestation ={ version='0.3.0-rc.1', path='../pallets/attestation', default-features=false } -pallet-oracle ={ version='0.3.0-rc.1', path='../pallets/oracle', default-features=false } +pallet-programs ={ version='0.3.0', path='../pallets/programs', default-features=false } +pallet-propagation ={ version='0.3.0', path='../pallets/propagation', default-features=false } +pallet-registry ={ version='0.3.0', path='../pallets/registry', default-features=false } +pallet-slashing ={ version='0.3.0', path='../pallets/slashing', default-features=false } +pallet-staking-extension={ version='0.3.0', path='../pallets/staking', default-features=false } +pallet-transaction-pause={ version='0.3.0', path='../pallets/transaction-pause', default-features=false } +pallet-parameters ={ version='0.3.0', path='../pallets/parameters', default-features=false } +pallet-attestation ={ version='0.3.0', path='../pallets/attestation', default-features=false } +pallet-oracle ={ version='0.3.0', path='../pallets/oracle', default-features=false } -entropy-shared={ version="0.3.0-rc.1", path="../crates/shared", default-features=false, features=[ +entropy-shared={ version="0.3.0", path="../crates/shared", default-features=false, features=[ "wasm-no-std", ] } diff --git a/scripts/create-test-keyshares/Cargo.toml b/scripts/create-test-keyshares/Cargo.toml index 7b08991ea..4cfbdb541 100644 --- a/scripts/create-test-keyshares/Cargo.toml +++ b/scripts/create-test-keyshares/Cargo.toml @@ -1,7 +1,7 @@ [package] name ="entropy-create-test-keyshares" description="Makes a set of keyshares for testing entropy-tss" -version ='0.3.0-rc.1' +version ='0.3.0' authors =['Entropy Cryptography '] homepage ='https://entropy.xyz/' license ='AGPL-3.0-or-later' @@ -10,14 +10,14 @@ edition ='2021' publish =false [dependencies] -entropy-testing-utils={ version="0.3.0-rc.1", path="../../crates/testing-utils" } +entropy-testing-utils={ version="0.3.0", path="../../crates/testing-utils" } tokio ={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util", "process"] } -entropy-shared ={ version="0.3.0-rc.1", path="../../crates/shared" } -entropy-kvdb ={ version="0.3.0-rc.1", path="../../crates/kvdb", default-features=false } +entropy-shared ={ version="0.3.0", path="../../crates/shared" } +entropy-kvdb ={ version="0.3.0", path="../../crates/kvdb", default-features=false } sp-core ="31.0.0" # Unreleased version of Synedrion with support for child key derivations. synedrion={ version="0.2.0-beta.0" } -entropy-tss={ version="0.3.0-rc.1", path="../../crates/threshold-signature-server", features=[ +entropy-tss={ version="0.3.0", path="../../crates/threshold-signature-server", features=[ "test_helpers", ] } From 03ceb8b772ae2477b5469f151a069ea0c8196302 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Nov 2024 08:21:04 +0000 Subject: [PATCH 07/24] Bump thiserror from 2.0.0 to 2.0.3 in the patch-dependencies group (#1158) Bumps the patch-dependencies group with 1 update: [thiserror](https://github.com/dtolnay/thiserror). Updates `thiserror` from 2.0.0 to 2.0.3 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/2.0.0...2.0.3) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 18 +++++++++--------- crates/client/Cargo.toml | 2 +- crates/kvdb/Cargo.toml | 2 +- crates/protocol/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e0c3faa14..da2d73505 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2534,7 +2534,7 @@ dependencies = [ "subxt", "synedrion", "tdx-quote", - "thiserror 2.0.0", + "thiserror 2.0.3", "tokio", "tracing", "x25519-dalek 2.0.1", @@ -2569,7 +2569,7 @@ dependencies = [ "sled", "sp-core 31.0.0", "synedrion", - "thiserror 2.0.0", + "thiserror 2.0.3", "tokio", "tracing", "zeroize", @@ -2629,7 +2629,7 @@ dependencies = [ "sp-keyring 34.0.0", "subxt", "synedrion", - "thiserror 2.0.0", + "thiserror 2.0.3", "tokio", "tokio-tungstenite", "tracing", @@ -2842,7 +2842,7 @@ dependencies = [ "subxt-signer", "synedrion", "tdx-quote", - "thiserror 2.0.0", + "thiserror 2.0.3", "tokio", "tokio-tungstenite", "tower-http 0.6.1", @@ -14292,11 +14292,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.0" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15291287e9bff1bc6f9ff3409ed9af665bec7a5fc8ac079ea96be07bca0e2668" +checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa" dependencies = [ - "thiserror-impl 2.0.0", + "thiserror-impl 2.0.3", ] [[package]] @@ -14312,9 +14312,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.0" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22efd00f33f93fa62848a7cab956c3d38c8d43095efda1decfc2b3a5dc0b8972" +checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" dependencies = [ "proc-macro2", "quote", diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 3bd8eff51..0597340e7 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -14,7 +14,7 @@ serde ={ version="1.0", default-features=false, features=["derive"] } entropy-shared={ version="0.3.0", path="../shared", default-features=false } subxt ={ version="0.35.3", default-features=false, features=["jsonrpsee"] } num ="0.4.3" -thiserror ="2.0.0" +thiserror ="2.0.3" futures ="0.3" sp-core ={ version="31.0.0", default-features=false, features=["full_crypto", "serde"] } tracing ="0.1.37" diff --git a/crates/kvdb/Cargo.toml b/crates/kvdb/Cargo.toml index b3782ccb9..1341e24d8 100644 --- a/crates/kvdb/Cargo.toml +++ b/crates/kvdb/Cargo.toml @@ -12,7 +12,7 @@ edition ='2021' # Common rand ={ version="0.8", default-features=false } serde ={ version="1.0", features=["derive"] } -thiserror="2.0.0" +thiserror="2.0.3" hex ="0.4.3" # Substrate diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index 22e801c7d..e4c081444 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -20,7 +20,7 @@ x25519-dalek ={ version="2.0.1", features=["static_secrets"] } futures ="0.3" hex ="0.4.3" blake2 ="0.10.4" -thiserror ="2.0.0" +thiserror ="2.0.3" snow ="0.9.6" getrandom ={ version="0.2", features=["js"] } rand_core ={ version="0.6.4", features=["getrandom"] } diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index e9ceaab0b..991af4164 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -12,7 +12,7 @@ edition ='2021' # Common serde ={ version="1.0", default-features=false, features=["derive"] } serde_json ="1.0" -thiserror ="2.0.0" +thiserror ="2.0.3" anyhow ="1.0.93" blake2 ="0.10.4" x25519-dalek ={ version="2.0.1", features=["static_secrets"] } From 740a262a30cae17ee6d6279449d1f2a670657f4c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 08:20:53 +0100 Subject: [PATCH 08/24] Bump serial_test from 3.1.1 to 3.2.0 (#1159) Bumps [serial_test](https://github.com/palfrey/serial_test) from 3.1.1 to 3.2.0. - [Release notes](https://github.com/palfrey/serial_test/releases) - [Commits](https://github.com/palfrey/serial_test/compare/v3.1.1...v3.2.0) --- updated-dependencies: - dependency-name: serial_test dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- crates/client/Cargo.toml | 2 +- crates/kvdb/Cargo.toml | 2 +- crates/protocol/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index da2d73505..6f2612c37 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11667,9 +11667,9 @@ dependencies = [ [[package]] name = "serial_test" -version = "3.1.1" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b4b487fe2acf240a021cf57c6b2b4903b1e78ca0ecd862a71b71d2a51fed77d" +checksum = "1b258109f244e1d6891bf1053a55d63a5cd4f8f4c30cf9a1280989f80e7a1fa9" dependencies = [ "futures", "log", @@ -11681,9 +11681,9 @@ dependencies = [ [[package]] name = "serial_test_derive" -version = "3.1.1" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" +checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 0597340e7..1b1ac87a0 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -37,7 +37,7 @@ js-sys={ version="0.3.72", optional=true } tokio ={ version="1.41", features=["time"] } [dev-dependencies] -serial_test ="3.1.1" +serial_test ="3.2.0" sp-keyring ="34.0.0" entropy-testing-utils={ path="../testing-utils" } tdx-quote ={ version="0.0.1", features=["mock"] } diff --git a/crates/kvdb/Cargo.toml b/crates/kvdb/Cargo.toml index 1341e24d8..a379eec23 100644 --- a/crates/kvdb/Cargo.toml +++ b/crates/kvdb/Cargo.toml @@ -35,4 +35,4 @@ bincode ="1.3.3" entropy-protocol={ version="0.3.0", path="../protocol" } [dev-dependencies] -serial_test="3.1.1" +serial_test="3.2.0" diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index e4c081444..d08eeab54 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -47,7 +47,7 @@ base64 ={ version="0.22.1", optional=true } schnorrkel ={ version="0.11.4", default-features=false, features=["std"], optional=true } [dev-dependencies] -serial_test="3.1.1" +serial_test="3.2.0" sp-keyring ="34.0.0" anyhow ="1.0.93" num_cpus ="1.16.0" diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index 991af4164..f243b214c 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -76,7 +76,7 @@ tdx-quote ={ version="0.0.1", optional=true, features=["mock"] } configfs-tsm ={ version="0.0.1", optional=true } [dev-dependencies] -serial_test ="3.1.1" +serial_test ="3.2.0" hex-literal ="0.4.1" project-root="0.2.2" sp-keyring ="34.0.0" From 6e556fd8f9b5fedf3be8d7675a817be03b0e05cb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 07:59:18 +0000 Subject: [PATCH 09/24] Bump the patch-dependencies group with 2 updates (#1160) Bumps the patch-dependencies group with 2 updates: [serde](https://github.com/serde-rs/serde) and [serde_derive](https://github.com/serde-rs/serde). Updates `serde` from 1.0.214 to 1.0.215 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.214...v1.0.215) Updates `serde_derive` from 1.0.214 to 1.0.215 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.214...v1.0.215) --- updated-dependencies: - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies - dependency-name: serde_derive dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- node/cli/Cargo.toml | 2 +- pallets/staking/Cargo.toml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6f2612c37..5cc0b82b5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11574,9 +11574,9 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.214" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" +checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f" dependencies = [ "serde_derive", ] @@ -11592,9 +11592,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.214" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" +checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index d75ddd884..f339769fa 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -29,7 +29,7 @@ lazy_static ={ version="1.5.0", features=["spin_no_std"] } log ="0.4.22" pallet-im-online={ version="28.0.0" } rand ="0.8.5" -serde ={ version="1.0.214", features=["derive"] } +serde ={ version="1.0.215", features=["derive"] } serde_json ='1.0.132' # Substrate Client diff --git a/pallets/staking/Cargo.toml b/pallets/staking/Cargo.toml index ebbca89b1..70da4e1c2 100644 --- a/pallets/staking/Cargo.toml +++ b/pallets/staking/Cargo.toml @@ -15,7 +15,7 @@ targets=['x86_64-unknown-linux-gnu'] codec ={ package="parity-scale-codec", version="3.6.3", default-features=false, features=["derive"] } scale-info ={ version="2.11", default-features=false, features=["derive"] } log ={ version="0.4.22", default-features=false } -serde ={ version="1.0.214", default-features=false } +serde ={ version="1.0.215", default-features=false } rand_chacha={ version="0.3", default-features=false } frame-benchmarking={ version="29.0.0", default-features=false, optional=true } From 9e76bc64abadc8a6f351c2c0671c9eafd452343b Mon Sep 17 00:00:00 2001 From: peg Date: Thu, 14 Nov 2024 08:23:16 +0100 Subject: [PATCH 10/24] Add json output to test CLI command output (#1164) * Add json output * Fix empty responses * Small fixes to test-cli * Only display Failed message is json option is false * Explose clap Parser trait * Dont expose Parser trait * Small fix to displaying verifying key --- Cargo.lock | 38 +++--- crates/protocol/src/lib.rs | 15 ++- crates/test-cli/Cargo.toml | 2 + crates/test-cli/src/lib.rs | 223 ++++++++++++++++++++++++------------ crates/test-cli/src/main.rs | 22 ++-- 5 files changed, 200 insertions(+), 100 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5cc0b82b5..2f88aea4d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -511,7 +511,7 @@ dependencies = [ "futures-lite", "parking", "polling", - "rustix 0.38.39", + "rustix 0.38.40", "slab", "tracing", "windows-sys 0.52.0", @@ -563,7 +563,7 @@ dependencies = [ "cfg-if", "event-listener 5.3.0", "futures-lite", - "rustix 0.38.39", + "rustix 0.38.40", "tracing", "windows-sys 0.52.0", ] @@ -580,7 +580,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 0.38.39", + "rustix 0.38.40", "signal-hook-registry", "slab", "windows-sys 0.48.0", @@ -2755,6 +2755,8 @@ dependencies = [ "entropy-client", "entropy-shared", "hex", + "serde", + "serde_json", "sp-core 31.0.0", "sp-runtime 32.0.0", "subxt", @@ -3704,7 +3706,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "29f9df8a11882c4e3335eb2d18a0137c505d9ca927470b0cac9c6f0ae07d28f7" dependencies = [ - "rustix 0.38.39", + "rustix 0.38.40", "windows-sys 0.48.0", ] @@ -5932,7 +5934,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.38.39", + "rustix 0.38.40", ] [[package]] @@ -8148,7 +8150,7 @@ dependencies = [ "concurrent-queue", "hermit-abi", "pin-project-lite 0.2.14", - "rustix 0.38.39", + "rustix 0.38.40", "tracing", "windows-sys 0.52.0", ] @@ -9122,9 +9124,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.39" +version = "0.38.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" +checksum = "99e4ea3e1cdc4b559b8e5650f9c8e5998e3e5c1343b4eaf034565f32318d63c0" dependencies = [ "bitflags 2.5.0", "errno", @@ -14252,7 +14254,7 @@ dependencies = [ "cfg-if", "fastrand", "once_cell", - "rustix 0.38.39", + "rustix 0.38.40", "windows-sys 0.59.0", ] @@ -14271,7 +14273,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef" dependencies = [ - "rustix 0.38.39", + "rustix 0.38.40", "windows-sys 0.59.0", ] @@ -14415,9 +14417,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.1" +version = "1.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" dependencies = [ "backtrace", "bytes", @@ -15641,7 +15643,7 @@ dependencies = [ "directories-next", "file-per-thread-logger 0.2.0", "log", - "rustix 0.38.39", + "rustix 0.38.40", "serde", "sha2 0.10.8", "toml 0.5.11", @@ -15796,7 +15798,7 @@ checksum = "fc8c8410c03a79073ea06806ccde3da4854c646bd646b3b2707b99b3746c3f70" dependencies = [ "cc", "cfg-if", - "rustix 0.38.39", + "rustix 0.38.40", "wasmtime-asm-macros 12.0.2", "wasmtime-versioned-export-macros", "windows-sys 0.48.0", @@ -15842,7 +15844,7 @@ dependencies = [ "log", "object 0.31.1", "rustc-demangle", - "rustix 0.38.39", + "rustix 0.38.40", "serde", "target-lexicon", "wasmtime-environ 12.0.2", @@ -15871,7 +15873,7 @@ checksum = "aef27ea6c34ef888030d15560037fe7ef27a5609fbbba8e1e3e41dc4245f5bb2" dependencies = [ "object 0.31.1", "once_cell", - "rustix 0.38.39", + "rustix 0.38.40", "wasmtime-versioned-export-macros", ] @@ -15939,7 +15941,7 @@ dependencies = [ "memoffset 0.9.1", "paste", "rand", - "rustix 0.38.39", + "rustix 0.38.40", "sptr", "wasm-encoder 0.31.1", "wasmtime-asm-macros 12.0.2", @@ -16074,7 +16076,7 @@ dependencies = [ "either", "home", "once_cell", - "rustix 0.38.39", + "rustix 0.38.40", ] [[package]] diff --git a/crates/protocol/src/lib.rs b/crates/protocol/src/lib.rs index 27770df46..ab1023e0b 100644 --- a/crates/protocol/src/lib.rs +++ b/crates/protocol/src/lib.rs @@ -33,7 +33,7 @@ use std::{ use blake2::{Blake2s256, Digest}; use errors::{ProtocolExecutionErr, VerifyingKeyError}; -use serde::{Deserialize, Serialize}; +use serde::{ser::SerializeStruct, Deserialize, Serialize, Serializer}; use sp_core::{sr25519, Pair}; use subxt::utils::AccountId32; use synedrion::{ @@ -148,6 +148,19 @@ pub struct RecoverableSignature { pub recovery_id: RecoveryId, } +// This cannot be derived because [RecoveryId] does not implement Serialize +impl Serialize for RecoverableSignature { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + let mut state = serializer.serialize_struct("RecoverableSignature", 2)?; + state.serialize_field("signature", &self.signature)?; + state.serialize_field("recovery_id", &self.recovery_id.to_byte())?; + state.end() + } +} + impl RecoverableSignature { pub fn to_rsv_bytes(&self) -> [u8; 65] { let mut res = [0u8; 65]; diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index c78d3b3fc..b74a18513 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -21,3 +21,5 @@ bincode ="1.3.3" x25519-dalek ="2.0.1" sp-runtime ={ version="32.0.0", default-features=false } entropy-shared={ version="0.3.0", path="../shared" } +serde_json ="1.0.132" +serde ={ version="1.0.215", features=["derive"] } diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index 6a9007861..b0c1ba79d 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -20,7 +20,9 @@ use colored::Colorize; use entropy_client::{ chain_api::{ entropy::runtime_types::{ - bounded_collections::bounded_vec::BoundedVec, pallet_registry::pallet::ProgramInstance, + bounded_collections::bounded_vec::BoundedVec, + pallet_programs::pallet::ProgramInfo, + pallet_registry::pallet::{ProgramInstance, RegisteredInfo}, }, EntropyConfig, }, @@ -32,7 +34,7 @@ use entropy_client::{ }; pub use entropy_shared::PROGRAM_VERSION_NUMBER; use sp_core::{sr25519, Hasher, Pair}; -use sp_runtime::traits::BlakeTwo256; +use sp_runtime::{traits::BlakeTwo256, Serialize}; use std::{fs, path::PathBuf}; use subxt::{ backend::legacy::LegacyRpcMethods, @@ -46,7 +48,7 @@ use subxt::{ about = "CLI tool for testing Entropy", long_about = "This is a CLI test client.\nIt requires a running deployment of Entropy with at least two chain nodes and two TSS servers." )] -struct Cli { +pub struct Cli { #[clap(subcommand)] command: CliCommand, /// The chain endpoint to use. @@ -57,6 +59,9 @@ struct Cli { /// priority. #[arg(short, long)] chain_endpoint: Option, + /// Whether to give command output as JSON. Defaults to false. + #[arg(short, long)] + pub json: bool, } #[derive(Subcommand, Debug, Clone)] @@ -186,15 +191,22 @@ enum CliCommand { }, } +impl Cli { + fn log(&self, text: String) { + if !self.json { + println!("{text}"); + } + } +} + pub async fn run_command( + cli: Cli, program_file_option: Option, config_interface_file_option: Option, aux_data_interface_file_option: Option, program_version_number_option: Option, ) -> anyhow::Result { - let cli = Cli::parse(); - - let endpoint_addr = cli.chain_endpoint.unwrap_or_else(|| { + let endpoint_addr = cli.chain_endpoint.clone().unwrap_or_else(|| { std::env::var("ENTROPY_DEVNET").unwrap_or("ws://localhost:9944".to_string()) }); @@ -203,7 +215,7 @@ pub async fn run_command( let api = get_api(&endpoint_addr).await?; let rpc = get_rpc(&endpoint_addr).await?; - match cli.command { + match cli.command.clone() { CliCommand::Register { mnemonic_option, programs, program_version_numbers } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { mnemonic_option @@ -213,7 +225,7 @@ pub async fn run_command( let program_keypair = ::from_string(&mnemonic, None)?; let program_account = SubxtAccountId32(program_keypair.public().0); - println!("Program account: {}", program_keypair.public()); + cli.log(format!("Program account: {}", program_keypair.public())); let mut programs_info = vec![]; @@ -242,7 +254,12 @@ pub async fn run_command( ) .await?; - Ok(format!("Verifying key: {},\n{:?}", hex::encode(verifying_key), registered_info)) + let verifying_key = hex::encode(verifying_key); + if cli.json { + Ok(serde_json::to_string_pretty(&verifying_key)?) + } else { + Ok(format!("Verifying key: {},\n{:?}", verifying_key, registered_info)) + } }, CliCommand::Sign { signature_verifying_key, message, auxilary_data, mnemonic_option } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { @@ -253,7 +270,7 @@ pub async fn run_command( // If an account name is not provided, use the Alice key let user_keypair = ::from_string(&mnemonic, None)?; - println!("User account for current call: {}", user_keypair.public()); + cli.log(format!("User account for current call: {}", user_keypair.public())); let auxilary_data = if let Some(data) = auxilary_data { Some(hex::decode(data)?) } else { None }; @@ -272,7 +289,12 @@ pub async fn run_command( auxilary_data, ) .await?; - Ok(format!("Message signed: {:?}", recoverable_signature)) + + if cli.json { + Ok(serde_json::to_string_pretty(&recoverable_signature)?) + } else { + Ok(format!("Message signed: {:?}", recoverable_signature)) + } }, CliCommand::StoreProgram { mnemonic_option, @@ -287,7 +309,7 @@ pub async fn run_command( passed_mnemonic.expect("No Mnemonic set") }; let keypair = ::from_string(&mnemonic, None)?; - println!("Storing program using account: {}", keypair.public()); + cli.log(format!("Storing program using account: {}", keypair.public())); let program = match program_file { Some(file_name) => fs::read(file_name)?, @@ -324,7 +346,14 @@ pub async fn run_command( program_version_number, ) .await?; - Ok(format!("Program stored: {}", hex::encode(hash))) + + let hash = hex::encode(hash); + + if cli.json { + Ok(serde_json::to_string_pretty(&hash)?) + } else { + Ok(format!("Program stored: {}", hex::encode(hash))) + } }, CliCommand::RemoveProgram { mnemonic_option, hash } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { @@ -333,7 +362,7 @@ pub async fn run_command( passed_mnemonic.expect("No Mnemonic set") }; let keypair = ::from_string(&mnemonic, None)?; - println!("Removing program using account: {}", keypair.public()); + cli.log(format!("Removing program using account: {}", keypair.public())); let hash: [u8; 32] = hex::decode(hash)? .try_into() @@ -341,7 +370,11 @@ pub async fn run_command( remove_program(&api, &rpc, &keypair, H256(hash)).await?; - Ok("Program removed".to_string()) + if cli.json { + Ok("{}".to_string()) + } else { + Ok("Program removed".to_string()) + } }, CliCommand::UpdatePrograms { signature_verifying_key, @@ -355,7 +388,7 @@ pub async fn run_command( passed_mnemonic.expect("No Mnemonic set") }; let program_keypair = ::from_string(&mnemonic, None)?; - println!("Program account: {}", program_keypair.public()); + cli.log(format!("Program account: {}", program_keypair.public())); let mut programs_info = Vec::new(); @@ -382,68 +415,75 @@ pub async fn run_command( update_programs(&api, &rpc, verifying_key, &program_keypair, BoundedVec(programs_info)) .await?; - Ok("Programs updated".to_string()) + if cli.json { + Ok("{}".to_string()) + } else { + Ok("Programs updated".to_string()) + } }, CliCommand::Status => { let accounts = get_accounts(&api, &rpc).await?; - println!( - "There are {} registered Entropy accounts.\n", - accounts.len().to_string().green() - ); - if !accounts.is_empty() { + let programs = get_programs(&api, &rpc).await?; + + if !cli.json { println!( - "{:<64} {:<12} Programs:", - "Verifying key:".green(), - "Visibility:".purple(), + "There are {} registered Entropy accounts.\n", + accounts.len().to_string().green() ); - for (account_id, info) in accounts { - println!( - "{} {}", - hex::encode(account_id).green(), - format!( - "{:?}", - info.programs_data - .0 - .iter() - .map(|program_instance| format!( - "{}", - program_instance.program_pointer - )) - .collect::>() - ) - .white(), - ); + if !accounts.is_empty() { + println!("{:<66} Programs:", "Verifying key:".green()); + for (account_id, info) in accounts.iter() { + println!( + "{} {}", + hex::encode(account_id).green(), + format!( + "{:?}", + info.programs_data + .0 + .iter() + .map(|program_instance| format!( + "{}", + program_instance.program_pointer + )) + .collect::>() + ) + .white(), + ); + } } - } - let programs = get_programs(&api, &rpc).await?; - - println!("\nThere are {} stored programs\n", programs.len().to_string().green()); + println!("\nThere are {} stored programs\n", programs.len().to_string().green()); - if !programs.is_empty() { - println!( - "{:<64} {:<48} {:<11} {:<14} {} {}", - "Hash".blue(), - "Stored by:".green(), - "Times used:".purple(), - "Size in bytes:".cyan(), - "Configurable?".yellow(), - "Has auxiliary?".yellow(), - ); - for (hash, program_info) in programs { + if !programs.is_empty() { println!( - "{} {} {:>11} {:>14} {:<13} {}", - hex::encode(hash), - program_info.deployer, - program_info.ref_counter, - program_info.bytecode.len(), - !program_info.configuration_schema.is_empty(), - !program_info.auxiliary_data_schema.is_empty(), + "{:<64} {:<48} {:<11} {:<14} {} {}", + "Hash".blue(), + "Stored by:".green(), + "Times used:".purple(), + "Size in bytes:".cyan(), + "Configurable?".yellow(), + "Has auxiliary?".yellow(), ); + for (hash, program_info) in programs.iter() { + println!( + "{} {} {:>11} {:>14} {:<13} {}", + hex::encode(hash), + program_info.deployer, + program_info.ref_counter, + program_info.bytecode.len(), + !program_info.configuration_schema.is_empty(), + !program_info.auxiliary_data_schema.is_empty(), + ); + } } } - Ok("Got status".to_string()) + if cli.json { + let output = StatusOutput::new(accounts, programs); + Ok(serde_json::to_string_pretty(&output)?) + } else { + Ok("Got status".to_string()) + } }, CliCommand::ChangeEndpoint { new_endpoint, quote, mnemonic_option } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { @@ -453,12 +493,17 @@ pub async fn run_command( }; let user_keypair = ::from_string(&mnemonic, None)?; - println!("User account for current call: {}", user_keypair.public()); + cli.log(format!("User account for current call: {}", user_keypair.public())); let result_event = change_endpoint(&api, &rpc, user_keypair, new_endpoint, quote.into()).await?; - println!("Event result: {:?}", result_event); - Ok("Endpoint changed".to_string()) + cli.log(format!("Event result: {:?}", result_event)); + + if cli.json { + Ok("{}".to_string()) + } else { + Ok("Endpoint changed".to_string()) + } }, CliCommand::ChangeThresholdAccounts { new_tss_account, @@ -473,7 +518,7 @@ pub async fn run_command( passed_mnemonic.expect("No Mnemonic set") }; let user_keypair = ::from_string(&mnemonic, None)?; - println!("User account for current call: {}", user_keypair.public()); + cli.log(format!("User account for current call: {}", user_keypair.public())); let new_pck_certificate_chain = new_pck_certificate_chain.iter().cloned().map(|i| i.into()).collect::<_>(); @@ -487,9 +532,13 @@ pub async fn run_command( quote.into(), ) .await?; - println!("Event result: {:?}", result_event); + cli.log(format!("Event result: {:?}", result_event)); - Ok("Threshold accounts changed".to_string()) + if cli.json { + Ok("{}".to_string()) + } else { + Ok("Threshold accounts changed".to_string()) + } }, CliCommand::JumpstartNetwork { mnemonic_option } => { let mnemonic = if let Some(mnemonic_option) = mnemonic_option { @@ -499,11 +548,15 @@ pub async fn run_command( }; let signer = ::from_string(&mnemonic, None)?; - println!("Account being used for jumpstart: {}", signer.public()); + cli.log(format!("Account being used for jumpstart: {}", signer.public())); jumpstart_network(&api, &rpc, signer).await?; - Ok("Succesfully jumpstarted network.".to_string()) + if cli.json { + Ok("{}".to_string()) + } else { + Ok("Succesfully jumpstarted network.".to_string()) + } }, } } @@ -601,7 +654,7 @@ impl Program { Ok(hash) => Ok(Self::new(hash, configuration)), Err(error) => { if error.to_string().ends_with("ProgramAlreadySet") { - println!("Program is already stored - using existing one"); + // Use existing program as it is already stored let hash = BlakeTwo256::hash(&program_bytecode); Ok(Self::new(H256(hash.into()), configuration)) } else { @@ -611,3 +664,25 @@ impl Program { } } } + +#[derive(Serialize)] +/// Output from the status command +struct StatusOutput { + accounts: Vec, + programs: Vec, +} + +impl StatusOutput { + fn new( + accounts: Vec<([u8; 33], RegisteredInfo)>, + programs: Vec<(H256, ProgramInfo)>, + ) -> Self { + let accounts = accounts + .into_iter() + .map(|(verifying_key, _registered_info)| hex::encode(verifying_key)) + .collect(); + let programs = + programs.into_iter().map(|(hash, _program_info)| hex::encode(hash.0)).collect(); + Self { accounts, programs } + } +} diff --git a/crates/test-cli/src/main.rs b/crates/test-cli/src/main.rs index e554a995e..5e176d074 100644 --- a/crates/test-cli/src/main.rs +++ b/crates/test-cli/src/main.rs @@ -14,22 +14,30 @@ // along with this program. If not, see . //! Simple CLI to test registering, updating programs and signing -use std::time::Instant; - +use clap::Parser; use colored::Colorize; -use entropy_test_cli::run_command; +use entropy_test_cli::{run_command, Cli}; +use std::time::Instant; #[tokio::main] async fn main() -> anyhow::Result<()> { let now = Instant::now(); - match run_command(None, None, None, None).await { + let cli = Cli::parse(); + let json_ouput = cli.json; + match run_command(cli, None, None, None, None).await { Ok(output) => { - println!("Success: {}", output.green()); - println!("{}", format!("That took {:?}", now.elapsed()).yellow()); + if json_ouput { + println!("{}", output); + } else { + println!("Success: {}", output.green()); + println!("{}", format!("That took {:?}", now.elapsed()).yellow()); + } Ok(()) }, Err(err) => { - println!("{}", "Failed!".red()); + if !json_ouput { + eprintln!("{}", "Failed!".red()); + } Err(err) }, } From 065b866214107ba0236182b83413a0a623b77fb5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Nov 2024 07:52:03 +0000 Subject: [PATCH 11/24] Bump the patch-dependencies group with 2 updates (#1165) Bumps the patch-dependencies group with 2 updates: [tokio](https://github.com/tokio-rs/tokio) and [clap](https://github.com/clap-rs/clap). Updates `tokio` from 1.41.0 to 1.41.1 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.41.0...tokio-1.41.1) Updates `clap` from 4.5.20 to 4.5.21 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.20...clap_complete-v4.5.21) --- updated-dependencies: - dependency-name: tokio dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies - dependency-name: clap dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 12 ++++++------ crates/test-cli/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- node/cli/Cargo.toml | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2f88aea4d..d371f0cdb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1301,9 +1301,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.20" +version = "4.5.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" +checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" dependencies = [ "clap_builder", "clap_derive", @@ -1311,9 +1311,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.20" +version = "4.5.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" +checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" dependencies = [ "anstream", "anstyle", @@ -14417,9 +14417,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.0" +version = "1.41.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" +checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" dependencies = [ "backtrace", "bytes", diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index b74a18513..4ac0c3f1a 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -10,7 +10,7 @@ edition ='2021' [dependencies] entropy-client={ version="0.3.0", path="../client" } -clap ={ version="4.5.20", features=["derive"] } +clap ={ version="4.5.21", features=["derive"] } colored ="2.0.4" subxt ="0.35.3" sp-core ="31.0.0" diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index f243b214c..8ecd5a67d 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -63,7 +63,7 @@ bip32 ={ version="0.5.2" } bip39 ={ version="2.1.0", features=["zeroize"] } bytes ={ version="1.8", default-features=false, features=["serde"] } base64 ="0.22.1" -clap ={ version="4.5.20", features=["derive"] } +clap ={ version="4.5.21", features=["derive"] } num ="0.4.3" snow ="0.9.6" sha3 ="0.10.8" diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index f339769fa..5c42fbc46 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -19,7 +19,7 @@ name='entropy' [dependencies] # Third-party dependencies -clap ={ version="4.5.20", features=["derive"], optional=true } +clap ={ version="4.5.21", features=["derive"], optional=true } codec ={ package="parity-scale-codec", version="3.0.0" } futures ="0.3.31" hex-literal ="0.4.1" @@ -99,7 +99,7 @@ pallet-staking-extension={ version="0.3.0", path="../../pallets/staking" } project-root="0.2.2" [build-dependencies] -clap={ version="4.5.20", optional=true } +clap={ version="4.5.21", optional=true } pallet-balances ={ version="29.0.0" } substrate-build-script-utils={ version="11.0.0" } From 0629ad2f50221369d807d2d851ecc1df551b35b5 Mon Sep 17 00:00:00 2001 From: JesseAbram <33698952+JesseAbram@users.noreply.github.com> Date: Thu, 14 Nov 2024 12:50:52 -0500 Subject: [PATCH 12/24] Update programs to accept multiple oracle data (#1153) * Update programs to accespt multiple oracle data * update tests * fix tests * fix benchmarks * handle oracle hash and length * bounde oracle data length * bound oracle pointer length * fix benchmarks and bounded vec * fix tests * update changelog * put programs repo back to master branch * Update crates/client/src/client.rs Co-authored-by: peg * fix --------- Co-authored-by: peg --- CHANGELOG.md | 4 + Cargo.lock | 6 +- crates/client/entropy_metadata.scale | Bin 209774 -> 209874 bytes crates/client/src/client.rs | 6 +- crates/shared/device_key_proxy.wasm | Bin 300498 -> 319196 bytes .../example_barebones_with_auxilary.wasm | Bin 21196 -> 23316 bytes crates/testing-utils/example_custom_hash.wasm | Bin 33667 -> 34423 bytes crates/testing-utils/faucet_program.wasm | Bin 677157 -> 702263 bytes crates/testing-utils/infinite_loop.wasm | Bin 10963 -> 21907 bytes crates/testing-utils/template_barebones.wasm | Bin 20971 -> 23047 bytes .../template_basic_transaction.wasm | Bin 141565 -> 156956 bytes crates/threshold-signature-server/Cargo.toml | 2 +- .../src/helpers/substrate.rs | 19 ++-- .../src/user/api.rs | 2 +- .../src/user/tests.rs | 12 ++- pallets/programs/src/benchmarking.rs | 23 +++-- pallets/programs/src/lib.rs | 74 ++++++++++---- pallets/programs/src/mock.rs | 2 + pallets/programs/src/tests.rs | 37 +++---- pallets/programs/src/weights.rs | 90 ++++++++++-------- pallets/propagation/src/mock.rs | 2 + pallets/registry/src/benchmarking.rs | 14 +-- pallets/registry/src/mock.rs | 2 + pallets/registry/src/tests.rs | 9 +- pallets/transaction-pause/src/mock.rs | 2 + pallets/transaction-pause/src/tests.rs | 2 +- runtime/src/lib.rs | 2 + runtime/src/weights/pallet_programs.rs | 38 ++++---- 28 files changed, 211 insertions(+), 137 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f9318243b..5c90d6df7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,9 @@ At the moment this project **does not** adhere to `change_threshold_accounts()` extrinsics got new TDX `quote` related parameters added. - In [#1134](https://github.com/entropyxyz/entropy-core/pull/1134/) the `--no-sync` option was removed. +- In [#1153](https://github.com/entropyxyz/entropy-core/pull/1153/) the program runtime was updated to accept +multiple oracle inputs, this means any programs that were compiled and used need to be recompiled to the new +runtime ### Added - Protocol message versioning ([#1140](https://github.com/entropyxyz/entropy-core/pull/1140)) @@ -31,6 +34,7 @@ At the moment this project **does not** adhere to - Handle PCK certificates ([#1068](https://github.com/entropyxyz/entropy-core/pull/1068)) - Add quote guards to `ServerInfo` related extrinsics ([#1123](https://github.com/entropyxyz/entropy-core/pull/1123/)) - Remove declare synced ([#1134](https://github.com/entropyxyz/entropy-core/pull/1134/)) +- Update programs to accept multiple oracle data ([#1153](https://github.com/entropyxyz/entropy-core/pull/1153/)) ## [0.3.0](https://github.com/entropyxyz/entropy-core/compare/release/v0.2.0...release/v0.3.0) - 2024-10-22 diff --git a/Cargo.lock b/Cargo.lock index d371f0cdb..bed9bc865 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2578,8 +2578,7 @@ dependencies = [ [[package]] name = "entropy-programs-core" version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5b5d04ed1473cf2ddf65364adfa473f4f4127132525342e85ca15adf97f2cb9" +source = "git+https://github.com/entropyxyz/programs.git?branch=master#c689ad3d8114eff88bc646d9b200c71f6e14f436" dependencies = [ "getrandom 0.2.15", "serde", @@ -2590,8 +2589,7 @@ dependencies = [ [[package]] name = "entropy-programs-runtime" version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a50c0e3e7224af04d8bebc6994f7428796de5f88861c89291644f2a85a44d3c" +source = "git+https://github.com/entropyxyz/programs.git?branch=master#c689ad3d8114eff88bc646d9b200c71f6e14f436" dependencies = [ "entropy-programs-core", "thiserror 1.0.68", diff --git a/crates/client/entropy_metadata.scale b/crates/client/entropy_metadata.scale index 00e10f14ada10341859b6eaa12033d6e59070578..4ee7c5daedbcf28523aa3038eac99f16ffb8a0cd 100644 GIT binary patch delta 14360 zcmcJ0e^^z;*8g6!_xXjO2jS@9mmE}32ow+$6iigSk&&WeS&|;%sK@vr2ad@tGVaZa z%8GV6S*cOcjmpYvw6ij`q@o)o8Mmk`>852jD=KdJmfiO=dmj|@-sgG0e|(>3bM~y6 zH8X40%&hg9HJfja2fzD8u(`rh>mJs#%Y0m>Q1zr7Lyp};lzNNOP4pm->nErB$dEYd zQC}O9NvG6bhoq8CO$kn;klo9IZ@MjiewEK%TJBj^=B{-wTU+I=to8V6I*De_)AQ#C za&i_;SN1Pj?Qt3GF2U|9uPSxddaEjHcE{ZNN8-LRni!p-ER-Zg>LPM3_LQQUgtR2F z45^!VbrHp>+Sb#ohxpzF6s30E7fVOfzWdfHCx}+7`|giaH{9>1lWPC{x5#}&YQv6E z>h=frgNb&GRM&00Fs_&ABGK|{H1=1RxJ-6 zq0{QI2NyG9YHo8Oh})VgY{bB2Vvj;uT;1(UO~%2(ko z&ts%4k|?=qt;eU&*O{!b74Ax1hjj*zl&7~itTl)7)k|7q@Vllp+L6yFYu;Kh(>a%U zysK8%LVNk@{jKp-0RAK@RKISGWQ7C0UqnT!_wgJmRv&#l31jSfJQ}~>JbooDQ7?WX zchVB31kb9vMo|_~3By{!kEH)FH$j?iZfOkf}ob_Ng?gR^y&t zPJX^Cmd2S*5@pmI(5Fgyxdb;GtcK;<*l49k-ZcdflB^o z1}eSvOnRUt-Vsd0)r?&pTQ&M+ekS?Vhjt~g6sGP!c$J#`*BGUO(JuASuBB@0U!#;d zMlGs+Ux^yOJ6hSsXpdgfyxXNT53t2O8%sOYyl0z~Hii`=YNofPDb2FpOo@81ErIpO zYU-<3sTV&tPU#)UfA_gq<)j>Fu}E_%CMD2umzKzEifZ4#Ouh2?Bqc-%Fdch7S#c;> z>7tM7JxNN$K#gDa#3}^}wdo~)d?8vXR3P`ET_x&IFGMLt10}u}U5a~v_#TAK6sY5S zDOL$F1^VxM$)z|X-Wx zC|e!2zmf7#uv|U0KLKmYb>Jq&JW9lcqdMjpnM*A`~ z;$S@a)e8@9pgMKm!5gR^x$BYM(_Wy|GrEg+F&d#pzviM%YVK#Rj?tTlR2$!3L@j(*I7KO*np)9`$O~65cqjJ^N4U!0nWj?_>eufS zfWLYyMXK`;?FeMrx;$7zRb3CUU5sD2f<~%I@21LaESTTvg>g6?XHgs9O~T5W_+Dxd zMPK8st@PB?G^*dcTMi{%dAJ&r)p^*hGgM>L&F_uI@4@%3Lrz}zl(4iDGDcC8l9=*~DQRxH-8GoX-&<5*c5+0qQUoi9w1|bd@go@Z{CgIT;NCpF;P{tY) z3_@?rCQEp9h7iFJA{b242AxA_lR0DwkIoSxI3fgx*=Rzjn8nEw9-SdxFvJT6i@_lD z&QfFvkIs-L7}5lT@FEaG%mvGqB|JJqu3*TO(Z6gnIK%|8d|ASya})@U0uXYL!64?0 z70D7FouODT6bptS27{PKRw7GybOyIza0`ZDgTW&hyt0HxXQ+@Df}=ukgcuyvg2OLM zcyx|B(L|kK7-}$xMZg+l36IXOQ7~*248shDMw#E?r3BU9Gde1c8H=ByYu&z8aESvM z(k8XACqAr6G`3lm@L(}XTV+_5jXky4UH{V)PjF}-K1+cCB<&Q%c4?RD z`Y={~^LU7Q?ARFf^5ZFd>RiBr$B(BZw8|80zqG1qEp!sR&{M0RDIEw&&IO)|s&yU- zi*;|Hekwa4^Xf86<)faY;Sl7)FXEFrWW{OV9)VRlWwN5ZN)OtzFRZHYC{ibcfKBc+ zsye!41N?T&gTSwP_=}lN=-id>a~Hs?tjAImvUkZ+kIY>gpu|hR{0JB?=|lzr=Pvu| zFgp?`DE{Z&{{gu6s{ixPNpwt|@O3MGKls{fg`+x{Gt<37z2oFWb^XaDbV7aiYX!eWX2u^3hSKdyl3ReOG1kERy%rUTd) z7Rxxf&{MI(#JH@RpTz#xrPj^YNjmbyQYvsz5C~QRDJ&E=kZ&8Y6gD0 ze)aN~@1cnQj~%Q8CJQdR+Y+HJI^BjYgMOQfQ^4ZiE(*B8=YRVN^fUjyB;<^|lH^df zY%_)(vN;utuZ8DLr^wAElxo!4{1?hJQl?;cS()&_P98>dy`Jghj}uJ@BynWA69a5u zbP2`qw;BDxz(8jR4dBO2e7cF8{40fWBH|RfD8Jh8T^BgZZCo0N9O5uAfl$T@y-vTI=?+^YeF24zW! z{8=*<$|*`P&ohyOM_6chL>jvHl%;28re#l^y3o6-(p~HKVTYyh*%oreXDR`>GC89} zk}}~;9Wz`uPznA?7T$aGU8b(8@gugwCMlh*_hXS(>J6Bb1KEqBqgT^w9KWeA3yxKqe7_> zje! z=A5;w)-GG=tz6~tt@R-YazddQfg|q#T*e_X+*{#Z}ZrbC!kIA(`IL6|)#8(~loW-q9b1_fabfN~lXglPvAVNejJ z15~6zL6}ZZQ3eHJxr1YwSViZv(*)60L1qRaIegA*6Z ztwXttks_(j7Gy_K%#{v~t@`W$<%(P}H#(fP>NBGQSF1i1Ismom)1X6505QQUK&4fm z03AMBb?wU`K&;3Xy4NA0Rad+Y{;ay5|PBprHEC{rGxCxs^E zk$O_7QFiJ{p+h-BPYMOfk$SQVGbYJVdRnMXj@FYxZ*q*D6iSmv>B(M^jMbCJkYp8# zbV3=7t8gU!J+2Z904hBx`1=$IkASAtiqx+J=d5*?^A>|`PXNYGe%Q&pyr#S zX$_y3fRWA_GhhnU4?eW>XU9-Nz%o8DmTVNte;Y$S!-TrdD@f(X#tLcpeeoDdD4(A| zcfkFAnm|{;*IbuK#RD#@Z5%ywPSzOy>3DkJcUgdPwZF^yM-o*cYrzFHj>VYxH>HR= zH@-VW+kOG15&AlmOzT;kiTAaGSe623sjF&BI)%F8O*B7XX+_x1SGB%wQQcb4IU&1v z{zVErt6qs8ok*k9oNFSvXTkt3I-B?P1p4qS-y{~tc;0w)nv_aGa9o+Gx(|ZS%HZ2m zg$EM;D}x86!RzVib$B7x5oz*y+~xldQl_QT?G(>nPN#8{$d9Mf>H)3RPNM4ok@_Y9 zKN$f?J}ZOnGO`l2(;0LTftWKHHPd+IWcmvP9WjLpBY_cfEz6;of%Zn_(hYd+$fbqh=SR@PaUrn~8xNa{ot;2yOT*EN3$tkyUOls+@FEVx zHy-dRDW8@BY<-+hk#@?c^jx#7vZ}%hI9la1a{1f&6k>4PtP2on_N=ePnNG+b#dplX z3M$c#&!JmnjH&8kz~td`X*~b-Vj9CsL`s}Y`C~|_?;jt-f0&C}DRU`=A3{DX5~@V< zp_fnvbDMbYH{{edUqZh!;GMhY(Hh{L)AMLk;{W-+hW}+gy+IY)+9J#};MYqF(6Zm8 z-rgLkiEoJTFvTB;^rcXzg|oSsDU>whR!zfw#8VR7hXoQczGm? zq)mLrWzc#PzwoNY9T3kQy6IFlc|oNnZ=UryJLXfj!&Yt}9+t@3&7i>tf{pdxH( zQonm@B#&sLA-sMG&1G9n0w=)?EupdFx0wvE)Qn@v09e`vBdp+Ln=CaW#Xz>`RZ?>T z$f|$P6;rEeut(WxI?oI2L>mxeCwDESXukUjK*?SFZ&%Pbd5?*B&Qe&fp;uBU?d7g3 zDH>%u-;yg~cN_WkD`{j{8xBE>eJcl@QQG($S5iT+0NyBo<*HiA?_5f;qPe+4&cur) zv?)4$YAF@`_r?zJ(IqgJdf+$wyuh#2Zj3#lBcQ3yL7M8&HI;0aI)$P@b!i`!z~T?- z76rkQbG_7~-G|jp?8qRkJ9-0cofySEI2b~bz^_rxUhHQ?$Kzsdz+Uqm;7q1{!n1@BrbeFp;OFiTiVH|Inhc~XE#GroB zP@hRU6=>*mprH`++2wFrG?WlV=HItL{M#~$WMt-xOQAp$zonEWla22yr4&#nODTid z%zSwcHs72winE0vp2$v{q)^^fO=%+>W@GKe4eHEc)??KC?J^n~7I9ve5qg(cGC>}i zro@=(9`2qCFu&YG!{r!rz`AYnP?9Z9bmlNi@!Eb5T_M9YM0sfvOEL4bzavQTj?2Q! zz2t)7-{i#vW%4h)utS-;XpYT+cv91#cv3dsw1(z~(3Kp|oIRiP=uh zGvk0OhNg$IZ23Y0lojZCiG_jT77ZG1p9w=~7HeZI#ZTF2R$Ma|`8=LN_gbqmmn3B|*>QSmL^b_~Z8A%E z1g^A8O-QiKW@$6;t)=I!TlM_sojhwD_U&FjdBY)jhOkTnK|Bc7%%`rSrC}|iZmU_s zBLrM8?KG=#ACA&qUq_c&VMt;(z!(0vJLoo1Jes#}fUnyl((%0L2Dl~tR+`r|V9maH z1N3)*_ul|7-p;2t0P`F$YHeu%vTWz?Ho&WO=vi9ipJ*bB=@cS$nI$}8e8*&|TTk_v zGo&8A@1y;q0L961Js1t1O!#U@KXb|*Cy_r6jwY1%Hsb8>;B+f=(a=b_i4AuKn5{3R5F{9=P`=?-TEZN9_ak}Vtu)gSp)>W#pGz?Y zd!Jc~(=NJ=>P?s^(RO&M(X<1%fCG*zkq>F2rzk~x=^lECVH^H8#!Q35mMuicwIGny zz^M-V0k3F2@?Kh|?x52QdvU@;i2ZmBx$MRO&hAV}0@8ShzM%^K^}}$572Ng+ zEdqeJ>Jdb9{QQnbC}x<4QM4Wx$wFAJ&Vt}sB=5P0g0-WM&>ET5TX&)7)A%#-shU>)!{byE=20lMpbP;kuK?F8t8f#l z>to!`z+%}osPmnA)AoLZEs$a$+xUx5&^X&3y}-HG!Y4jSlZ=TuptqCT9%!d?P&>#Q zbf3^+IS-|Dpgo|J4k7=aZJnaCc8kd=) z(QwvdQPWmL@~AelX}|2G+e~zX-@F@}u$TXBH^P>^-1aQCQ?F4)Ty+E;)5id-c!IBc zR_A=-S;`vPYoX{lJ}>UU;q^~G*G9_~Y+4a+rI16vTn59|}<4blc8vcHc4*l=wJZP>W~CEb2BzXaUg!1up|gG?U}-Ahg- z!UW&DArYow{$3gq(_o^Eb3Xh);0lc}lT`|}@}mh9p*8J=ae+Pg?q%8pn{)j>niP)x za>nOOO2^3)VIkWDgmgMU6b!HVbu@mqP-WO8aDhv*2y`QxAO5=Sik&xfgq>b35}6wX*fK)#Iu z`5Fhww~?p*ot_SA6!L9EEX}IJJ1zKq(iqMr?vJqhKkk8%+iaw-|Bx=WY!%$e5?}ri zEYm+e1i)?P^bycjvtV+IljNsxWJf+iTqKd_9mOIk{1}L))k;TsQ7?-A_%XRyt1g#= zTR)?ui=6@MX{D?Iw2?D6*|iu}cc=AS1Y!pQaYA>yAcp?K+N=^D;f9>j9;5RMk08vn zm#;X2i<=Jq_z?iwy++Buj$m&d;8Q<=2<=vN?H%EK?I%FE`VB-GO5{&r3)*?&r&zWf zqD~7im_DM=qcGh1i1u=|7bm=kUN~u(4Wy}u7xv=h+HJ5t)r)1;GiZc`-2wIEI^?_| z9{CSL?6zWzy<&{whaCg_Fvf_26Z-7SC#?oT){cBeVHWDs`c6=uBKHNddEqy>Wa#Hd zzrh*i6yN+U?8zy<|67V@r;RlceaKKdf&yo(3E>8x9g<8oT4;9TuXv=;;jD$IC`e%)NMnC-#nJ@Ok z9m8&*QW_UF88Mf$>3II(PY5_9YObHDlZ{A$&`NZgEz_25%eCd(3T%ZoTz%d43l>|< zFLVLF^%qQ6=`S>nzb;ZOzhHUf8s(q;LJ2{6HVOtLm83jv_^-6fPWeXRC&5g7S4b{| z)No~8>XCr|hlH@Htk8D$T5fTr+Pj-lqIFr+s@tI9)|s$fdMr@IQ@rhv`KidzdiW+wUJkZ zvISvvHsFrR)gB+9hkk7(Z4zCK=0AqA$*E1}jA*lM@Q^l(cF&GU2)Ws)dfjk#A$9Rj zhBIf7xD{WAgLREgU&^-H_zV+`;IqTnc-V@HFczQKe2#v%p0D4nhJIW4i(%}tn9YpF zkH=Xo*@Yim?IyeZwX3Uq-deAxrkPI+XN$tlk5{zvE#WK|;g0vhSpqC9*ydQB_>5qs zchv!2;9yaSJI@hg*ZE@XGQ`-$H#t~NYTG%wxe=;~2fWZ{`^K}Hi8pQz_Sk}Xkrz8A zd<3hJ_YP1kBY-v!@WUfm`UMBh>AwB^?%R#-+XpJo9m&>A>o})Y=lQidjauTxx@;02 zEP#w2v((MM8_6z!UyOFLWH_b*C#Wv&7q1@P>|_&hrs#6AnaUC~9pZO+X)K=>!D479 zUlPHlz@|4vuq@!YHzQaojLI)~DJd5ERqZl|@okYTNsrJenS-*Xv3!gAn|T!fITEu_ z$YZ0}JP~P(LT7b+M-&99=WmHuBR>_z(jdqM(JYmnw5ShS!+CWyB7Ud&?IJ7Gs*=sY z4@a{o7`AVtp~zw$6N8tB&y4|t->UAnh4bT1Hk9v(VK%hf8p9?7)E|vu)7Unvx;)6i zXGJoHdTUUUa?(l<7*UhkN3l^jsy#7E^kP$shJ^FJQEZIjumwI~=c%#G1*}#Si-E`U zKgF^%mS|I#2anX=ie+Cau)1wy*;R~UwD56kHQ~@$Kb}p4%iA-aWrU?LTI5WfiI3H< zHoji2$=;I4Ud3tZU?O`4_RpWhmQk_Rox~2)FfSu1y13R`j)Q>&_@X7VxtJ|E1+T4q zUJ9E4U0t8T>RBV>t`ruog-&3}0(DGJWiQcI?Uz(`KLJeebhdc;EWGni0#_Uf4z`hLOoi+42I8k zk8nPl-HxmKvH2_;9`UMtC_j|no)6ZYT3bHLkd=6|MdE;JVOt7VA{3BRz{cVvI&*4qrds9@WjlF`pY@~Y z{&nmxL=D=k^$e%trY+a9S>nupEqe=GTY1=ZY!l#N^L5MzI~88fCM%oF&1T*Z$KtfA zdNv?Z_R8rK*6ks*l5C5SotukWhoY3h0VhI9%gZv zy8pnbU~+!u-iKK=0)|PCvN5=~x%5$X6=rznqs+nNJj;zj&^UhlF;+GVUyJ`b-enw* zaP-xdw6aUhrhJQ2x&+^hhw*(+W0w{1qffKS1bj?xBZ&$v5mNLY;2F!-x@jO09lo&E zUF#vKh}S*?@r$*mo?+L@2tFh|%f>++3!Y{8Z;le4^Bh}cbz2lkxz078Ke&}S`JK-( z6My45wgy&Xl7<=g@&g*18jerY}G_B@+JfV8vrV6v+D7ke-jer@^- z%#E$XAAFJJSg|eQA!ohz`HSothQr~~m)Q&89l4MF89V#_eb{D=ym~)NAF@dZa=UA; zr>=%?cm{~)t^I5WtkVbkvBx&^_yep~-fD612M(}Xuma;>VeerF{?9Ay0~|IFzsmMw zN!@dhy@gHeZf9R%(_Zo#+eWlW`|5SJfyk|`>0n>VFrf=Ou_KT0>pIz0@-fQ^?MNrH z0*h+L-)1i;*uTw(*=TE@5a$C|0S`@(BlzcsVS`Wc(Dzs^0Ow8bu?E;(Yd7pBS+)Fb zHVj8rt@!VTaeMiF7;^_d_CDNx43GbSW!tw|Qmo>h8{gwsLm#+C`~XHZlW+Qf9Rwy^ z(8KbA<4oiy=M3n0eI38+V>U|L+rzF`V8(Mk0Ww-*E#aO|;EWQrrcc-^aqo2MD7zXn zDf~X0^~DkuZGAb@nKTOP&o;Qjvt50Ph%P%878M& z@m~xb;0fiQ43np0Mq=#pl`$12>PDu+Hd#s*Yu;^yFD0rrVf}2j%O9f)U#L7+zoQG4 z>#TkgokEQWK4Z8%+8$$zvx(`hGm#D7S>t1~;qqn-%o-*?yaB<<5M(CWrbAG_^y-CcJ*A8B|6TZwGtFkt((@Lr59DOp?5TRrA3XT>-dmGxOEowOt9-Ti zXRF$}TwCgRokKrT!! zBv!g=dD9e_@Qx0-Vf;@(QDRNu6oFH!)-pEo15OUozZ`nq+lcTjc z+J_192h35=e&6jbquVIPKf6F)L`~Y1WO!B>wU=L& bCa=LKaUE&0i+~NkN|&$4$F}pkZPNb&y3IGv delta 14138 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 Ysx4)t978yaPfwTE;&a)VZC2@j0Gvz`{Qv*} diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 98e73bda6..98d8b4b85 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -210,14 +210,14 @@ pub async fn store_program( program: Vec, configuration_interface: Vec, auxiliary_data_interface: Vec, - oracle_data_pointer: Vec, + oracle_data_pointers: Vec>, version_number: u8, ) -> Result<::Hash, ClientError> { let set_program_tx = entropy::tx().programs().set_program( program, configuration_interface, auxiliary_data_interface, - oracle_data_pointer, + BoundedVec(oracle_data_pointers), version_number, ); let in_block = @@ -290,7 +290,7 @@ pub async fn get_accounts( pub async fn get_programs( api: &OnlineClient, rpc: &LegacyRpcMethods, -) -> Result::AccountId>)>, ClientError> { +) -> Result, ClientError> { let block_hash = rpc.chain_get_block_hash(None).await?.ok_or(ClientError::BlockHash)?; let storage_address = entropy::storage().programs().programs_iter(); diff --git a/crates/shared/device_key_proxy.wasm b/crates/shared/device_key_proxy.wasm index b7daf3b126c7408bc1af615e1fd258ace35a069b..1e50cb3d76bb182892be32ab2783abb8c77be064 100755 GIT binary patch literal 319196 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≈(i0 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 E1I!;}i~s-t literal 300498 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%0D)&pp{AO)P1Q0@kL^0RDZ*VQlM@*JGJCD~jlovI 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 diff --git a/crates/testing-utils/example_barebones_with_auxilary.wasm b/crates/testing-utils/example_barebones_with_auxilary.wasm index 8a508458234d1d087747bc815f992f0e5d8e0f44..3eaf5e2a62375e1b39fdc89f32ced9d3cec1dc2b 100755 GIT binary patch literal 23316 zcmd6PeT*aLdEYxT{Mse=j*`~)Nq35d%*j4k+7&;Cq~tg^C-a=M$1oaDLvnbx z+;5V%x@#2ON|qhDbr2UwTBS%@wG}D_uo5@5Q#+NTbE_2oL$39Q(I|j{3W$NafLf@9 z0tl#3_4j+;cZTHNUS&Il(L3zU%=_`Y&-e4Z&%8S-7;i2qOQmmfc79`BjqLPhI35S* zL$wrKytK9vj4rSAgGpd5zRyxOjMvU@1(S=TaAg$kUJS<*N7?CBYuCPcZEG*sSnID` zGr}6H#SncLgUQ%~8@6i~2~QdW56A^XY|^^kMr$`$Jh@9|sd zXZ4VUo&P-T07QFHzgf#C3UlN#q#&}ud3`7 z<$wE&`uYm5>EE^%Qk&uC_UN*$ZtQf5$p>OitQIVX(2W-BbC+PKQG4gj;>b%62*z!eFP<4aT8k zFC4R!Z)I;ha_{Z$J%00hZoH|qvU>OX?)u=J#}>c-o7R1{%Kk&kvaZ;t?bEJ(%1*SG zl)lRp9l5oZl%FWrIVbC@74_ZEU)@)?xR#&De{p|*U!lX!a-wn_KjB*Wzi(Q>x6^Jk z*SgN!tgBqhvopBZm~9{T>;&)I9`O2t?If>Qk6KrL9w7IX@2(fEllm6R0=mMgMaRGL zQDBJw`G3Pso-8+wklYxWn2B&t3*+9O>}vV_-^V=z<6S@-Y7xadE9vcE-0p zx@7S#Ur6(kE0AGsIzm^sIj(Y(pc)s4Ot5@+sEN&fE@dUI%<`U~FoK|xyd(-KUQ{7X zjHmzEnDH0Sfr7ekX?Yc`_L2?gD??x1p`PEry001vi2A3b;kjvpD-BOi8;(iCQ`3gL zG<)$qys`78UX6zdd z#scT}$$BqGD_Fk9=r5)X8l!Jb8-UT*qbGyWNF#Q3$${{aSpDw-9R+>I3gnwS+Na$l z6lQh=l-IW*GIXWcm2%V3XwgAxXF7rnu~JY;48~2Ss5m28upG!sgjaOf0=pV&TQchs ziQKS2o?RIh)so6)^=e71mfL_C3VPZEi}Xt1aZFKyRtqX3UBmrt(f$9&Xv5a%ia>hA zg=~(NVdZ~|qRDTgm@6``xUYc>aw01=o50iH7ZJo)jE5>w9rD zC-4mYJBEvbCF`d=xFT`}mp!|L#*}B@<)&%nSz6{PZC-8$!pdrBo?WANSQO8ad$y3E zzi@MOG0^qcomiadCSZ(-LIy)DOqyCX9f`XLIm1mEOU=Miv8oU3K7_?Hp54?))&OS_ z+5#X6ccB2cQ*az;k=7mUWmJKBnQ*hG>>B(dz|@BM$2E6O+08-*09|KTgd?KYvHeGe zWCQOm4RssYWetmPa~}fi43!Z6Z%91d1YklF7u-ePnE>N|AaVhES=b6!E>^O~p2?0A<+2j!L0!xVJ zuAO}^xfXE(bF|OH;;uULSAY0Fo_y)w|H1!$@k+x%B5~#){pbBx|MGu6^T!`-I4WD@ zi2wFy&;RLnKmYx|`D>*|y!H6+ed~As`+xY0Z(@eZK4aU7sWU;6k<`9~E4nr<#QKER zy;v7iA%$K@bqJ>n={xJY&-)q4F|4!4i)o#iKz}C13<$yxG7ngqT+`1#T3onZ{;}|E z(KbHHS&vc>QT;-KP6qMbO-Kroj8YKSDJ0kd6+DLUg%ku_#SM~>-={F#WSoTHE?>y7 zAy-JjwYiyyB;Cd&MBD*LViJ;^CLuS1k^ZZUoY0^b2p8UyX``W4wDf?_UYQ-Bsfr^L zz#SO9z!m6%vj4@l>?rBWuNUn|9+4;T_buc!@KhL`gJtaJ&n;QNgwZbnS%G}Z|HWMl z8{MOh$Ww05e~nK$c}nfY-Alfs9mwpQqcZBoJ^zhE=fohRHJ0GLE#$$P8%UgmDRjFk z|Bp4Vz)?6;Np(rLGjw4gN^<8JWS1iJuFAr`U63@Ii7r6`^15iF3vif*|M}k$8MBiy zN|*}ZHarRh_3zkuiyqCzVN3AOnxDSPzGfk_ye7NWR46FoA(^#JrG|n@WS|K^vmGCy z#Lvi``sI0Bq0DH;h*j7}L1$c~OtT5J#dKI&bpq`p%7C;;dof$GSR~QVJSZ-I(l zK;LDG2=W|3jInb-P74RAH%=5d1~ZT33fj>*T6LoF_RM$)3}VzfErWb8^Fr{fp{eQwEizMfPhT|Y?A#9L7l}e zQJ!Q??u|gTe`&X9<^wtrL`J8VAVtIjG9nCv=`3=ZasENv;)&GmSRJAC|CDHAlI6c; z?fOstCXg~bi)BN;q2Jk?6v;nEVwdQMpj;b189E7$WZ*`DKf*-@l8~qYTBqAe3Y^VC zxt9I!3qMJqXY2bZI}cDuwH5Yrrl(1dAPOHeL@gl=QQyx%jJO94`JOG?eW`F5e)zY+ z$63B9OW+RseLu5zzG$!SL31D|YqIWt80>-Soly;12I)J2p4ftD-sGIN2x#i0m=LAY zc|Ul^1VZ?b(-%0rc!HY%UuEi12#Wv3j};Tt#7n!b_-B@h=;JZ(W+Jt>j^DSPJwB2B z38J2V>z<$39l{e7k%S<`uowX$Vt{MYDa=5__JX2gFx94s3w$0~Of-%7fHdqC=?|KL zyUv2VAZ_+ zVQno@NB3wQ=VID8gapxL`22bEi#VBplN1wlxKM0@@)VmOLl)3BFo+m%glo{NU_Cfr zvSAiknqY(<7)1~V(TgY2fioUJ*^s%20m9!?oWSWDv3N|O9}flyY^|EQqtgX z2P{K+Pyh_dPihuG0{VNK{JI}iJ^?010{gng>_}8(c7USkqa%a8{44x~+xQbg#aVL=U@Z1uDD3k(zB!_J;i7|Gr zS!2vuu-5l6)-LX}RKR>S>&is)h>LhDh@W%l%9M6xkZtVBoC0^sRIW?`krG}`Y=IXf zM6_I9zz*1gJtGo^Ad>8eio-t$6^P@S3Y#L~uUI57Brpwg{41VjVmABQ`|XA41_=qd zr4vZ1?(Bb{|2Is`At>d4_nlv7-BAH?WSz>-Vj~6JEkFXs1r?DoCE(du5>x)0y5tIH zkOD^ZZA$w#NMHN5B>C>Fi(gDm-5O0brB}jgX@qtz3OMvZsOG^3CAANNJ1e9epzNlK zDeY*A3$DZT2bXo+OJ=wLE~QX?SkSDK`xMB43SibUhH*UhPE%(lIDGUtJC0**lzb=H zW~JcVs4n*DsgzU9sK5;WEoYZE=a@Y^dqsN>X6zvNgL}e{D`Ro&!(s*n7L3vHuSmka zETK?b6zwa``~_Q19nP?QVbOEcuOB=#G=;K9WcHDK!4dd?zCPN$P+XuA*pU(d$cz#IdZw5mwi#~TbHEFw z!Wku4m{9`ikCr~}pj=dkbyTT!1i{j}_NP@=)Sw78rhqO@b1)JsF-b>HK58Gf;9D3; zAC}TS40aOxFuRb7(=ikuB#DNRXy=8nMARLYTg6{cS3y1~F)0*j6NJQ{@LdTraPT@` zl<-!D>FB9BaX}r+i3H z`5;z1&j;8o_>hVCkcs(_F3461N|s?2RuIlWc2fgp`ej5248bVIcr7)k3LdmZX`2;W zM*xV}1f&IDus{qxmx2Q#6Gr0C(on5rtXggYNf5%~L4#(HLA#ZOU14gZ!9{RM{N%Y} zl6yEjo`ZeCak_Y3;5w8C+%a#KSz}6LYn3?;cWPr8Zs=RV_xL@=tfoOFDHPg;v;GOJ zPR}uQ7o8<*Dky<92lu9gHgy;*BTfHPskHuqDJWcMe(CfDElg8b_xE3r z{fguN@jf07ip@wm=LbtGdY{(4 zUopLAu(YE0Io>fV=4uNf?@=>3lF z{l4ingQa!a`-XTLfB_=b6uE95i( z_?CH;D+KwZNY6Kq`{q%up8ciy$0yCBTp?fc_+?%p-}zo?1vj43z0b@KmR9sWt$V*> zdd*;IMelRE_iLut43<{(epUCrV0z79X+`fhbni>1*9?|c^j_7yFPmO7SX$Bh9o_qV z(`yDxD|%niy+1I$X0WuP_f_5dL(^*pODlR`)4i{oUNcx)(fcFa`=;qNgQXR{Z|L5) zO|Ka&t>}GA_dY>Oo(`5)Jnpj@0yVv6u(Z;4{i8$fWMxy1h!yPs&8#Q&EV_nu~26jUrVQ!;#CE1CUum;#QZ{fEeS)+m>=t+guEFtDLC}rYRo^Q>UUSAHtd4 zPJ<^iDVS`hnI|yQfi#dKkR8lH!6bcw`ewK#lE4JqMO07;R#c5}$Va{u*2!5$Yc(4w zS*C64ENsQmQp%`&l4R|y>^)fWDk5p#sEXzP}tE`g>ZJEfeY;j;%Rkx%eL#^T%d8h-UZz8WF*BAriJ|zMJ#>^5q%Ndh4 zlIa*Ow3CnVszzU!7jv)0gF>nR=0>$K@ZjU9jS0K{mI9?`i#BYqIcyO0z6{*JzM4d0 z!-kIKnU3YCgQ`kD#ht;_)U3BaOj(&EA!B{8bqkx%~c1rxkE&WFUNhU%fk zlLTp0V;0^|n>YHUnWGbY1N|~zq*9bNk1Zn5`7b<<7P@o$ zjMcyqI53~5-E3bDipdc=+rMjwQ*@4tPTO}On>?;KR`~lmlephk+1nIY zWcdp;SPQKE=WJ#1TPtgJ2QNU4mg-kA@>&tc-sBX4gEx%Fp#zu=F!Ht=^!pze-Y*GK z{%H-(|Gmesyua#yhu8c!*{ZVstETnI$7fpqC~c)=MXm~-VD}k6Uf7xSl&+uw>~pc_QH% zg)-bFMmV{`yLFtX%3vGp3a1!MP#Qz>sn?Xb7$xZ}U9MyYU8_0 zNt7-@8|rVcdKXoB92a#LOj3acS_x0h$Te8;DNI!P&xITYUz(B3_t_6(fDj^&GL?dp|FvN_~*O-wL znGrJW`5+eW z$YU@t#!YZ8KfJ@nX+ByL4!qHsN6&PwJYNJChXX|}_B482{$FSx@jctdUvJEw9k#XO z0-yNam%B)wQU_>yeWvdxBzFVCqB>_dAm5Oe>o_zIbQqM(GB(fA^9bG)Bgj%ZPiaW{ z3?0YmV|2Hm8G9|v5tkIH=N*U#$%ca?B?3;zjU;wrNF4yK02_`Fp+m>!m;n(N(x8I{ zFVmAp&>X;1_Gv#CpD@OIKto-g(}910#$)J8dYK0*W$C}N16OpGE*mAlnV($Co0#oT7q^UIit6*Yta%oUnIi( zMfx&^DDF~iL|?6`uF8G}HZmhy49D3E;kO*~z**Gj&pkxMnOPC*j6xJm`ESolHoL5V z)xpLb8b$4RUKS&ST(n_TO>Xw<_MFisHKKZ_^d|ETgjptba<9XgoS!2NS6S_mnmCR` z%7dQwf>ePxOW$F+9~n?r9?*%pz?4SlHTqwVQXDx43q--o8z7H;CBIxmrhC+_xH$J9 z)kziTbc`>}mX0nQIEnGYL6SL}h-H zjZxNjT+tA4==)EJBWMJLk)oO8?@PMp<8v!IW<`fMGf~2dI2^=fSXsc+3BA!ehKmEI zK!b%Nj@JG395iEH498_dqjykXZb5oEnCcz-wz%B5#BJOau z1lT(hz76K7avb)02U}L0qmg4#s-PSIK%X4%*RM9=pj}#_?2J#@Cjsw<$A~$8U{dviQnwIoR}}0B{KdmD-E#`J@+T4~$Ew02ezJy{ zjCq)R#IckuFZsa19Q*OQF*hvcKsES_3tq9~PoWAR4rz#}otvei^X-}RMgR{&BP5(& z;UA*_5-tW3UZn{nD(NEsfM@}*mI(_|)N%N5&O`Npbb;Ay3O>Ea6A(a4#Ej$X!Yx-= zi-K+pit;;zk9=9Bk6~CBTul$;5k9?l!yDIMfMH~Hss|0oSG)fW2F9DNlC`Bd)Vb0VYd1_ zl#lrqeipguheGZa;5v1Sa~jLp?jodhms0+VS3Wj$b3k?G!Jd6^;s&BL0MU!r2F73D%c&{eb`B)SB;40Hr5 z)aIvH$w|G`Iw`a4(4kMx_>P72F!d5UxoInr(%droH|2+tSSpe@)kp>IQ89||)>AjG+Tv$9n z$|7y~a8iUziy&u~Dayqks9h^1t%D9Q<&K*fKHm47BXt^+>ntNY)dREH|C+Kg#-Jb^ zXXrn|sucbJQBE$vbk~chWU%zX^VxjOUPw{Tu_lI{Ev7XRnpv!}W&B6vyj@`d%*4nA z(ObOe#zrtU02>I-Jj_@FHjZ%**tJV4jQ0=v~SZ6O~51z%h-sX@np1?L8zUVDV7SWi2p1>T|wV z!65&tg*Q&DD&kN`3dhKVNjBDopAg1ju{YAYaFAe!?IsEqS;9~W(;fTiJy4n28~Kkt z{zL}FP#!M0PDkQ;9qP~ydx(E#i%B1#T?#1SOC0DEI0V*Z_WXAqdppfT*K!@Aa+BCV z8s@^Mqdq|+!|0U%HlnwUK)@J@7^hLk(d`IzQ3{wjS%@*$L6#zgy#bBabI(TUV!CWU>#pBZ;1 zfd`a9kHLE?%S;}W{W;8r2X&$O;zJK~zivA=Dgtrg7h728q$ElH2Ur3J8tTlK|D*aW zu_z>Ir)UQaj=z9iI|8`;@vI)SUrciBqrdSiqUk&D;I-Zl)fTMWn)pvVadlq}?^fzw z1*7pF#mgqx;1AWtx*m9N2#k=)pE~o-xBv3)Pt)ECm`8gRoRVk$T74QQC7;y?>ohh1 zTTBemhyzfmDFUhMucM)*)GuUq~V0Gmt%DFNY<;b2wxeq9ZIqu!cJXOc*8I-7g_7%2CRce{2_)zQEDU9~h@# z=WIuFwIj6YX4KxV)5as%D$X@@WR^I-5G749|fB(ztXZc3dio` zLNIY3ioWO~9|w8J?S}3{pW5CGA6k7N+&VwG;BF6G^Ys@OKqlMU?)bv?XtHW4r4snb znQIc)6n@h9xqE~UncUqEcgA=3H#X(_BP*rV%Bpwwc+`uVR!8GtJPt?v28=rh);7Za zJ?_qU?eB)}hkwD9>z(fA+E!t4N4Z`NC0$t!ymujV{5-_njUX)#**PM`Nqf`Rp&(g>MbRvvPT`wzW3C z&^bTaez@GYP%bqpwV+n3^ajl^tk&E1eb>%u{Yvogr^DXK2Od26;K}<=`X@j7;K?Qd zbbt?lRLk{Jsb8-Rs^yl~8}!@G?^=LTF4sDo^KKNZo{32NRZ!-ek1w6PSSg(h#&QX_ zCZp}0%N=9g<4$jT6t1pz*S7lS!>!fTPim_dyrK^X0k3AS7L@8ONTUKpXw=(@Lq0^5 zjK4#aI^;7%>DjLkWe)!c(L%1%p)cqNrx%Zyr@sCsQ8s!u-zdu6GCR5>--GI0z^9Qm z!qF0$Unw6-ZewQ@Zd~k#<#Mp`aBz9tq3x2$V9@mj^>QD&*Mf4lkDUF#05L3sWI7vb zTkD;1*rR6xoPIT|d%f}?EL8{9W>{|@ZHNq^Z5=bKGMbcYql;TwyCD1?rSFAEDCe(sx0H{5*)n1*2vrVpAuuiOf{m435Z8F)ea#x^EYJyD$pXSF~JJ=nUu zy6SITrm!26%R6CbtxqhfrBcuv3}C!LGwk-;H~my#V50--aIe=Wl^cU{d-=1#X5NM> zC2bGqwzk3%6?`x`EdVy!Lw^h-d6fMzu;GX3;_L*x3krAyE+( zTwNVcMr&K=S64qJSF#GwuzIgwt<_7lUKj>2hxcvILTfaxfrc=!y1El=t@YLgTsJ(= z#n=$3?CR>-?a^j1(JOs2xV*6)^y3Bl^=7Re)O%hC)ePFls8T|3U4WD;pCl|Z%L~RG zAP!7R-70jd)M``)r79d$`{oWN)|;Xehm$ztEwrA1gR85;Qo*LA`P#b>aDjf%uh**~ zykDu-N33Yy@>96IZnYnD`;B@H=)#9L+sA+HZ;7Q5zGgzD*&Vd1jd~EkvDTaA_KA0Q z=iy-Bd6inD->Q{M)gWx&`Z1u?jPjHCrrh|5Nm*k3EmtmXiA(5RxVW_r9u2x-wb89Z z?Ro*iQ?31T_y5?is{OSwKIay8B4DkaS83HlgxsE2>JPm3ZJ+$Hfi>5*m_T*#Nxt(_ zh+(q@&Q!a-Zl%=>y1lmR|F{rqgHcG&RT(tOy+$SMm3n0~)Y}DWLCmE1<`8aqI^hEl z&ujG?1Fzg|c7swCVk*+{#B<}DLx41qn&I1l=jnc1)j_{jM#|D^^?L)j-=7!%1q-Z> zFOOUB0_*sIUN5Y8CVb!vcO6Mmkr|jifa!*fGU7nJAJjr9d9Qu)Gr*<_Fs;~*%dJD~ zxB}z4*yx^=U%id(F}`((`#u}`^d3m8dM#*TQ0~=x4bN-eey@S7y*EKfcX3>Tl?f`GF<VqEr!w@KbxKYkY>V2MuovkeYD6L9rx8Y}HmLNv@G8w#zZ?vj?bZFC86HLu{Xscs_QGB{ zXu-D)s_nZ!_cKFb8Zdj6rZ=b!di7SX>oo_ZcIh(Z@e|m`yUXJ`y5KdC^w)abdZUR@ zU1_$-SpqUfXK|`h40~ZbZ9N*=%!nikY>(*Y`r~HhblUHz=3djq0^CD>}c|K9S2|>sTIm zwJs9wu zxIB|_Mb3ieJOGz@y;!Y~+s1itf847!O7&)`hg2YFf9U=1e}OWI)8&@VJ160&T-gcw$bu&!Nw)Tj?C zgI2G7x^_66xqJ`8>Xmz~u#R#>81(9GKbF=k?;DUq=b~4`I*=0zM&+Omv%}7!-af-G z?)G*rr*E{>(GHSnWCr-GE?F~5ELtkPI@;#van1}WB zpd7F@NtIU1<<(N2jb`JxLLkY~YGbve&K-pfBZzedp?pwzoVasw6KTU5Kb0Kbd35vQ zBT$1Qe_UzUPek zlf95VGBX7|>8y3yN(jf5mAX?v&K491_3)Yk4$&*+I0T$bEM{-8)a*P9kUljPp*1Hm h`&x0-RvSlq;QIDdO3N%&LZB!at=$uZw6yvi{|BG<)`S26 literal 21196 zcmd6PYm6k6M2e$DjEZZA0!mt0a?-5OcDCb!wo>h4uyP0{M5SENKmBpk&^&|BSI zy*oXRp6Tfs?!pphC{q+=D+q;WvTROXX_JdYHX)B!kwMq za;O%A-K(qX!T8#_elQ8F`8zCiVrTX8W-!?uhv&xO_HMW{ag?1dTHE%WtDAel`fC5& zEj_FqH6NmFH<+xBHd)GADjAN)qp_nB)?fU(rGSE^l(GiLF4_D0>XNg+zi;jH9lw>j zltnrE4>gwQqAn#^iyC<jp%ow(A; z>W=5G1Upw$;vLg2v-QaZsUL^I`ueD+7Unx0%B&M^_8lwR>0Aketxh-C2_1XxPD}Y# z_V&iR-*M+1w;jLz*iYa4&NFA1a@AUE{?D%Yw#qIjSGiX1mk$mORQAskmbIVz6~6oG zochA2t{toqskAUBjk#Tlu1VOrrz#q-mOlTz{Av?3=J&rT~cQt`~R0#iUjdJ2R7 zg+&Xq5uZ;JAA7}}Z!ap>0ePk>OHM=uv}ZMSWBs^*&U2`XI-^7KmJTV@MIC(b@VxpW zdFadU<5~YSS`9lEF_nKh_uE89W&L`7e!z zhT0fuYnH+V3;6r>c+%7PdDm($T8Ajl{#B6f&U^L?LOS&Cyn256su=>wd-j*7yve?Y z5`oSs3Pt&u;TfCH1wO&FzfU%0v*(o7PV@!dqPlO+@0(#J3`~JNg?T%4-lYwEnRDcA z*FK&-E}&gI_fJ@NJbQ=fe*L5^@pEmI2jbb^Jjnl+ROj&cYfb*I11>Y=K2@D@V~zFColiE z=k|4vfAJrmeERo(|5yKejXea!xBv7T|M!po=(oS$(H(yC|NNV;J^9Q3`Gvp54u4`< z_WrvyUG7@JS(aB#k!ueNwrj!sT?OeCpy-oA0yN;~p;HCh&$#%JxBVUe^jN=pNvmI`65+r4|_n+ERUgp*c_LP^JFaCk>(k5>fFz_IEanZv3j6#V=KrWc=zkeIu z#^=>BDJ|^zud=itrPN;Byy!c5i;iY?%<-Fh#Xusci_+t^JwLtezb=6N1mM{86(A>5 z5CN$Nh4)VGIgtt*@|X(p@vWg}Lk~&0Gj!n*6vZ-&gq{MZUf1yLyk($63^K)N-=^g`Xht zq~$2pwWq54&{P3q=GhVR>^ET^@S5eEP0oQ^e`EkSba;?0xkjPFw8%2)(irmCp+MzjGi=zJaOn*@j;|d)rgD?Or0Bc~H@B`Y+$$2tLMh13g4%XRRP;y-u_!BuFOV zJKMhVAgSdPudxaENy`&J87f3`AM;Ic6qf{8xqn3W0e#c|WCRefiGWSU{g9w8ECLow zGUo*(w+u;Fw+m)Gpc6qxKbe9QX;Nn~okdQw&%YVBcpxnxR!n%gFA+@)vM{Uv{ilJG zVHvR!fsk!zcJ?L(vJZ>^O29@MU3gg0OS);TpAawvAz=ojQtFu8NS)O}xK@DwDeNSD zo~_@}H6k@;i*TR1E8OQuPxFg4=!D7(JnDDWXu<(@a0D7YW*TZP z%%X{RRtjdAo6+=U#NvT;R*VDCEmvuCgWdrGaeC%6FgSl7^LhH+RSb%3dWE)F;7W$w z9WV=7MIJCHKCB0_RDP)IY5DcgDFZ-k0_Jp!m652($^b>vM;XkrUmKUurC)_jBmvVN z5ZOZFL&V6iv%p|V{4~yD!-b@OmaF!cNI+gWE0_fRp_i^h!vcRH;~@*Qq?nwah-~Pp zM$F&$G@@Au2HF`rHBm_-uALh663ujKO4}yTik+I1S9EI7#Y~>*y!bB{?56%B?bi>m zQ$iW5Z*f7I-CB2Jc4Mqjr|i@3wdeM&C(P;x8N0O%Pkf;4mBaslv*7}xFT#)z!fF6D?*N!Pm8Ei+S?T7T!+aI9&31)ym1aBr1EKZ z&XB|R6j+_ex+xRT=fLGTH-#;X*r^E;51wMfDNLTBW6QWHIJpHFfxR-7X88ozq@4 zqGqFuSf9`#00+Yvyuk#SAqb=Jrq>!%ZeY8Y`>j(ao|7AVcCd_Dv?vK!bWK3nL?!j50%$wFA9az;1a0xH}hNYVfEo%5$7Yq(Y%+ zDdbbY19>3~mXyr#g+2o^W7gnO#b#9wPK$C8@3r;__i-WT|1VvL4QgrhQ`cDd@h(JG zts-%7=;l@HVHaXUY}0>JH3WyS?V)+5QykRjH9}(Of0k(xl=`<0P{79RcJAvskaIDf zD5Q0;TbM_V%H4sac49x$OCNgNIjEOsONDNGgKZ2)6bdstsnD1aE6MGc=FcQqT4Ugd zMR5w5A(xiuE4d=}>Vz~7eoC@9XqqS)zrr5Y+lh@ zk~?&k6(g23xpzdDCh-OD$TT)vaGNt){coqV+l5`eoB)`H%(EVp8eg!#p|XhPsrzR@g-A~Cj@!8_=+jY)3g8J zaPj-5C{M`O6kp{N@;%%twcy5Uy7h;LJ4-EEU)QZ~m{!wSYSH>5-TD+&f7)4UQ9NKZ zvOvG%cj+ImRhtvuUo%rT1{uEMe7T? z^&6(ube3AQeqFb|Xj)BYsYUBIb?bLctLZGYXuYmmUpB3#v(%#XCEfZx(`q_PEm~jE zt$$!zO=qd4rTfR3A0xV9;f}y1zGOP;`+5|;$r`e^kHIw!5z`6?_u~2Bk)r&CanV16 zjW3Lb!^0v-7KqFkY&Xq)VkBVnl5jc;%zC&FfXAMj#6}lA&D0xVK7gaE6E}py+%TVt zmXO->ITGpsf(J0MXR~=!#R;%3-~@Qc1aNEOqw?_E&Wf$aGA$%V+DS5lMbRumu@2E| z>O&ktPGC563rnymqFIu`5w=cY-h?H>v`b_=nGS{^=gAGRJjwW=82me{{V5Jo%}K3Z z{Wompn)40rp#NA`jG-B9w#&8w-tWc^3pwV)Sz|^&!HH7{^f(@N?F(2#A^~E)tT!%f z)^h(-6C$Y*IER6H4;!&W?_EejIGd4CIF#h8)SN=vw=iaASq+xVq+znGmNX1_fcs2J z!3}1kP%Qm`ooBdElBfjKDc%J1fm^IbHe};8k4$Nm7KMhCn7XZT>njeGvaib0>%{Sb zEJe5}2BpOAu57YVtzi`@y@$js3!7NPN%rRx%&FKV+E#Vq93BTz$OOqMv*rfEj$suB zaWnT#wpC#YXeO&1ov~ulm{m4TJ)-?s&(cpV3HdTB5fQ zI`{$3N{K9=Vje9}bk3TAMMf(PBw8RyV1l`@7($HmUB13XPJ$&-l8iUeY-*IKkX|Qa zV(AI}m7E&NC^CSUA~(X3dbxle8YS>r<0M*uWS6o(M3ix2*lwH>hdD6I8mZ8BiM+}d z=Y?5yO$rL66&yW}bYApJWOC#dV_;mWL}0*}St4gSW0v-0I=X8v#oftKtuFCOf%E0< z7-x#>Lp;Z4*Pl?J^lN_wD>wS8Bi3zT;0!CNkhB5YxC^uz8vqvE6pn1bIqWWI16Ucu z2DncPvZ0`{4LEw^TXx|9MwB03DzX9a*O-DV?ta{=En+#3I-+A-Tz~ir8{62F0lXMC z*PzfmmdoLE76H)0UZ>Pp*lzC^2{ z(v78%zQQwmtN_TzY-PbWI0$14d&==m)&|k7}>}~dVOEb4Jc%1zl&t1u1 z+dnycz+$kseN2SO{b!#!^8HMA*UsIyAN;6s96~L-{hFw?;4zK zzcgGXzAAfK*(*SPj#g}e;m@;{yW?7gv-6a~KbEdV+wNW%M%7{ zC^-JhH-7OUEU0sM)z*RM#Z!4qL4}8EDjWr1i#kPc*y3ZDBNK5LV!_ZYKQT6MYoIcN zrKl@t>FAys<}(o{7>@o-DUk`qCpp;Sh(i`vyG&;=BRokGvq5K*4Br@d5fvFX8OL^u zipu*hv_;y`tkI-tG$b$D{Q(S1mh#5mksV?~f-S%k8iFJo6PU^!np+?OggL)5(T6;Y zLPdllJdmc-z@yb;kA2%sMfQxKc^DA&ox-3slN5HJb~beADP^qaKb3$x6FQk;yo1t7 zRL1KxXbCNE0#dWaB#;{ZA+E&n%n0Bi@k4=mBha)tm3Zg_9J#a(EC@=5a9nA)Z>I3uB64Vq+MxZIyxsl3#^w1S5OPdd5 zLbm|jSN;#g#Qr5s1^KJRh6V8qj7dE81}7m0B-^=P*PXs(+qmf)9rMh(0LnmVkHXz~ z*&BkVf^EY+7Le}H&)5$D%t5XpHjWm3k<8H-$?igLTx;b`Hrg6QhXJmA)?O|o8_r4K zfhMVi7~x)k@mcsm1d0eMJq|8{Vm`2x58|Z#8z0k4H-HO}ut$HvPngT6xOC_z{DtW9 z8>v6*Wa!59#0He|f2f@qBLzGd=Zsy`Z(6hL!5u(5X8N13XX!}xz!_rm^H%l?~y%rFG#;b2~b$gt#RZsJR3mM@|eS`^BE>XY!(I^vQY*(JE& zTPpv#J=I09C8gP-bKvhXaB!ss-!JdtIMTlQIi^tO)U$G^e1juvkC%{syr@ydM!#k)be%xHVGzI#E&ydt4NRmGj6nN~ zQDnn9n;goWpcX4;cd4@uZcYdk=>^CLT^MtnW6s!1rfWP6(kUEZa27KKd0NjAFnDKi&(B@}+O*cI9C-U{3*N6@D6 zKpnSr5fb(<6l|{8r4}J%0w5Hj39O&dD13Mt^C3E=MTa3vL*5#pv?2EeJl^;uXx5Xw ztY4XXLT8`)B{W2#9KgXCb(ga*M^`HQ@FDodVt}OeJ_~nIXk#bw0AO0hb%N4K#pm@a zmfB2TzoL<}==AnTxqM%E#+ykufVa}kOfT&m>^yj1JJ3DK6P(fWxVnT}X{=nJ!s~xb?Q(@Acw}-! zo~>A{<>fi7PAAw$!gGJfQ*hV>FHt0PLI}~CgH&#hfW`dt0?={Bc7@}}8SuUgAAjOW zVb&tf80nUP1#gJzK_^6;6b^J~2Rvhh1oPSn0)-TuJI>9y3YxjHX8Fkp4pJ?H7jDQ# zXl1Yo1ngB_umgrT53*MPRAVT&N~ahi4j#skan?<`X}EHv>wu$0Wnn+)oPyne!+yV=cNq&*-?!3D=EG#m8_#AnHyIC$uR8Z`Z z_!f`X5N)Y&_(KhejT-YQXmpL>;=pbK@ytt_a0n*PbqEu?5>|eJFaeC(hIqS#0hZ<_ z<*RQl9wic+e`ztyn-vEy7NmU_J4X-+1R`31tIxtiSD22Cyci%I{7u~D=^W7Eg*Wg5 zd~xDP=Axuo-$Ko@75=ZDgpH^A9| zpLr&ej{ouPyb#G6X9d&Q?)=hDEI$_Tw zyhMz1#+86YP%|tM2=*3w&>z82rgF2u0Roa6m;|nuT97F5Dpa*^p8ELXqk94WaP|y zkrG@)+HR0I0=)3abjlv2tvO>ZaEZ6<-r$Auh5GCUXSH?CU5Dh>UdQT90?5p@Gwkp&J5xPcG%k_HkA zn>k1l2`xV-`X0kXXF^2~u<_vP0%H(aWYz29z6`hi6QFO32RtPlguamkIF=ZqRAN7$ zoJ6H_y%$-3`-u!kQ|2kYAe&GN@bBTQ?`Lu8);lBYFGcPQe6NQ2O z+K8g$5p*nXi9Sf!!1)EPQl zaD`~JBXQgWH~F!n3yy)6nLYo;lW(NA@hZXV`Xr9ThX#yJ!gF-O`Mm)&Hw8qd!`Q$JqIEa9as*ajFXpqzYcT<6tOQ{6 zHV)Y)(ys3^t{$LTbbWZb8QXYa5!6JK% z0CI6d1*KBMQE8>NvmZphNJRnSwge`q9voE?=*Vg)a$>wkf^9h9pTtFCkO$p{H$YU4 zd_neq*p7|0ar{>_SRI?Z(0{M_b1wD3v;RT;0xc<@1RGcn+8uumYhG;aV4n$arPDzn z$-Yl~;wuP}H*Vlu=Lc#N^0OxXE6jU`_bc^21uOBN7~=FHgXZ-$-SOrwusY_5>VX^I z`7ihXJPj<5aWqgH+VK@k`(G6|LNywISHNvn)&qDvbL!0}02lyD$=|jf1_G~q7+s3q zOv7zu9F!pAz~4P_Cj{GNH@pbPLIbXLeP;bP&hl0YM|28P28!^Js57&}VpVqXI=j_yr=%zz-*p#X`Ja zZZ~uK*9&B%X_SuCI2-_^bT;cP9P&cgDT@WpHu4^E}#5 zqP=S=HFre6tzdJtx3;=@8GT+68s&`nA-;q)Tb@TbiyzXH!w>rq zuVeT*jvxL96r?S}Rd5t+$HC*By|4!ydcjuETb*2UM|?L=!=?3nl505s(OD?}M5UShIpZ^hu+woH> zmCB_`samR)>Lst#C^bv1a;aP{SIX6Ltz0jAa6)~c84<$9%Ft=H=Hx>s-1oAs7g z^2%Ptt9muB?s;CrYkI9lsZnlJ8r4RvQEzySMx)tiHA~HMv(l_KYt4GoYc`tAW~&7h zTbRBD&@BvWp-R2*uEb`r5n2cD^3{n>=W%>Cp+m-WdXv$3$2#Kk0(Sg$0q2O13nXU0 zEs#9=(*mi5PG^iy6?8;`>0_qU*IydQL}l~kfw{Y8dw1j`51lLc;K6!0p8wg-FMPOC z4mT&`(blz&F|eIZZ!``YTjOwjw;z_v!TRIDwVe)izudSI4uT*EE0ub)+^bhwgLbw7 zAm#GotCLQ5b+dmt+^mcz<=S|6Q!}A6+U$iG2#$rNFznYV{mP&g*4qn*zL2nZ{}Ess zhA0g056YEV8Ol-X_xcb*`&b(Ts$OUL;m4LATi&gdmV+I65c^^=*t}LO`kU95AAD@N zF}b!Cc2@fUQ*PDjUZr1cl!8WBuMOJA-xiokvsCSt%YA4^KPb2A?cCb}Gw3$z)u0;I zy;8kitM=L_{tk$$i(nhZEX%Er29N)I*wb|W?6NNu!T*Khy|7a5k2>bP1ECtpf>5s# z*7`xW)P-3M>XlOawh}EzKzt{~glb4JEkwq4Z7e?caV4`RGNN{a^6bKJMf2C9p>h(sq8}tLO zTngHEbTDDPDHd=vrnguHBwZ|u=!J@smVfU`FvbK;xV%BR6!yA7tz4}&+b7ANx1fz> zFH*t5Xx!P_-MIp2-R2h9)#_?A9~BMs{Pd+d{ZWjf%Uy0Y_t4to7o zwcD(hD?sWr!$r)b_~i(0d77aBQVF` z+5j$Sc=d8MXq38LxP)%0UHF&**NW}4+&aQOE3mfRMt50$_0~r_`0f(k`>g2GNwqv^ zSFZ}y2t05xY`^<`2C}xJO0ACwy1Qkg`AuhMOwed@0jmny#MM2320D6xk$&ug?QwQl>TKSeZJt+&pR zM<-YW^x%&pO5YAU%Dr$<={0M}USLW=wSDiwUmG5V6#@J}E$DXx(z&7)vlRs0eyikF%1DG8y=wd1{Iq8=1HHW58I3mXN4_idJCgt&N#KCfFzo6N}CSk*%$=3+nJ$Ua!~iO1-Yvu00r!MM71*HAT>Q zkwj^oESbzDXjQQ!Y6ZQ1t=_Hn+x0k^n@Uf=nPjdS3}H=Be= zg|~t}65&aR9SN?Af>Iaj$$Ar#4oc;I(Eb}(w}-cf=YU&qYl1|sPeHaW(f?(XXP1i3{OVc5e@Z|fR{4F=UpzYI?j zApL4KyX_TzOAl@7+bngw(}Csp*6_hR@@AZvw^X_~9`VC>>e?LEm;K#dINq@{>%r#b zU3}5dN_-S6S+#(s9=>rH_Rn>%IZ67E-aX}FqfxB5XDan@&_Pxh9b|*o1Jv?`L zebf!scka#bD~adAs}noHU5eB_wz4f{J`~8Ei$kl`blDy%E4ktv@%hD6Z?rjBy=-Mi z$V4!Me5z5UQt!dWiKXJ@KMP0f0Av<1y_LXs7_rS_r?baqhM*;#wN|WzFjQHodj;g| zo&ljAy={Q=7i=my1e{D{vL`GxJI(^6N2e094oSqmmD{yq<9H8D9ZiL>R4P`ACHD+A PK~~QPVXxM$)X)Aurgcc; diff --git a/crates/testing-utils/example_custom_hash.wasm b/crates/testing-utils/example_custom_hash.wasm index 9bc00fe38bb042c192b0e416de8015e9ca7fc9bc..4a47aad90ea19b1eda958fb09ed60463190028cf 100755 GIT binary patch literal 34423 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 literal 33667 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¾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

dh;fyI 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 D+hYJ3 diff --git a/crates/testing-utils/infinite_loop.wasm b/crates/testing-utils/infinite_loop.wasm index a19e84182b57a1dec5775037e42459cbcc47d38c..c8bb9c5a44ba8a8c1a68994378bb04921ac660c0 100755 GIT binary patch literal 21907 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 diff --git a/crates/testing-utils/template_barebones.wasm b/crates/testing-utils/template_barebones.wasm index d54d0dcbcfebb503db27b62826d6459595643849..81fa8ecdca10d7b640a5e79ba33a87b49998f0d2 100755 GIT binary patch literal 23047 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 CN~^yB literal 20971 zcmd6PdyHe(dEdF`@-;)wE>{{`E3M?cq{s1Yq#f~jNv_*?u41mTmSj1$k-9+(>XN+N z9nS1RBc_r zXk5T;-B!T%_xsM_V|GWeAQwip;@o>)-}%n(dz|k)NEL2hT2PKko^&@qv!;eRc`4f7 z4lhJ%A>6sLx*iU%p6Q08(3!u@QOCAdFKmRPondrl7;WuD+ap)$~oKqNBiqqm*)bM;_68d+HH)Z*R}p<2(K; z^++1&@qfs1Y!&rLjJe2>r$PbV6Q-sbzaT3vS$J_DV|Dkwz}2z1j_X8HX*Zcb-w7SZ ze_A;yB;s>ODU`;MQ1c3}%GGgH0_SO+S#X?K+}U&%7vnBKN!;%4Il=z^HI?2|!M}gn zJm26m`L~_9#HHxcV0cxlTUxCP(P$WMbO)DOot^E`;1c??*hEU-(h1wEtv6u z(zn*$|DM}#yXEMuM}GY7_ntbvm@QWt^Z(*XpjA4fJmoprU)tZ_SLs(><;`Pk`}i+02kMOakIcA3uLLJi^C|L@Pc_kbD!8p5 zsMG52?xVb>n30u?XQvq{$#{C2f%*`#)aNis2S80&K;DmFlqY@tJsBmWcvgL9`fA3G zk@)(%k~@aM2~K8zk3(1K4^TdUMG5ags((sj3_*rZjN@;yRyut~O=WrGAaBC?Mw&58 zQ)o|V-s(7eL@WCe`^afeA59+>{5+lgd(1nUzRlM0wC863zSN6(v7>2&bM|*kt&|EL z$J?Xn90o%ff1jgWP+4R`_yUV$rPCil4gT{SkZ_v|da4qhi+-PCi=56lX|g8WK5eqn zo?cJ@%+u-jDiW|bppj^Fnl03QZ~nDe*J&`uW!HlcYgnmgPNaYH{&;R+W|LOTXQ{x}~>&Kt^gFpVn&5^xBtgK z`_kjT^l!iT)2#64j-&V9Z^q@V<=rKDH6!wLKd(JUEDh4jLk~y!7{-9l11Iu2NO}0k z+un9?ayJ*7A`vKGALpoD&++x0o*UqC94U25$9%nr0_X-Q;bpO({TxB@+*3M}a{vZj zQX&)WQ+-GymeFaL0tIvB+=659a?m{?z=u{5{@`+}t=HW@VB&z@g! z&_5k}>|qQSUT099Fz2c2YO1cQS3JBJ z)rHQ=Ag$`UQ`Lo^;NUry!&FyKRri6Z0*V+2o*sjz-v&JJHH(}kazN`(9U*3PksRn? z??Eb{n6!wPq~N4HC+B8jGm{-fj{1sdqA%mnT%$$f`g*3mD2R21E|oz5 z00e*rrU^e_%$&%>NqffLrzPwUZudZK@u-r=GGd*6#&u$t0VoJ7-Z3Q5nfKldqRfoEI0u@Hv6PSV1zVRs5oF`uV@azd9f3@n7iV|5TiKog`k3( zEO1E7K`D~#!5Pzq!->lffgWZG;D8S94D={??z3=CAV5qNBNuqJV38Pu!E+}pKDxO; zkcl}}OOw$6B)}Uo?0bRa(Tr$(1QSnoj>l4Bn8U>>Fv2lNb$gOUCDJHQ~gO2jgTN z=pib*Yk6Vot7MBpf@ETWyA`T#hkO$r#U+7O_Sfh>pl{}% zv;YH|3}_Di8cCg704=7Z&vOf~OTd3+D{tF_IvM2bCtYwvW~j5A&N64<3vT3X(vTJ~ zQA~Kb&y!6wa?oq=(o^8cLN*Z)VMDRIJIWJ200EZ3jY!LbhZVhqw!+tfeOL%uN3>%dQhzZQ%$l53hieprbJ@kj;3Q=YE-q6c zn6|A+2i(CC82ad`Z%~+J6YtCv&d@h!(;FF^G^DfQJOJJDlrcBx9Vn2eZ_)sQJ@n_B zcTaIrWYG(>#XMIstnLCVL=`#Ep!l#JNK^Ttt|#Ts11Bs2u?d*dO;*N1jjaq+%=jpS zS@?}{$+*m`z{DY-+gHhKKK2kfvT)`(nUX)lv)FJx9-PLs7d*!SA5s4 z;0qb|nHW!VGMpc3*w9tOSg_|CM$-@sv~%LrL?y|%_$_D#L7-Dp#x}v$#HqPCMW+T` zOyw|f!rzIN@PXKw7Rv|Vl&Or_H@P4Kx6xhpbb~sjpZcJl+jAbXs~<${&JsNFzS1iP z|DoxBXXFl$!C~+(um9Y`3rW1BsiRl6axRBteNA&AhH7!(?TX4NxHKsE#HG1#X^42> z(v)#&V9U6)IF-p=6L%P&dNWEbA$_y|B&KydP*GeFb}!(H;>Hyr#>*u|)CuEl@^hZc z;0KR2yi43Than_#NpH>$hwlkM9ZP!&JE6~cY?8o!#l)!z6ZfBB!3lJpqGL;W2{^e7 zj6knUWtxR)8`*AXu}$0R00z3{@6F?uj49Xh55OB&aO`HK8we-W8uy!RxY!af9F8M*fjdYX>V!E=s>@O21)CZDq+t=_{u6 zHCt*cOD;-ZHKniHQd?PaQTk0&`i3pFl_eLY-!i4&wxzbR~7$9!$Pulk$XoZSrM4A>V_gk_$AxVoI+atSq@G{i-SbhAp*~B^RZyn9|p5 zsjV!zD1FtGzHUoxWywY9H%;jqw$xUZT$Fyxlz!Wm+RBoP(l<@%cWtSyEV(HCjw$`V zEwz;;7p31brTes~X=TYp@-0*Pv@NxjB^RYnG8+Q5rM9xXmy*M_y=xL_j2>pQ^ zU7ffgB0Y(h` zP8)xU<7azLYgYd?%~*53#vSw@=!(%ah0XRCIB2}zi5(Uq7Qk7f#~{Xz6PW1JAgRw` z4T%7V@v_;t(9Grjrx}QZMnDb?%^o)960>(90pV;!M&VGBFH`t=oLHmH%(5Dg%!FaG ztd=kgd;on0r9gwxC=|;)U==AYlw?){>lAMc`oJw#D;vT%jUy9ArA473C5CQm-1?eK zm9nqOlmu+&WGTW;F(@T=cV&}}Y7MJMm^~y$S=huPPqIHBV@$;=<84)U62s#l3Xve8 zvTJTI>{_VMh?}`@v#knKKrx|mO~i^$Cs1jedW_?DIcOs)h}iL9s49q|BSIx>cf8}! z&uXMGEzw&D9e4m)NfGiX=i>#6iCI&y$ni=8fffcNGyyIwh7>39E?*_y1tjAj8E>N5 z)F@FQvrb0GQWN?sF*TG?WB@UZ-3VKnOzc;HY`1^P*oO$YZxSA;zW3m<)iK9po%Bc4<%0QQe?4sZK@TM$JX2f`@f@F3e@KDSul+w*xzSf0vTg%_Gf+|?X#?823zS+L02ka89@~I> z&|T05urh`XaGw^#hJsFPz%?7+vI_??qWthuV;caz))ZuM_k&h#W5{{bF+Rq{^@snX zv5id`z>8sX4GPU;xhzg+F#$T*>y#V^`)wEnn#!(HA1B1w-(Zw)PN#5qVoyy_8@stU zn&e!h%{HQg&2h6cPalJonbW6$*JL)3tz-`5-9QL=s+dpWM3fP*15>0qKBD`6j>c&l(j3pBhGxd zX@)^_e;hiW?F$~<51sVFhER44fC@Wa+JhL3kJ}I9sS&=;^bD;Ox4Vty?)a z=A`HZZ#;f&A1rXNsDi18e>Cm~@z1gB%Z4*bhq}hA61e|inttycHT`)9$KH02w=i=n zgBNw)r^tApeH`y5X8IzUJ0JopwbjL38-2lseAMe+Fh9z1lg1UW6r+dX(&LQbY1 zJV}nS|G@IBgF=6a{HpXxrB}fG9Ie;^;4dWM)AN+VuS?ap;;;t2V*Y`ww1H$z zo4lO*@`M2!3U2V~^`CnH3+gOhjdkF8{zML4P~oAP3P%ChqE3(;w)i;B5kwq@I52c4 zhz;%A8b+DIQq&W+%Zy{QX&$XoaA7OV=`rNwaah@J;Ia3(HnF&&gmNs z&m$w{#V2#SLq+BN7uq6iXx3{0M zfIAZ=nBjZ}rIT41uhU6O#_~2K4Ky}@H1rRkGMUe;03JZR57Z_e6AVyEf-3?QcU`wm zK-;ct3G#F$=TBs>Q6pizRyREt906lAh5wn>zzrR%yu5RFI1Db;2j*uaXhtj%ff=!h zja2#*2d+>##(W?Xx&`RI3cf5R_K(RJ;#Y?S8SxC9lX&V4Bq0X`+u7eVl|HXEF3*mS zd1hSzWuS~l;qJWb4Z%~vw&5Q02zTgb^nD<+pRI|Fqr_Y!bInDvJ5c*LYa0|HIyCU~ zX}y$>*WBaa14WVxF~Yro2Yuk6#W5GKFE{tZ+y&LC&X?eF7WAdpMXEA#z#@Qa9j|n#D!5!iYizuN{OV zy$JVvQ|3R^Q(Xis2?L9XfuH4t9j>(C`{i96M>0@9#SrR@`j)KWuQLQe16-3c8AzPc zuS*$Q${Xw=epcN@pLJHI3CdBMT8$uKOvICM!$g;x=tedmI2)00#U})peLCC z0_9J$oHHBN*+eLNY#;wArW2=K+?)_9QVWzZb)n5OY;#I4+NzUo5KiF$gT2@;h=CoF z7sKu)EfKwBza(AQOSjqIW$F%;eE<_MR8t237H3>|fhSn#=@Ygu)QTzmX|O7y-Q5*& zJG4NA1oRd#(?_>3CG4HcYp&QO7gNXxM4-`W+ArMDFB%p;Hl6b!I%PzMCX0RE8lkjd z1{plQ@dWrWojh+|8GAx!Ut?-Km4i5dQFpj|a&)EA4<4XzEe1?FA98RPg;BzBI!Xx< zf@gkS`e0D;hUo)KZHBL3*x%pBpg(nhm}{AJQNu9nl389dv8}lXMGh|2vIkzOb>W0) z)^J{9mXCquDrZ&5<)5;j^q<9@^h_W$?Ptl}XTp4YR^0<)9*AR3W0&aQleHjB*Ps_vXEYetv=B z!>Egg{1o6yEm~en5&vi%>yAn<= zLz*B)ZNq%Khz5>9lkzn;7Y`GO_RzYYvnvi>EJy|(c8(wt2t>31SDyt#Pe8{;-h?0> z{0->xbPnwB!W*yvF79L|^N>=w7WS82cfVB`BMR<@ulNJesPvZ-PErDHxx2L9RCu5B`s>-PjMimoZFM%NK0*uL;ok7`G*^%(fd^&7N zpo+W2^Fyi48{jO!XP&{N8$7y|lR+}aT|sx+oA2i{_b3&7ZSSLfF9TL*5_&e_P7*oC zOXFK3SgXz((C1{q15&w+P@ND&O_I!Iu2)d5U8sEF6ae1?zXd2E@2 zH8=Z5942I$fn4L>{M2ZVPS&%yxWKKfcSivyyRsNYr&-ac0(Bg-tp`a7NzSz1U&DFiG4jwIEUQm3NNB zw1NS{enqkgN|qb&Ad5$zZ`h(7-zzg-0RoUA&dEq}^Ea?M4`nT%y~DnqsY{uwpWcTWmqZf*9X< ziI8Wl;@SW>XT)>%FcwLZftx`6fM>g?XKwb$9Ty^uV0dn#-?(ZqQEBMsjIz&xiE%Z+ ziYTz3#|?bAmn4`_*vvtYNNTw`(f0{WR3=qS0vZplF3<)ui>!J*+?PQk4B}BNiNpa-U7Xg)e~UG))e|qp(byBdv0(IE)Rcj0AWyK-BB(n zsKkP|;9}+lk~vWr*ssPcN{pamIY(4irVX55;3`#e7sF2M4ui*^crwK;GIN9f@G?8k z9@Y-_eJH`XKK_%*5*J({8skV@FUC!N?C1h9K$+SNu0Q@(atp8W>|;wIwvJ#9J5dk; z0p*EdCJTCf1Rcf(EXdZKMCA~! z05AG;h_#piG*%{H)V2;;6Ld-edx&z^FDE$=0ksMn+|F3}P-8|%omm~lKHgMEA%8#w zEuAws%GU)+N(77OaZHel8!9N38ji{+wN8H&@gfxkj592Lh2I!}ql$waSq+Vy81Io_ z8xH)(agi9qgKoncU{)Rbg7kmUuEyGU@+}&yj%{2Re9(TKOWpVEzfwO-OUlIo1M@L< zH<-hk7h5~nX98WRw4aZ&?qi?%0w&4p*Kw}%rrLn~oKf%sL*V|sN_|MdN`lAwIDJT= zczw-Oys-+bjxnOT@A}vO-Mv3U1IwWu4OBxrzJPB3gW^W0VFUE?xXsFZ5TEp%c>4}O z280skYorH=z$+hQm!h{dxUGzX5=0#M-V=91uzmRi1{RDN=?5Q#O=SOx%=ZkR$E$2F zmj1eSQpRs$eZze;Wj0FLTCKrVg0@^7<=1dn=sCFrk@ga27&a0&=mI5)AgzavHv9da>4y19T6}?ML4e?^l>&=PoVqXI^4zEpr%n3oRLxB<{$@?=H zAlyS-M(Ws+TCG1gQk6aeTs#MBoUak!bo#%>9B$uSQ|UKj4@MgoMi;$7&$C}H_g1&P z(O}?hUmOfa%gR*>r^`yk>?e+A0w43uX-~e@EMFfd39o&16m5IGaCJTEDpglm^&ZrH z2+svP*H_y^d};mO?NRsM?P2F$X}mn#UPt+Hl(!wF<_@X18E&k0)>bzzpzd?1dnf8V zrImUgp0oTVkxtnU`6aE{^gPmOd^nygKCDB&j^J|?AN~gxq-@Nq@F?64!^^GRr~@84 z;bz!b9bNSXyV0<>KDdlF6(_5X;dvZS@^=>e5vvXeL|yNZhd22h`?F_vHZBjt%~Piz z@dg`S=sohW!AA6m$1mYW>K4@Jf8^m-dU+9s1z%uO1V<0 zR4aa^R;gDS)k3vcEmh0aO0`<`tF>yq+VBg0(J%RBzv5SY->>;~zfmjHinUU$T&vWo zHNRG?)oYDg9T+UakA}TD@LxG{9m5-8VqGfo2V4sV}}Swh>;6oc;F&>R79F z8NVvfA~3DaXfWJ%4*B-Io_zVmPjyp#HPCDi}2zhu3rwXZnvoW#oEQF7&XFfvC=D4+r@4@Y^G}Cx9ktr48{G@hMrk-IR)#wp z287mNqZ6TFwOuWjy5&xx64q+HcDtE5@B;!1_Z~u~W(S4lm3FmTiF&=T4KY`XjpmUi z8kGIk(u1E``qa`+sjw7o%Y)o6FNYgfmzRT$t4sHPYNi}ss?F@XBGYTvs^zd8RsBM>S}Av$$NoA7RTaV3tXUQt zp9nAiOw=*s{K=(2Ml_7Jqv38;Ds~4g``&_3tz zxp!$){cFS3QPjB1zb&NEqE@d&e!W+#MC}s(mYcVJ-kCJn91UTKUFb<`b)&Vp9(E!! zwDgH{OTz8)a(i$k>Mk$eH@L!r?$wPMVTjf(FE{xE9LR1j85vy)hilPrdHIu9H#&!9 zrwMP z56%*(+&nxxwC&N5K6?3+^0d^Vs8cWdoqD0#g$dQV&G!ywsnu#Xv4h!Rd3oycm)p?= zV#zsRY>~^$=LW+|;mGv#@$l;UAQTKR{!*bDR;#skJM4yju@E+IYoWtxT`b^mPH(ab zNP2l$L@%Q#82NWDhC_5vhs)~~3sI*XR*L0Hy?LDYyaR14`ePOB4Ti1Fo$ZUD)~@$L zztXFeLTD*?Zr=Vke@J$%wn7>pU#zw}l}1>F1vDD4I70*rP_^}?+e~3#Y%4&(P8_QYQ5L#Hp=aKwO9gECpleAK$^T9 zf|hRp1(8zNZez-*^oos6ui7g%Jvz!s+sVrzMCypd@bf+wHbAD)_A3=1!|C)o@B{5; z?jevV!=j3XZA?y`!KF)sjYd1{tl`IQI#J2DvmRVXO9DRp6pbwdxv=I}i{-FZXt&`K z+J$ER)0SLgVxPsvA@*5KEz15on2rc-P+NCMO~gEiZqZj%&t6)koo4)WS4?kyLAqb`8N- zrQItR{ZhMm`pF+DFJ=7b5drm!P+}ipo?mN}D(&Wvf0k@C8t)vDPmZt%=)fP3NBVBy zD0ZS=sZ*~YN`)zf<>uY{KQcZn6e0XTCG56C#2h^^(Y$A@m{XN66-0;3jD&#hV(X$& z%tjctyN!ZhDk2cBb;`{%^V6EkDd^>e)?jeyUc|eSzdZ`!k%Ug+Zvb$=D1eV0?ea2g zmectn9*I2!%JpE&}0Egas2< zMPZ?h^<=dUNr#1EH*EeDf6@~1O0_fC*}$R*!MeO*;tz-0Xjku)YQNO0zey!5{iHU;D3a|#6tsTF@76l){E0(|= z*i;v$^x-OcF4i!UZeo*T*lO>ru8$B~lrata_;fa}qFJwpMO+b{Bt-aCueX~k{HZyV zC2w)m(N+tV-&w=&$q}1jY~E4H<>7$83#YEmVSU-%=|sbAomvk!F6`h3|D4z-u##07 z6m{?ufKm5M`>GqK59!=hT&~rYOWvtcHR?5@a<}e5M=NIv_`h*_0q*GxdBrZn#wbx( zE*6&yS!UWr=ou1;7nWr+GZ)qe?Qnhj?i7DS z@Jw`Nq_KyDouIq4(vGsfqsN_#1FO|!QTLS-UvUrlb;3kvu+dw+;G_qLM9_o$lA%f@ zK7frAM@^RhOdPTUkXk_ZP7FU&h;0^~OdpwPf|6v~S#e?lsB#i_3(46%15!PF+W==N z*i>>!I37!-k2z|#odZgroJzqreEI7xxoFRip81-K_Fj}OJTpx;U;4Tqe#1q3-@NDIGxuD)`^^_$x;Ia=G_kWXDC&{ZjWLa*TfA>+UrQd{V6jGXMDvh6ke&Qc; zEtTJHOiEszse$YYRqcD?zJ0Xi%~*{qtn=7uqb`s6J_l@{s<-y-dAmJIy{jzCske|PNsFl(@X|`C)Yf}C0w|^A z3;dq~Ogm`}=#0cHr-Lj_=^kj4h0TktoM(DWx8w^N$fDk}tbbB|($+lRl4Zj!DzX5) zgOnZ@@{EFsc{_)cI;Z6O)3CO7BpK{a!UzB0GxmE}zukAI z{m$zze*GKw{AiYJdDW|a_~N~LE_%aj-uU`g{m`2)-TTJZC#UryMO~Z}TYl)GAAH@b z-t@*x_r9u1oD96+nXkR*($^-_lj|bQ^zRs2`ksp~y5y2K{!p@S;Z?5^rN8RpH@qfK z2d{e7YcIa&O|SaFi!Qx5&-w?_Gzsb8WzRVI+uxf0>nomh%IDK>b&G^uMQT>A~#B(}U@i>D#mSrte4( zrSD4Llm0~d&h%~R+tZJvx1=9Ve<6K$dUN{0^h4=&=`W_APVY)Tp8it$rS#9zKTrQ8 zy+6G+`*QkF`bfI)=XZCm&$482AJe}7JJ$G{Zgm>H6xojKd1vQKWsPE*s^Y2B{AE^Y+sdS+gl&^{zN=^#>B^Z&5`JW5+6m9R zaFm6#=D@Ow;p6$pAR>omnv`=zB-LbT(s38~_8P9OhCsoTe`t zf?`T48vRvq%;7;&)AtgkGIzNca&vAP;s7?vex)BN}Qy$&coW}LSCYpz|EM) zw|bqWY)Spt=+2;@;U%FJyGjklrR*HlsapYn2%L4)0FE5yZpCMA@Qq12DrfX)x;pK6 zx-iNtq)XY>X;(kvX-_z%>y=4g3B$<(I9({Z!s&D%tPV@84jWiai>|QR6&>`7u8=z@ zI-$KYyASkRgAp^Ga9_Gobc7oIDN)mH3<}iHPHUJB9KPni#UOkk5v>fu-|?Fkv>v{g zu7rE8JhGOIuQfamhrIzA>6yv4upfZWO|~)0VR$Ts0vKHlE6LqLL*8(ZZAhmcB!pF0 zYz{K>L5A^4(VrjWScBXe=YQn0KUo~Mgq&@$9u&W>UQhLgv0fKcJlXNo$kNCz7)4s4 z&va0BAJWOl%Q5UeGcnl!(`5lrG>FqbWcn9RPY};h)wmY$f163IOz_TA#Beh-F$~{e z-r9p=6w=+yUnle;8je5~>+o=d5=+_LX^Fw%rmAM6gXT0gft`*@S{*%US`GJX1jjuF z$GtTiiyF#Q6zC&D7IebqIFxfX7|A&r$P21*48f4ZW-lU2jN_~U-;ICQ1OgTAXR1{3 zzBFX#jhH6AJdlQy;V@A6&{a@sW_{RLVl*7l;rN|;nU3@v zJ8!W5@MWXElS3~glTG=qkQBq!$(V_3uS~i%Wz|plE1X-RYGF%JJYn+JC@U=v!8>o=}zi|7sci!kEE4&X`q57ln7AyLQ6{T2N zV88V~3j1RAc_Rc(C-mdAUuTqauW%galF7QxDChc`a!%d=SOholuLt&THv)F^hQRu` z3|KEP3+!LOb>OfD_RvPa9x`BWs)60Q0kESJ0Q;qlfL+`W*al|3fW)+;-f{bt8ueDd z^Y$CwHIzrK~sYt`?gRPEi#~ zj0Wla8*N@yV$xNGp6L=)7{p&}J~u&YL6qca#Ln0h-bxxB!cb#L{Xuy7iu6!exWI(p zLL{BFjfBpc4dFmNgmGgCJdWQM*?Dn*NFM`};1*b$Cj-+NHk=oYP{05OjvX$C8D^La z<^;bGP?-Wlv_~q9pCY#(MKx7FCBjvdOaDiZAfL6^+SUf#V@lPTzH-4H)*qUJE zPnl1QFcic2K)Tt`BjuhCnPmZ98Wuwt7P-(kwsFpAwbZD5Xa4$qZf^aB#eZE zk>+MoF%m6JHVbh~vBo+Wgv`a9H#F@CcyvtBus#&X^`iwx%se} zbQ2K++_3rZM%a9xSW6;=H$ zvt+aZ*bi*f$}82%4^*ve8U)FV2I<_hQLPuN)=R5eBQf=+NSnh2bletruF~+SG5OC;)hV;PpOyNnv7`=dS%SLkg7K8ED8b-5?%PKc)ROJS%a${Y^jIXlF z!HudMv?|xuRj^QNz>aM+9dFXu_Eyt@3El}MvEo^+w^a>EFDxqz8dD{8u^_p;Wzscf z>Y{9>ra-!(C3hOGk6tDAtGusnu^?f!V2;$H)uqAOBV^VKF0<8x$92qiF)1LHJOKJ&``SK0F^q2R(pZ`yJ zCDrm}J=*K{Vn1yPZGv6mf9o(aS0!Iw*jFsxw)|Ln^%avGuV<*S4p$WWD*NabEl6}V zc1{arhF~3EWBn@>gC^?BB5X^ZZ{>%$MK8uX+F|QT(Z(v&KV{fr2wfB7(g3mT70;m( zWOg^6WgB^t=gSzDHdNxORX6B9cT^WA_S$z4e%i$f5QJrk(dk*pBW0!BJYZ;}Nv^ zMw(co5g81IW)WTIr;BX+zs%*zLw8Bh(o8fE`Sm>QuIC9_kh5TXVTQLk)E*B6pJw`x zrwgD#C5=;LBNjceK={6u#XQYe382$xyMshE0sUCvUZJ}5fWGr^A+6HeaEeE6ZMc7g z?JX7p;7Bn2h`|zn&7q?OD@wD-ArpZ9d>P9WRq!hMUDJLbov3Z?RybVYx8bDZrF7W~ zVk#N@ML%>e96`1Kb4k%(VWNqIlEDmDY=Xr&eups$tkdL;d5C9tV;*8L7?|kLf2-(; zR!@7gi)%=i{*#yR(|Ylx+YuuGL>aI*U*^SCnF_k1>wG=KL;KU#e(TPr881qbu4D6} zh%b>I@YXHbCf0hT$Jz%K;EkZ@%G4x4r?BWt1}=J~Gy^uxu4GrsdnRC4rs=1GYoO+;0VmMowVcz;B1MP@>n6?oBT1ZF6Dx+%`({OmkYcrzEt7yKY!%jE>?gQ7i^FXbyVWR++| zem&hW_;z@i2N+CNS8WlSZbc3%+ZwB_GBmxuEn0f{ifInUXlOIhl1usvI_#SH7PqOz z%B-1#Za9FbO1vu!GHsi#Y#Bppf{KM&qrCz~XuN(e)6$ZHgT5N9OA+*2JL)&7=Psd7 z7(`g~St%CA2Q?=&4{!y|g7atROGrilOoVf63DRcg!T5VF4R2@Q6f%euGKdsXWUMSL zr<1;Pcir+b5t;vEK(?}Q2*3gT-hE4^`vAS(F%qJvpyXdSUAjuvUos~&j70f-Xw`}iIg`4a(OBp`kpT$qH7Hw7Op45UP;ZGuQM)WR zoOX)LMv|FKK?qYLhv;m4jnPRz&`e~+p5&&L&ESB!(g@WYocpNMCvsDR1AASyl1dny z&JV(%9gVFtoQ}YeFc7j!FG6!!m4-P5eB}7D!ZuZ?_!Bl!FAiD~@e#qBX3;jy;_PJM zIRw>8NLle>xmUx-Y;vTO!)HLOf`$wk&S)8pVtZ`5H^y(VlR+ zj?`_FjCX1x%%(^j-YLr{W5`0d%d1}azgHHA+CUTkq=`*$Sz5msKDK<7FI0cB_>|ah z>TfM{N96LjLdA?PS`w7Q`jPAw>^!3^U&(0~{qshftVkZ$wQ#_!fUlll;gkhjIF|Jv z!Fn-0M7wW-1`!6GO7|<&g@%|>)h(GF>%beH06brlGVo-;w8A`i4!?ot1!lpM)7u1Z zX#?<<1Y;R7YGK)|2XEm7;Q1<)f#_%GZ`I4R4<v1|_c<>io-x6zPQaVdKxLq_nLv8;I@ShlotlmDd!5eCeXRJG$#>%?O28Yd6h7R1}exH1HZ?2Hi3f8&kA7`e~}|UKrg)T5b12htw6D zLnVwMpv*Wb_iXw&*|b`_Nu~2+>7MWF0Bm$Uy|D@PbnS+P3SwnzdyHJ z!DNbDtcJNrCiJ0lR|1(YFc`sD?7W;Fyc;k!Lo*w-YksZvoW|{S>Oyob;GlqVcO6Y_ zQ>;^MZk54d_+?jdNM5YX73Aa==1xI!Ku&!8^PgEuo)r`!r^)e0HHo$_SR?Ni`S?2R z!c#C><5MU_!DxT8CAS$AC{GhrY9UN;+8zH2OvV0?J0C|*JmH*`^X2loSMGuARZOAy z_lXdHDloyRGl)O+$s*pc)@9p_1ZpbQwH>%U-+|jxz)xt_)>rj|oGHEcEO;kln~o?E zHkw`evj)6RDYYce+1|ZY^=NC~%(E|JGR2uq@~P8S&1~Jc&$>{6#~9JqSCh6@@3uOCU%SRMvaNUNCSG}mR=Y#)+Q*!3l2dzEt1 z_V(gzBNU{li3u^%b63JGH6v;J2y6Y(KHUH>Gd%zA@mLA2rwuOZWtH(PD{5*tCyHEKY%*RYTZwd~8L&LY=l(KeQ$-{s(u+;Iu?56SD)R!l9P+ z0IP}&6v!T5@109);rl5hh@ah&tkbql14f`li*PJNYFB>~5H(nVAW2csHazSCk@j5| zk%VTnh-}fFq&AtRN==DJwJw!VPNoSwVVud#h_3kB4g={`qF6(i6UFO$1|3Wi>Afl8 zU=bl=*v~Lo^-oHvKn`rXcPhjvlqNOE23BT* z0kwD{6h7QH?JO4uZw7?fs#NaWOxZ^td+afmwQOQd!V!Wp%b7-pcw46ysrr{`z>u8X zb`mgEM4Jziri&m|tW#9vDR+88I3Isw#@i$sP1ZghfOqcJdm zlsRDiw$d^(7AS(VTtJ%R!@@R2GMSxac`dV+T1gm>Dv2pm`y#=lz@U>NlDV5|TLtGjOt zy#V7ut5^0e*e)JCZ#!bZh#eumcZzB!#GgUP(2xCgZ`(KRpNO3MH$wif-GKNn_+%G=OnL(YA%b!ml+&YZHT0G*4`-vJDMd%w~1IqG)Y$KsuR% z7nWuH(pp8)zce!WTOFc0)LNakq5y7%gBb!(u7g=wz40eBxnScs$5>d_C0MQ^D90VS z)~6tW){gwT?Ckt_>SR>@tMr4}w7Z-s4AT;S%D=MO+g8E@saqt^@+?IOsusIi>#>H9 zr)THmnvkT85M(^nl?OLis+3G|)pNPblbXIlbq zA1mMDEJ;oz;iR3c5K+ZfJ>izM!x@rR6we@bFv?2q8oXJOK}QmZeV=SuYP@_o_&}wW= z5O)kUb{q^W!$sHOCKlcA$`0Bul>1%TwLFI7d7PQCM$AB$vPW~R?g25+$Mfkz*^gze zwOoxlbXnOaOaI|Oi~TzMWh|GhjBoSi6wSL%YCzQGWke9;Uo3k&h2Ba4m}eOm>=_UncJ2d@%O*!(X;$=7T0ZK3zJ<>DHiuWzl~cHr#%2Fmhw zgJR>N8A)Cz6rm$9i{np%1SYB^k?UJik#>w}2uo9F*YHK}C6E&5ohqi`rKmL#8v8M( zv7ph}PChn-&BZjxYgKs#Z&geK4ynQzAf<|Fz_Z!$6p`U{3w4RTyJpe){x6W6O0G9y zr0@=qRI$2Ct=`HG9UJ`zlIK4masH1?ns7TJinA*xRf-F`9ybZP6%MslTrs)j^>tBi z*c>gdXqo+;@!_Z1S!2hJ&IJ#==J*@RFJJ;A@f`Bb3KwR!=P-I*EZ@nv#C?FM$nPm_T6z}yRH zySD;x(c4@o!*r6m>_2RcAG3J@yn#IFL0~1#di+_Xo7kY&1g}lebs1;pCbuhw0pfV$ z=(fEHT3Ivva7sZxU?n2lj49Q-L-iON_8f*5Q)7D^uw^as5x}6^sMFLAT(?S!^L{p{ z4U)|vBW^NN8#|D;qU#V+hHoWYe+&13uIac_0P%?FbwrOs!jUA>al%q)^`eg z>}9hRbjlmlV2up*i(qnG4$e%RnkmakYzi<5rSZ_fpm#8sYtwh~$F}P>uSxL*zJoad zV2tTT1Ws0|$>GEZ6EYaf1O%)y?uS8~NF?UOMU-P<8DH&JVOb<*q?Ox1QtDQcSuugq zCM~o!AeSVX+cr3+x-q`NWi^~Ef3%O?Vkcnk?jb(PBxD?@eoLOPJ=-KcEZqQ-pP*GTue5 z$o#3W%H582mhYF*ou`vxyW3pw(wDH#;&ZT*fiZPxsb|ra79z{tdvPul|Ec(<$etPv zJp7MF1D{CiT`AB&q`h+Lefn~uPj|X68UFsU$CBOXn7fnnwlC&Ms*{9F4XC#n2{*hI z>clqxi2X7(;kaN8x7s`FSulP$sF(47k(tHhGrei}xaId<{~1M)_(@AVsZ11G)w4Rd zdPC3!G8)1Nb|L`}O{U|oxJhT;dA`ee3f5AlL3G{Kg6J<*>RG_d#=3<0!R#gy&GM)U zj{nNx<)s0{OF*CVwyks_xFp7te3vIC9+En-ZJ(+Wr2SwpxN9NL@ctJ{mPBNgvhf*$@ z1t<>d7%ts`XQp;01e|*nlhpxUzQ5 z#8V6t2OIS%i(KOL($PVwYk|)7XXFT(+FQd>6YI~WF_3qky&S$q z^7jiB*BO0D?Q?($PLf|TSMP{wg!`KHPC~H*XgdB6YKMu>HVrl*k&Bc_?gx~%Y4FTg z1{IKxf8NRw4%jqc8dUS6Uh3x-S`x+mIv9&x7KL$>Q}wKwI&8Ou&;YteLV8;*q@!?F zASNyVq$;KupMo8eJ~D2>+JQca`%8XG&^1Jk!h(d8%zPo-7n>))v=^lcl_c*hO_&4B$92(S|K3dnwTZsv=iAcp^@#9}x%MiXu=1M>ctU zvCrC}KW&!lL~e_H3T6FM%lgc1*#sfc*vctYE0d~~9aSq!T6yYVDgoId)CjXJz?$&5 z-C3iKP6#L-Y1n2+@U8@{aK0W|Q90+PnYbzf3H~bnv)P>XL&pB;kjB0DM0vE@0X2u) z)0Oe3L?uNY{+YIGxW@n*;6!;0$!VZB?i16}YWO%c{#a(IWC%FR!x=)CFqaFy9Q1)I z;Z#i|rvkYXnfbjL6QsUn*4X0S5CNjW%4aNtZ-^uFQWeA-7K;*S3PC~Ti+)E9(PN2m zuI!Suc`d7eaX)h&QY7x=r0XX*bDu8%TD| zi4Md-(_-|n0MI%hy_PF3)sdtnjD6jYA1Q;{9_2n*Cy>1s-%3LRAVzYxD^*=IJM7S5 zvA)BWcL<5n;^De|hv1ev!67(QCs6)|5&{^^hYl)a>o7p}LBQpVr6w+Ek%n*#$4q$r zsfa0&2;EkR&4@>&KpKiN6+*Bhz0FD2JV*P=yn3w%005j)5p|w-)7|NI_*_OBC z9k(UqWzZa&fe+DZMi4Wo^<2U*Fd%dbg%z!HlawE6_Q40*_4cBpxUtc5GpZ}YNaX~f zlU#sh;VKMvyEsp7>{*%_Mf{K}1pD~O(C>=8+5W7I2*UW6G~d<`l5v}P6n4ajVRfWf zNIj+8&2tWDJ1(P2xqtUp?%uw^l zFhyupmgo3a7`3KbVood1reiUv5n!dr)eGAyibO#nO$6#qdq7Gfc;5Sn1)H)K-q#s3HjXHrW9O?AQ*5W=XOW;Qs8Uw6CyV*6%>H7oWt@@u7fEt( zIlUSt0b!`RHfDzA04o>o%hbb2{<8kRaC_0&j)&LA?PD(umqFo;u1q!;n|yIL+oi_2 zajwtIgoH|+?UOBdxqVCD;&&p%UgAL>ENBP?!EmaWgTx*`kux-bIGueBkRv89L+&J7nlfA`)4*^SyA-ssQ#iqk$wdoArW@=4NLU`~4M6xXV#TK=5 z68~5u-D0$=Y!pA21A+;~OX)NmGaf3{QVtq`2D}%2P?LwXw~NKfY#j^$BL{Gm2g}*q^?6Y{`+X=>Ymq- z+R4%mBOvZn&bwyc7{=sgerEFR;-WK?Q&HNm&I`c?KfC1M=m9qs(%_kS09O65cU}P= z+>wcAFbL3a=KqZVH{f#o`|B zWV>iyWj&@a3U5-WMam5cGt89ARf>!)dy%2X5^C55FBUE$03=PnTgPUBjWCF9 zx=ANJ#HS~Wv^T zEhC<+4$o$8OfmbjrV$+2FpHp#JlsG$N1LiL$Afg^_yKjQHp{;n_YE`}%cqpNLsQB7 zlDteB8Q<;+TzCwDVk+p`1@l{%rXB4}Qc-syaK&klU8AH)qWX_QTBucpoiIkcJUQ%l zxzk(b#JhGyX>~(DTYJZ<{ZRRt$vruiO?H0K6&1@3oGW95r-{801NC|IgUVgfk1eXC zTH`*0DiGI=>g3LM99aXr8+g`o*iA~a?Xz(WX35rI4l)=r4r-O+kcwcEIYMl)N+TW1 zx!#dumS(&3ZZ|>$99AqkrSgH$5GGu;hj!>P7A1o*&7ppC1c3aEvom&?)G*$#0gQGM zA;QRB6fGY;A&>^05C*g-0zyl1=6#hQo7B+Aeaz>Sma}F(Kg)Zquz6hMJcmuYkS;<> zGlEp36aFGPwU|4DPRB>Y&MbYOThTWDDzhKX^^rhSWAG@VJmh=i!a4Zl&rSYBASs5~ z!uyny{(DMLu%sngCE>T~gu)Vjy-sky{*!fr`}MzAC%9k#3v~i5exQ8wfj|&lvDH#` zZ|+;(c)U-*S7brL(K0VQl7o(=>>+Tpls!y2#M<1(DmDb$dU(6p2vaA!DQh%aZxgXa z%&as_aU0JqpD$qv3i;y7DU0$&n^n=-Itnu*UF4~j(xqkRG!YZ!hGF0H>Zd8v!bn{f z6uc(4L!q6)*S6-Z{Vi<9xNdwnuVfq~fM?3phX{;wlcV-)cg*Fw?gNdWA67&4gXGZ9 zEfmu4nhGCBUNCy|KgM5naS|RTs*iCaDMY^S8j$Q4`DTy8b`NKz{G0t1?vH0NkP+^s zE?YFck!=+ZSUSYZzEa3OwtA2t)Po2EG04LRq5JfV^uJev4b1q{&UeWxInQVoscqa;zwF?vCshF7*|> zH)U?q9Wri|IV1WvZgkFQGM~02vxS$X$g{IG{nEO4K@6yE*j{`5keJWVpl+?j@fVyS z&rA*>NJYL^N)CrxGh_DzoJnTfl);6`*U8_Jd_xfSZl1Kc1fXjAFTClHTQWv{N8SVu znRVo?>28s_J@nP_6hW>?lhW}yb(kkw1z3xDxY0o2W;@(M1&9Pn^78^EKdw=Nro+^| zfhS7ef)LSyz&FTxZt@>88SrN&2XfqRlX?y{iz2d;^KcJtCp#;c4OSv`|D(nd_XE=~ z`++w}v+#H%#l@+VmRZ_2x#sN`139M!mo*IyCr?%`3#ho&u-5(&mO>$i|#v9Acy` zc&FNsi8>e9=p?o#+pqBgir9F8b|5$x@J{=GUMi!td_oR;+#}P0=1~}&Kk7jfwz1C2 z%b6H|((6Q(22YOvCZ^odWSpAN&(04Sr5=JOM0fW?cM)!GIkka|N9LJc9o-A zXN(_Y1WN9ZE%b1wo?jSrTAP?)1v}q!cZziq5zJ{TUzLtgpN4WJ-RA*v-v7P~B zTXLnqZ24p>><)%he5}*fBpXIi+*Z1>qCFXVHk0Ct-C7fzuH}e@9%<_A?0}wOR%Drh zVim`KnxkpG!Ikxg z)QO2P*(w9udn~lvTuh)kOAqEGv3!H7)8S6U55%bT2So8k>kk-YNNivJlnKy0$(i~p z9;xvpC-RSg0_zWVY2W~(h`O&o@MHn@di_Buw*Ej!H__PTilz1X!~dKo1`TtjS^mK% z2EU~ja6Zto1sv{lH7eSs1)S9>#HtXpNJlFjL@Kqu!oDu;aI?T2@*r)ULb!q1XO3Fy{5%j z`^4L}PBdlJNGnGS`y^IK=nMp%RE)L8mue&1Hr_k-f))crl$vQXdo}}dwcZ0@BLT*uw$7+A#&GwwM;gmH;3nKYld?d{ z^)o5zm$0)Uu47vfx@jgmEreA?ssk2K;oMj`n>_yS z)kN0$es{*Ku&$kYK-O4{v~eCHXW5sXX5&wItoyw!MAuXOYjSt-lqAjaR=d;f^%n-i z(c-4@<}D{}J^2~W+?HtZN(;9ZGV^WUOoMh$7i{}f&%CDL*gHWc+hy#Sx}_X^mr}Mj zQhwf2p4CYCl%<@~Nclrc88%Y>+*0C>b8Go)>rxKBTYW7yYQ1k=%1xHiZ29oIGM`?T za<8Q{d;g-PG)M7uOZl!w@4tGT;Mv+p`E5&iUL)l(OF5&F@{ylVt&Kj}f3&kfRH8OFVjmEqLQBlrt(CoW{GGe147o||lv`@SL^Wj+`ko88l5 zYExhO<>%Yt#l1qf-_ga>F0HCi4BLfO;b~Wkzns?A;x8VRZmErnzuEv}?^E6JqD5a@ z0ZpuS&%ggRT{towusL3L#xH0E*q33c*z@nlslc!*u*nOM>EEI2a`u3QVOtfpi?ete z%)IsO4NsDdVSFml`sN6{E&A>!DrAekB-o4T61KSdfmOs4g{R zY36dg8bZ8Pp3Ch~Vagz`U<22}FWxgl7HaO=|B`3fLJG@rg38ZZ*}kAalwWd_6%^an zrn}xK1)^VyPr%QMF{p)hR)hK3Wt+8li0i+0XbZs5nC!{J7Cs_QlBGSDlX}jK;%A(+ zWIGS}?XmG3jn%DhkvGMwYzkscYw-B|<%pPlUC^nGtL1?X%Go>m#}2Moaa1e2`^vq2 zjFiP^HR$cK?EKxF4%N( z0WqmAgJ;@wslO2r5{ZTGIMw9g#k1#viDV|q!4^Hwf2kj~Q@GI<$64AQzx66+O>8*E zOu=&D@QkKrE0fNqQD_)rCJtvIcJop`>4wQfy7-VM$yDed+@TL_jN_sohA%(-DbXh?& zEATqS>Gl!pV@;DMu%EoKRHpt#)Y4ma0|g=tGZ&kbtbw5e z6op%6&>>u~UnbnJE>-Ia2WL{XiCg_0H3Y?}x+TTdi|cahPBzM!m03$uXPL_{+b#wW zShzFeFFfMfSF3aQ>$-i`?vL`-Ust?&cyFa@)s#{T+D@!3miMTnJ)|;v*%olO3QyGQ zkqQOL;ES1mOlDtoBevj;A)Sh`*vXwB(HGlkk|db2DD9=$<^iae|s$XKG6#`1)@ES|Ii?|-MMSGhzzgRzeQ_#|MyMX+ry8? zx7b+s>X%R1n3e?X`XL)~-Yzn=-K(ebgE3RkusQBoxb8i)<>n2$6=dGLufk>q-kyZ* z;-dMG8iG>I1a^a_iQspoxxUm>edmLtow*ZWja@jVJi#d}p)>N3`{G24uQW&^fLq&; z>*EFu{)(`?miS;8CHa#_H>IOgrNCPLNB^7&6?X)k)~+*T$D-J0geEDgEHOk8Ei zPrnz837XJs$ahzphjde<@)?GOo4CnfHyiVKQ)<2|Fu*_!rcyqW7--=<2vm=$9=klU z+!-@^dh;tL$?I=7S;?j=wpn zK&mR>AQQ;r_2yaI0+~y|@Q65R{Oc~<4+=3Fhhf6;BJ>a$i-9;!5ad31;{Znv6k8&P z5ziqf|5ilK;OoP5gCoE~3nU_ppymue>|r&!$#&%!L&Ch-d2Bww#Ij2_`j(|I0`tv1 zM-P4&jO%#>FQL2o?1nZMN$0z$O$rZFEF{7a3MLc_7$8V9+u+)E7=VJ76zt%4is`_t zVOg3fqkC-?E4A%OEDrD1Hase{gKQ5-)GXAN=EbThr9re>z%05oZSrVDyRaQ~R}pPn zZxzwkBej1OYafe?UbKBh|1e9dg?+>hJ`h?lKt8S7mMM#! zLKqG(TD`l`kth@*UTA{}(hGHwtDjSCzjt3l%8rTbu_) zN1z1?=&M0tPN6cNQ(|Hbfb`J>3x|VhRqOjkM6Eem6kA%vPQ3Pn>f!A4>nu8EV4QwT zqzSvZLn*WRPjC8}n3?Ia!C}OdfQI z1O;=c7bsPUoevVtn#h8_y;g%}b^5O8N0Eh`;?YDFLW(n_rJhCW_Gd(vWUb39R4pP) zA_AJ#er`mT&ILhKrJj{^uKMV0M^KA+1u}Fm3Xz^QG3SyB;@y~3G10Iw-3~+viyR*{ zB^-|#92?c2a$&u!VKI6j$l|hGpD3HG#HU)hFd8t9Sjl-aPUMr}3L0W#{HH{01}ZJc zV2DK&Ppno0v6&Ftj)+aS>#;Oo+BIS^U?B7o%@{Bk-0*L0z_5ZS#0m-!3xFUNzcW!! zm{t@m`)H}M`{T4h9cc>?ixWv5QvuY7h_!Qk!rzP$!!THVr7M)E78FEG^M5@G3Ooih zU%GikuiyC7X*@sSW7kTw`L`9z=KN;;G(jch+G3cDKQFaW0>O47VlMGjFN=h1){f`9 zi8`$vCJsOrgIc@8F6M^-@kzs0-=QlEjDO!0V0*Y(r-0WE-?jhJuy);@`-y1COmHNP zf6w$>erB@OJ~YO|$rucZk?>clQCN0yhF(pYg80q^Mhg;W%#Dm-me zSFtl_lfFp@%nr{`;_n#)qC#xdUmVu z6V-drb`{PJP;0bLh?wd64k1Tmhv)}0dw2B65aMpZo7Cp+aNI75JEksaNNroHD<$fa zm)eNh8L6#E^qkbzSW3AKkE}W?-npz6>1~h}5pM3IBL$Q&Qv3Ww z#F9d&paCJ}Q64Q}Afg*sh(wox1w&D%#KMN=LJ8rM$AZj-CKfcXIV=ERg$Lk33`UfK z2a6;NX$;6hh;w)V$rT=K=bqG=5r@q`gRQK9EN%Rmd1<6?_~?c8Z&}TsGkqh`rlYa~ ziuAcDHjt4t;TowJsEa_K92lP(E;`gKSkx&O+MQAvcqsv915e+26T#97W{tud_8{i~ zER{To*bvKw$dh7r(Yc5civwc7Fr8yf3&IIkR_mL{ngp~;Hq)BSde+QmSTk1;&Q5f< zH)KswM-`)u>k{Ek^Ub0|@TE>2i$XkRP4Q^RFvk~HKruR=@eMA7yf8qtreltkTqq(j zh+T|g3njqrM)i-#X3*2L&)S}*K_tlR5O+W@2+>Rm6M0+W_>+Bl@dWR3KiL|VAx!pF0g*4Pfl=q zkqjzsIMhIeRs;%{f4Lm>?^xD|)rVhHd;nt29N0^TMSp>!vZMxDJ#e5_}YVbzm>PYHzQwrssU+`Kiepa1ripQW~>ua%aX1=VrjD z01RC7718t%#0J4`=JF{{t5!Rk)2f-8n^vfR=K|oXS%Gia-tZE zi8GS&JJA7Y7qnntvDY$~uT_G`8n#4GnGyY&1%m}eO}Vutt`>kyY_Pas(2!M?zb(hO zS};IXDRcn_;ddxQ=9@6saltH3#Y>JD6j9m5UW`(#!APJo*{(ipr^R!n@oL->;?THe zT=W~_0*q9j?{6s=V6^-qc-R7AaXxCB@E6iSs9S86@XrD=NnlhfFp@P{L)I8`+Y+X) z!0=ewWyEhw=>mFLJ1pNUfB{`K>@u{ph!QbS*<}!AwFUzmxX_XG%_0F&zM5&$rm+SC zWt8T~Mk_FTSv;m?joAzXE~^aLh2X>x&~OWdI&EsUbaT#0K}GUm2k=*}hsm;K0fArk7X}-Mn>09pG zw6936&{uV?``zRXgaG(?6VAH@0Uja+DZDovzVb6@7~RE~sBbR)mU&CjOZY5ET^5nD zuI#_ly#(Fx5JkP<`Xc+hxf2#adS}>-|-1j`&m86*QgbR44fxoVNt9{bE6J@-O5sWpMAU?j*B;*sbFlven1q6sC_DR-an zs@)3}+R_t`m^SD@-_E8{F52Yt-db-JDX~e3*EygDKlO}06tzzu#M0Rf&2zOq;ZWlQ zNAfA=v|3I_DCEn}JIJ9t_z5Y-Tk>y(yKpAG1zb)!N{_Lt%giwito+Lwee%5&#WsR5 z^+L()f<4IQ*0LyzKfME@0Y2TdoLz%5ZgE}BM9Qxne)~sO!o5GDJWM9tGs0>;ha>KL z04s&;w|?ONxFl@7jHmtQb9)6MA6?wq%dKYYKcKk;K(hnW!E!Qw&sA$w$-)}dAMol{ zXh@-E{xMkBJF%S@Q!u%MQz=(WN3pUcb6L*d6}Pdw4E_7@KmO&@E(s@Hwi+H)*ovE& zk0h5)+v9h|9uL!^fdc97zx38CX23Z_<~#`383QWQKoNB z#}RHSMj9bT+$!_-`3|wcQcmNj(I4Bd1VST;j*1e&*8A9d=NOYy zQ0%-yuYF+I2V0Nh2;)%0&FMQ!LsP)i36x3Ok?(@4NTqmeohx|fChshtyTqsN)y&62 zcn146n819wy>@f>u}iRP^P5+(MFTr35rr{;lP~|y`+w;#@8$oO?n5g04q#*~RdmAKE? zmE!nSXclP|IrQ3I|KF7$dn8}}R|juKqjOOV5pjBjULix>x!R`@e!3=%hszHoYj{l~ z``z^Ylv3n&#HFkDQ3%(41Ix{C4mYA61~;#Se{mt!FK0U?ja$nLYGIRphG3|HMi_r# z&E%UE8BVb3M4@#dh-06GTmZIPFe`W!w^88=Q)*ZL{fGYSOPiUS zuo?WOnlRrF}l> z(?yYjwa1oAmQ9Gw;bpnqJ^lmCgoKI0t>dsC$@n*&m2eiz?(deKeU?QiOcbnyj~=bW z0He{_VzomRtng`f#T&Dxu^DX7L3{j@rma~8c@7|H1H3`I7!E(EwgNGmRnd}0C_7|P zB8J`ru%frNV{KJ{s5jhJG*sQ2T~QaUB{hYECYOMI+8BWBDz~QlYMLQN#Pq{ymr<$^ zW+b?jGiT7zJ7uyxUM8YUor6w}d~tr$b#Sbb(*&q6{CL6S#kRdu7`+AuZXutJqP)*Ljj?BISE8CH+vk!<4c`QS8gZtZA2O~P}@U5$gJ7)iS#6V$dhOUU& zw8hqOFlz*bo4_sLFd68*gSA^L6n4q5!WWf$&7L4dXnqR^f$ucrA;q2WSU0Kv3Hp23 zVZ-l(yjYyl=L)!GfPl6PV~FAct}Mh^jl3qeyZJ(4I}t+#y6HAQcE?eFuemzSRKB0Sx63WXuE=cxtThHlArzepyP8tNF67(9=|OlM1Nxr~smOVVNMo=~ z=nbkq!!WVKFF>~=-HJ*tC3ZnNqmgTg`Dyu2mUSMSXPqa>a(^~o@47x83~tqatIkPf zr&DSTrdj{@>GR$4m9)uqY>6%AN8V%evu{c_+M8#+Go1CfxzAY-j~{j|sD#NP4%9;E zlBQX{&-hOrXwlFTWZ~caCLiBH{A5>5*_YZ?i8DmTWV&2RcPdy*Op6lj;wd%&aDAL^ zs%k-D_$yYQgMh>WRmmpON+!CZs^?^Aqmyv+_UyuesS^b4WoG~dOmFweSt{D2u{RFJ zlvFZyWTp3U*>Ry_N7$-lN1!k~ACqj+UWqP|5Ialc3@Mqz%@=lXw#l9(ZCi1Hq_NtQ zWMs27<6bze>|?Ah5CvXljmslU)f*3=HN(S-_0xj}Z2WE@US}1=+4k!7#omoqJefR9 z;Bh>M7}3Eio2F58a)BOSq;@fiN>waC*fl8-k4qq256ub!yVn=_%|uVQ5L7>WrITA7 zIY3?^W|Lm2FHO1ZEkJl*?e^<-c`V!2W8H4Q(Qd!d zZog`mro3GaLQBB^qw5OYkkVDV-5OpVOL+BI!`p4Z+ik$xt>C4psDm(xBQ=Nwp$(Z2 z_~0&e20zuB`$lv=D~^gRYJIekNq^I1TJsDOPGpH>wy|30w7^bn9NO}kBXE&khyjRH z5I(Eo?UcB2brlMi>mV(@2_qK;i0-~Ajf)K0->k+(3w%KNn*+Iw5?eDf_TwJ?GzQcAmH%ePao3ZlAj9YSJXrh)4X>7?Wo-Ki!W!k1Q3U2TSGB<-XpR8x{ljLGlP zzV|SQO_!R8Qfh@S-BTl{D5}p}Q4=PnRTp7jYa%8jY9qWcwA1;ReR;zG^mQw@D5Vfe zB#O7?{gnv~i!W9&W4JW@iVc;9pfRg2RxvXWZZ8|Htijm?1p@Rp?00(>*I?`UK)>|@ z3u`Q9Ns0xjM7yLluC#F(9UdwezGJnBTKw9gJKi*DZJivUx@?8M zL;*$S3Z-*}+-xLHm|4hN>#D5Pz-`fqWB(`1dA2G23yLFctJx8@5vcG+xT z3}F6@nKLoSUHb{8Ndci{EuniF=rE8q@Oj_n2Ilu?;W59gGo-yE_fM!Gf zgb;vsE;HNZ#XGjuhrqWc0V`S)Ekf1AxU4GrX6M>v`G$@jK1~B1AW7(m`yPanp@>Lf60mlA4~Z(9-&=Bs=}s&yU%8__Iob{wAHT|_qR*kYRoN*)W+oP%(9vq> zVGaSt!rLY$ODcFk0E35?%ro?v)EYEcu~^M_8$o(MiO?-Dq7>IO2n?H}Q+;0IXC+k1 z-4^>Spa`_GL%x{She+xe6%4QW6pio?doJSK;f-p!LxGJt?5kJ4K~>J54$D|nseOTt z#z3sOR-tfkhb)UFOTe+JWV z6h$3}yI8_lOV1l@KSBPH^n$^uiE1WO{X<9ovF&vHUxkgqJz0&6dbTyZjs99givx^{ z@&YLEpN5Bp@GvM3v&%F~!&fYER3&0_v3=yNDp`FISPpg?-ZPh|h6$cqD?^0$zU4iVO_TOts?REeYeAMTcXNfZNNj(nyp)Xk5Do<59RIqZHZom zV9VS038a?+S#5rrg9qr60spPSZ*(AGhcRhiVWzB3bGHJYol_IXB!G}*BnjgnM^=z3 z1-mrK=5d1|3BUBRX)yk4wU7*cPm->lB~4;urnIe3%V|Ozn?b3`4+C0tfeTFWJUS#) zWamvY?nOy}LIDauM)(Sb7|4#4WpivWNLDtWci2-Z(9wzO0gp)OV~&C5yq9D8Zh>If z125d81nx?_*}B{$_90S$2wVJsQzZMUgGH(#`ES+5;O=b35on!GDr}&Y{4`KhBhYt_ z)AJZSQ{aD(%5P1)c)U&XDB0GHj0s z*ZRnz!yfewP$fT;Ab`T^+A+lxi1-w}$)FgMvo5fH)MJkzs2I z|F0#!Fk*!svO*_sSV)#bX)G7%pqDV%wY4jxa3^q)r0w0Gr;kxGwq`NChz(iNVDPUg zVS*|}z_93^)xuet&kY;w6SLS;BZtEV8{lUn^lXt0o2cHftg^}zg<}9xg|PyPghrQUU9-%b(l}|uk9&c+|sbr<5jJKR+$W6M|7BC zMaK@SYk8)bqL`JlyHyTr*O>%hLH(XxM-3=|gmzs#5T$sp{P3zk@SWPaaY zS>mRuy7_(o)e>u0)cn4yuNCk$NN{&*vQPh1K!Mm=uq1=`o>0(=?2~dEJmU50yIz>s zpJV%f2(eO4%Ju4YhSNS$O^RK8>$LPZY!;8L5bH)bTg)eLmgQ;oAgYbBNO2SwM;>(I z3-GdW!;OZh%u$Nd6FAo~gO*%k&Twb;S)3+BA_~;QpqsDO82KNQ`z!L3*XdA~V+^8e z2NbZC&!iOkGw1T%z7FobI2xst8+;WS8{2QKos-snLesF9sToKP`oqN)l> zA~rfj^;v6A%b`cbUiiV(k>yndJxwJa5}{Wrxo|Vz$0|Ql0KpE?S{n?`Y!>iQ?eQPc z$$aTPNfr_s{8dAStPi=-!y3!6B4@;eqQ`c3V#ajQxQ+vgr>bLG`fxLjXS_Yp1VU)s zo;V6Q7L?evQHPTaym8f`-E+9EPSs?26l}!OfowHkU{neL2`T1{jek;eVE&}r**xa9i6XF{>?O7k^jf(138mXILa{gz&Ithmc6z=KDZN#C$S>=JN^!@wNPvZCBKv zd%2{Fd;^DwAIzCoWQx~Z0RJmT~J6Gt*2$f@C}Di z5J+e_ybhqC<5NSnH#{g`g`Hr=7?LI^6Wk*LY5;fMcG@&ojW4j83l(1lX`qSY_ftD? zz>?N}WH;X$)4TJpnV{Tls5bHNd?bk0p2wq?vaiOvTq}B+>e@TTv3ZC3>;{dNpA!-a z7>=6RX1vKTB`9HX32x8WG#DIeq45joo0E*0W`H(WK_aGMBg=Ffy3!H_msx963G~C% z26NyK0A5q0H6;%623=!~Qlg7T1uMN-&OU%`Q4gW9$GlgS@Ks?VaqlxRrOpii)c}A@ z0AxbhLG^MT3sUxGed^00(&CrzX0gla)4BkZ=Cdv|BI`wxeJP8OHi2`*5$~FXt*R)I zT9G3(dxOBFQpzV5cZWxQ51=B>)Pc=~@J4=q+1{z}C-qzi9Lp>+_m>%8PiwYJH*;Hn zUClIO^&c=}6Ru<%xzo*>kYEGcnfWtsl8gSXygKRnG=Ip{#39P?u}d>80}^w{nu&d~Ve zyH*?|_7>pI5owX_owkhV1Si1C4$#gr-h>{0kb+f(q6J>9sxRYYyTpNn?L~=~?=CF3 z)AGQ8Snm`8b=fNao_5~$y}Hg99?QeGT^3qgPo|xEs!jM@WR+5Y>4FIxt>IN^>ZD=asEz(J}-DQWy%bI{7>QN!I9; zHfPVt1XbLo)R=QnHOqhW?Xzofeyv@I##1_T=CC0cEu(5?+0VLHa|lUe!CW0xENE{P z3rddxc5Fj{0VATpd!avsuh7s0mS-gzd>~3q%!5}|gnCRLKx{?g3_hj4XR{2 zTJiB|CYqBVsMa%{hCsL13)m@(kGbBg1Hs4JBvXp9G{+xzXmiqo0$*^e3r#)qCC|&m z2~)#~3Hj3|N3`!jgV}(!9qP#DCDaA*`>cTcq$$db@&t>EGDwhoiL%5+8FO2SvYdzj zA`Cj|X{{A0XS|>vtR!)+en1DjkTs@6Do8`ljl_`;HVVIAlTl=v68%$6iJS{oY{BjR zosPu8;OPI7^=FRiq^FzrD$;HK1^lncS_g|s_?^doj7R$RjpJ-igupN7N-&MsC@~o*f`g^hA>JFmr+Wvv-!zavt9p9 zHL$OmDl`!#{^H9s+D5|UOKjuQ>9RIZ)xqlNRb~sql;8otN#5qBvU$=6B~6x@1X0il zyz#+R858i1&n|q>&;Jp^-&*9+h;1SeOG*fC!)GL|?Ngj*GO;<}Q8Yo0~-TnH_qN0t_pz`WD+ zG${>|v|tZi=Bu_>6eQIGgBJ-5J}<>T&eA4WoUc2zzz}NLsSpv$s=g$mszBUx0;4l8 zF!rRO(*qxi`ezSlCj@z20*V#oSofQpvs1b8m^cv9P6* zdz0rLj=8b0rILHA=iU)>V_{3Jb8nBi_PaAXGW&XGe6`=5**&wbcgI)z-I?7t`+9GD zwcnlD1GBI9$5;Dher8`EjIZ{~M9#iG6kqLkXLfA%^^y2$zszrZ{i=SMUs)*(KjvC0 zuaA1}!I&EhTPnE+l+66b+*sIB$-UNdZ-}|Eu%(iFz2_c^xv{XNl6#})-V$?TVM`_V zCeJ+_b7NskCHGd(y(8wv!j?+z?Vfui=ElO7O75MWdr!=bg)NobyFK^5m>UaQD!KQ1 z?gKG57PeG!@AurJF*g>rRB|8m+=pXsENrRdKIFN_Vs0#KsjzWJ`;Fv)+jVHQ2N-KT z;xk`Eb2g#^nrHj`2lM6p@L zRy)EZTab5d9Mu5_YoLdx;V$M3jxYzJm%I)sL_8cRZ1<1W3!_-s04ZRk8(uBM3+*T( z%$@NHE=VshW-z$JC8~}NkfC?;>~&V9XD6SZgfOP6*8Z&`&!=L?31_y^mmkIo{!#Nf zuEByN#%j@%b>Tq?TR~H_(?c3&6-kMCT*6e5$0f`PY`W83&5tJYt0EpY+%q{%cN&~D zOfYk&WhcneVK!un(zU3jc|jr1bB zSiY9^H?ff!ggWlQy~n`7!#{9BCD}@c4W7e6aEA?S;8$yqIBaBa@~g_&T4sn;C8y*W z)U4**)u5s1u36c*q(!XN$)EnSCi&;<$)7U=kiP=3j2NG*BLCb&+7@}E9iw}B%>XU( zXC@*SxQ`)hL4J{-k?ym!SYlhN8s*|_kqrJWBSKAd3Tjv23|dx{h%cpUYjEl(C|F!l z+(@Bz4;$$y&iJQg+tUg&r1i6$9XjC^7@F*0oVWTO%i+F<@2+ zkfZOc0AXjO0QopJSGhBCo9&D=<{&x<6Wpoc`EfB;qCm>g_f-iFnJk49L8jGQBLV(_ zQb9R%V++|%(RE&Gxd@iV)+*`sEF3AXnkZO(VGF?4a$irLU}Vwi_~%53$>6SZW;1i@ z5pK0xt(8ZLjK|3{ocMH-!L;VuXK2-?^N@G~tNqj_-?r);j|ITpqXTN>Znw_GeT?s~#?;25+)6 zVM1eEgR}Ky?&=QuBog0k%DIr6wU&e;y6#ItD*Uq*&ity4_j_yMOSS{=IpI3dV)Z%Y zLwXC(;Umk9)Q@)44(E%?zt*o7EIGn#HkS3Q50%)LMAfr(IMMMU3mp>VSMS~cSg@fX zV|-|Ql?B16MJxnZ9`1eY$2by= z4`D?R6UFN&fu=5tz2?VMR>yfrm^%2V5DUta&lP9^k1v zV{s>yc(iKH6-CG`$Ek2_~l%T($@)G92fX_NM@B zq@!Dqba8`rRV--_1DsNUV@W`i*AOw61_OFqE%}a0mGh0o&m!4wHIB0w$y4{W@M&t9 zduqYL)I()PAZG5D9ePlO@ED#$crl+{UpDg7bDt+fLNDk&?p6<8`P1B0Vea06W|yk{j~x|uk}sW7Fc z$Oox+&=LbJPwoYQIA*OYr&&#G5514~;tWB6tURdi%9t)+sXJ7+$1I9#e!(LHCIMN=l~u5D z--)IH!1n||9fjH3vq#NoBn1s1M^?iU0imPvQ{brcqfL1#j&CX^Zc!Mp)! zLy04IHf&JM@oyp5-X0&x9v`L&h9-jAw7`Hu5mRem`bC3`3}pw2OGBv+czL~6*U@UD z%&NFUbU|p>F-5vgp?*GQqXE*EuTN2!r$bYDkhDF7Se(PO3byAd8icdp;w8&uM-^>g7kM9Sibt@phy5jOa8?o-{;d zg3UqWkPL_vqMOz{u?kWyD29+2x@;eFCt7wCV-j;ZB0JR(v4^uCWHe3+Z`n`w1zYMd zdHVP+vWbt(L4&d_qR^3z;u7c~KfyOq%D}+SEsL7_(-5KbfBmYGXNU!I4#$6dRf%^K z%jSR*+rF^=^IK8kj%NpOLqYEufo~S)65w2ZRA( zqtwy}p_`E27JVf+9U=|UPlF*FL4-h`bN2`eFlmV2k*x=peN@pxt@0%wrc~a-78y48 zY&*~SF(n=JTZbv>z=EhrLhn{Q1FQqg#dzph5G?_8sHNc!BVbMOlOI@%!?}f)LoEu& zm@-W(WMBZwG^5)2rx`J6XcnDI3S2 zBy5fbHU`p+GRD%v;=n$S!KA4w3EWdm`|Ll)YoU9yxiuU;IDr%1U@F0EfF-d8C}7+d z(P513Rtv==Sw%Ww7A%y>Qy7rXcnR5HK~fe(yh9Q4L~}iTZAj8_vK;>D;Lb255mq7u zO_n7kyeYRw0If)1;eovr#cx7#|Bgg0zC09S57tBrgt^lk_Afx22?G9joCSEQhX?hV zDL^M7;f{PJ_}I7&XbgF~jI0N@oRG_{-Pm|HlDtPqZ#MTcG1$r1QKCA_>@sM4 z%GMeQmkxqy*$HJDhD{?FLV+I#Nt~dUY07ntmA5=o4Tf6ikI-L)WI>z=l-;%-m5F*} zpRt~1Qv^XUPA<*H&V}ZPj&~Y=a_J1tJ+x9m$*=^rLaQSYBwgf>x(c`4z5_N>r$^v zbiE*7=HOK$pMnzxWKkUu6GsMR*uA^Rq9~y`WjEjLk#~-;ciU{{%Y*XL8TPVNDI^F( zl$SB#FS(wK%xw8RtTM@ZsY8eL?w0B+r^;G?{uCT`iXSiCJ=)rjAWgaz2c7 zVB8{iRqRFAz#~ADO2VV1GE0H!_V5&=d&oAi^M*)vK<^E9JCY!;S+r7YIq>3T*hf-# z0>n6{8Ok4SdLTAk2be0b&KHf=LJ+H#aS|?Sfix*bH7SY^u;bWns0A8sG${pdSPGIY zCT6k`d{{ok>;d8*Ox(_D643F&p?t9b0=&T&6F@x<4?{mi0Wh3K2lV5ZZaua$q@&V2 zfeRFXKB0NRB?$66fg-X_#QIyP$Ko5DB!_nR;Kf8)F~ktG#{lx9&Vl?GR>9yus=83X zfP5&{Py?xLg(4p&dlUIEtOCFw@)IoNgFOV14?v-l0r*OgWTCA}`GE4RJQlK{2XY9= zs(n@??43zj));YPTk}ZM`HQ|O#c7KebB1$_p!X0YExuNU*1ib8Ut!s6z!#W4%|(dn`fX zJsfR%BveM-Igs6?y9UBh535=)3}S4UUkhAFYpP*eYm6BuSs%1n10R`8%^!m(T(pD^ zQYV<=8l4H;X$E?>&A8KK`SAMcuB+@1F(W^Bg?_%1D1{j?@cARm_K+OtTCNO;_}$FS zGAwZ_ARGrnMHv*j3WPn(wp$_?!^<#EI0)IwAY`0re9P}~U4mAx)1%Vn7R@eB+i^F} zt1U?@z5mU!jrJlI?T^{+gX{&tU=9qA5SkT`i2`!yBWe#ka(0K4&{;JIf4eD1RZ(v1 zNCKPgR)<~tHSeoR&{~BC9#x_0F;FOY)L%GK&in{9ac%;J42_E3#Q@u3H(-zRl@L zS-=VkQY8VW`eLYo#^}))1Gs^<16uHqReM4de(FX3WKMizkO@(dzXvW6_J1jDZ+<17#nSRM{KI^73!MffSozKmzBunx4$|C!=i< z;MJlix_K^Hg-H+cSL|3Kr98w^2O&n`8+o=_flW>5Sh ze9JeK3Q#P{;~VqrO0b-CK3EQg6X-B22x1wuW{Ribz;hC`Uoc;kti}$of(N49B`8ng z;30RWr3j)ZmgcnBzsD}QouXt+UBj>&coT-*|0*?eq*kC|;N>4vEWR;mmbk=e*;oxH z!K1OnrzvBBt{@4=5}zr=Cz$UEKh+Z}=^EGvEHP+G#=q+tb_vl(~=MCge!AJ7pk?9<)Q(Q5M#NcR!x4&7G?(qsQEq$m1( z3h5*p!KjZ&7X*`-6w-Z_kvc~Ae;Mf^I;$XE>4p_az50109qZ&Gbf1ZI$Rr@$r>F8y z_!yAxtdt2^tS6xBiRSlDsNLs_SBU@TJO;Ahe;M&r@feXE=Z$y&#yemx!g z)5gG6Q!fi?>Lm4e3I-^0eps~p=oXD*AyTi$PwGMloI@{%x?(XTm~S{`3h3lyGNC$o zB7mu6!Ur~pIe~zH315BO)dvVVC7ef?moD17PAv(InC5E$)+94Mj2V9}8Ux3yUf`Xkl^cI3{o_{8T=udFY`S-`bY;~CmDd8slh{TOH+aWXIAXaUuQc5!`g#DKm>Y4D*8_^(cjBi?Bg8^BL^pECdk>O||VuZ(v zDN)c9uSc&pLl9+?c!eVgOr(MqKn~P!$swIVG&1zvL>0VP7OD_o zSE?et5W~pu`A`%EUz)GrvX>ndDnSjJ0OK+@S1>1jQi&i3RS06F%`}CA*c)QBzy=H} z3z%U7=L%e4oFGU@fQ1~K1T%$1rdiG*k74u0@#xS5P8O)7aukA4&{L#qA7dEe*h=La z0?9x<%kswyV3y+pmUF*H_fT<5K?j?@ArH_MOOHsr=^MhN1}1bpr5j#&;3e@OFPuVD z$;CI61g8jmLvi#C#lRS9`G%H-d3G${P+3^2ASMEz-nDac7oapqSNi14$hl^q`oM%v6z~>=|LH`pmbRWT)z=77-?rh#D+EP8j97$q8XZX9@)}IM0S6Me5x@`!lF*W3JTN%LTRtR?CmwWd zah<@#2JV7@7E97H=R0)H1m3`{QNfs$mER5jbv7(&cY_s!Z()l8{O(zy>;sb#Xs>V?G5p5U$qWa+1m=jCiqqrB zq+zX4Oj@$Vq3v9d70##Q^hC0wIIyF*a(voH-x1>RB;E)B>SR;%i2Q^!`E>y+`op19CqxbccfRP4}^Fbfmo9CnzB!c>4`3C|1Lj1Tr8JWuvu z_ULtqPHOwmxABy1soXlol~S8|ro1O9;5aA$lMWJxfw!FPIu3B5yZmN%;eq9g?YbV* z!n+H@=)c@u^~!Y@=J8c^SGe2YoZUqp1q(LxbIWbu!$b^!)&Ox;IzW=nv&%xl7Q(Ub z^VNfHjo#p_DL7ax?ElSR0qgrOW54`hIS2N`{Rij5J_3Er(E{u%|3N({0Qdv;h1EqV z9w+=w4H(+iXlo+_pvraL>?xG?F)kJMy%zQvBNU*0JdpOiWL1^WKBiHj*vB4+049u8 z!4YKxY|tl7R^_X}sv^3y-kG2Le8>H%;RQ%0i)&@7!Ki8-~! zT9B&T2+|vTX{t>gaJ=(Zmm)nlWwJ7LNoF1abqT?ML3Ih3vviVj>QWVNpe|MVhT4|Q zP9*9kpf1It?KD@O5LMeUS3;u+H%?;smrnr?HcCb5Hf;`7m{5J?zpNr(g&L~JR{^&3 z&4+HQpy-9-+GoZKVdo=gz%s2xh_o3eDFdOrninbYE9KNYIJrF(rj!;?;3}%16;qVn z68awoBC0q5*)0mXo2EsGu)tCdPGw;uE3cSyP|94Es$&?b1>TT>C|YxtFz~bjts%L* zYHm_g`8PpY3x87utw9W+4dv*lLa&sA>hF351u9h!4MgeGzE!s<6B|c1tS~SedBIch z2c9ap8=62>q#aFb;xQh^7J5j-}Yz+!VP6ww}PE>*pP~4PCcl;I^6_5)^$nj9IXa zHq&bOH7cas@XS^0cgY4rK=xQnQ3A6`e-tL{*uepFcQFsatb_wWg$I?EZnF(k?`Ns^ z-bJ)X1>cvJYG#Hal_9D^2Ctc+L}iGmkU`af%I)T>n6$Zr{O)XjR5s?TTm;Rt8L-Fo zdVl01Ow1z}`(wH9RIKjmAIrvBZDjM<)X21}7x-O^5Zdor%tmwXR%id%XrpYdjxvqC zwj5)_8q6Et@=n3Xd zNJuEc_>QzPMwZ|s7oCc#YOnjQLNh)rp*|M^6 zPN+0B1tw=-H5A}ssV>$}du;pyNm93dk1E`&drJJCN@}PM2wf$<8d8X_Cg4J~wNT+^ zt3q0NkO^z1)-O^GNG1boy!gk#ljDXwH9S52r5y#cS#$||AxEsjM=aV-ofoF0=LHRLU2Bl@` z`lAtM9uy>xDn~4JrD)?AYca6w6!*s?&78+CGe8BL7iVX5D8n-Q#Pd5BB*tY~yN zWMDu;93-NeLH7|@9_@W4u;8W2S0s4jxHQpPG!tPsfr+x4Tqd5-M|=`YA&OQ{CPC|Z zwFL-l_9^!5Lx<`$^jbxF%_6;eQL(>1I~h!OfsZy}kW~0D1VywSl?%rOj7~INQ84)% zKzugO@?Ri+Ec9CpGP(7r9Gu;4hFrTTAmiHq)eJ7P6iho8nT3pOrGb@ zK&m(qM9vYrcnu4VBG)%1Q!L)VjS#~OFj50jzjG)JGcL3wsknsfq6oGMyermI20|Ib z=80sR7=eQ!Jh43@*0~jlEvCi}h;7jHm+QTzCmUQ|S3j);%mQrijtIELYa>$qw-i^b4pP5Z?k0`cp@4pBF{o zYkmO8iy%B>dEr8l$YRtDCN~@gLTWS8Y*i{PweN%9MC#R4Ya@%$2q#+$ z!iy$Q1O&~L-Uq})amqmW3Gm5qbWWt6QjB?ti(&dinNzKlgi5ejMyNF??V=tOA$pKA zWOrM^NT{l#;`U9&1vsZ|4w71_FG^PltUPm3m4>bY!zle_P-{}L)Q#UNT}9qQSK)i; zDq-(MSCI_RRhR*~O1TWsRU`v+6=sO2kb%023$|nGD(1Iy2W9(Rm1`ATC0tIc2q+6! ze1~G@UYmCH;zeiz1Zs4NKL%H&Z9v9hlta-oMXcWm28Fj+lxzuIl%RyJRc44{0a7u@ z6~goizgskmsKskAq{}M+&NNMrS_BmXOe}f<*9rCq4Z(wqjbU+t!*pw42MZ53iv@vt zENSjh(%dO&q0-!ANpl=m6&EVa@$3Ri6={x4BF!aFK$=Sq83&#aY3>neE;*GnH?xT} zr-RoY$C7cvgXR7EHcaaN$tR`PEWeKC-Ql>(&5}_-y1qtA;AmRmJw6Gci z7k*CNgx#R+2xSBekzk3=K;^Uvofdd41}yNJc|8Iuczp$!@!8_X*_(mSg!#JHIB-63 zxE3P32Y`~T;!?~zEOj=M!BmCeLNugli|`WvDfTdqq6Q-n6K-xa7+Vx`H6${j06)tZ zj9G|!L9D<;iLQ*%H6I899g5}goFAK$QW{kJCp)l-mz|yUPn9?=aQFQVo7o50WCt&ai{`z6Gi(xwqdhRmwqL24S5tjg%9z`@Ef~BQwN7>1oj4$w-}wAd6e5V7|(&NuI&b<<~&gW(C{1u zYpZL!_aOyB0vHNx&4#9H-bM3Kr2AL9=CC5jO0k!SS(WN`dwWKa)b=~DLkj5(o1vhy z!%Oh-gc$CbVDo{zWFrKi8AeQ=ZfwMJXQt-)P<9UBIRYFrRna>*u!BwMhB1LHr)T&; zvLHr`rSmDQ&H0oCb^wq|!3k}~Jf1&{ib^%(&Zmj}ZKj$GPH8;C6a=yf+{h2wb7XtJ zVGguToLB#TIgB4f*=A4TU3m>03#7p+BEVU(6scN14ZDSTKvFG>9{AV zF5L>wi~9!Q`-++8ULzYLB0wY&AxCV0ubB}-q)qfJPL`1kL!@_6VX}2Fjg!YA(-=vR zt`0)PBYPEKKmp?0LV%Otxgc;502P4)LCQ7@kbxL6XdnkVfvQd0tl$?9HPoAixb^TB zC%Qq7;17huU!=<(qHzw*X2&3pBnCOz<|Z->SwX9TUxrcnpjkowu-Zu3Sd9j0>U@Gw z>(B-X$qFltC1Eofw<-x2vm}vxD2dy!#gM7d0hml60Rvivo60edF|Sb0U0QT&6Iik? zR3ZDluv>{*48}lF?7vFz$gLI8EXL!Z)xdxwFlEs-H}`_WTRZy(?Brbz7tjsLN;Xz) zP$LQt@v#lc z8*fTo-5}%bX8eNY-A|Yq%78J}))vDH#U?2wd4_Qx8=(k>9gEJK0e%*mjLnIV992F! zPLe(4lMxMy+}`rZG>u~-2S$`X$-r^nc5dVL2jF2BVPu?=TghW*ET%mR4N^=L+kYUa z3I^G7aM?fw&?_jH>}(f^rI8)`nUiSF;9KlA#400T{e+c2dk+b1YZP7!h5i~q*ds_R7tMTgS8~NLJ!uIKIG3>Iy-Vdwko2BOrOz`sC>VM z3udAFXmt?I`O& zSVQkY2^h@ghm5cpDKmVUaljea0ad5(A8#V~1{_lCS$1MhKHVE=IAoJ;8aNdQj$;k0 zv?(A_0}pXzk@64QfTrQB3+jz6X;hj$vRPucIGLsq_ zkL~2O%x=8?DsR@?RUY^EP6upSuy3J3oU|D1-`U(r3{wqYp4f!ai9-%Fa~D`gdrNBQ zoFqc-`(4|xGnecrgc(6L9P3~-n2NzKiq2vtKhEoh=L^J=Zfy zB=>MIkcffAUEP;$8lN> zA_$b-a7w%$sUK2m|;N#|UWwX7XnF2YjdKzU2SbNaBK@6LFneZyagyl3(U)xYC#J?NcRI`kO@s1XuMcjRLfyM z5p##Kt?X3DfqjJ=&No11yD%2iag033hWow)FUIbW)F?>>B9Pu3D4`Lg2AcZ!JI@0W z$WcYU7_qVyv~l`BxBq*R&DbFGiA(f=)g;-5&LYwCUxfE%cAEQXOa-hdb%-tFKW3az zEa~4hC_r$9+5t8=LJt!-fsr2BfQ*X8fk2_QX)C|l1gfWqkw2ReZwTTwS6Qm->PgwVQhA^u}?rs zfQI~l#-yUID1c9jdfMYINK=uZA4O?!>>8JYrpDrW5OyG!MO1j!B?c`cN+b!o zEe~w6l5idqU+Q=XED*dhMdAbxo0nGwUf(eA0Icy^faF;Z!TZNR*A}8P39uY1;AvT$ z0rMY@JTlKxdL=@Oz9JSg3}aenT!u0}$acH9kFmE0Sg>G2Lt#f_`VX;b z6On=ifuKXP`|Vgxf)#O*qVMX_^w=Xz4CYq(%B@r)_`ng|6DL}ekA;92iBbYPIh>kg zOfZp&vjEX|Ji17sc;*79IFZgl9Ps049}F=l08Iv_0U7|)AV9d)vE4_}k0TiD z3aKurb5#GG#<#-mVU!N%^>kq1lWd6sh(nEdkeNmR>)b{Vf>tbJdK{$=^hI!iSRogX6Wb(pM#}?fOt-<0Obe(1rtvtCk>zq&4}qN)&qcmOreJv zxaU{UIvgf1lIq~Y;L#dXK9oNmsW_sZS_j6Z(mLRz4Qd@{h#@_K3I|O1seDyY;ehf* zK*AIT9@Kz}pyIGfRpePgH?01Z6+$4C5e}-o(iX60+0+&sL2ZHRywVorwP*{-CfYYm zcb7wup)AoBaMwg>3s6z0E%0NdEnu=hJ)j)epbAVUgL(iS%Ig6%f9TG(wkTZa5)#oF zrV3Qq2f#!Ga1yHdp);7mVMzo8dx81|7wG`E!QQA0b;yDtViwJB&<6Qrp4i0Y`|@2T z<(Sx}d0KR{{{?KL6aEI<5=&YceK8EfQpa%qA6v04L>)_0rcEsb-Ndn&Hs_m&sc70X z9YHKkbN?I}$uok~AA?lQ{n}4N1tL>*?FI9s8mN8gAa%Pa%4P@xj1G|u3!pB5pQwdM z*A}I5-8X(1lbF^L{@=ggVPQaNnzn!%ua*7uU$zC7oPdaAYylc$&Vouy@fs;`dbt>* z?CuLPfFsLA2I%e!mSYv8>nL~;{wW|zqx$(h*fTxNo(8*jD!60J8bd39{CZ=iv1cZd z$kjZY#YGu!&g4FRW`;D4)^Y5(d8KxoA*Aj$jw86@kZH$3K1a84?Bx}@@z+=c9sI=% z3pURv3NK7)jE}@w_A&pXv9}&N#$^THBZN9*a-{qxR(2qdJ!qB0xElH` zQB@g>hv{vlRAW|cx;mw5sSe}N-rguQ5PnK$tF0^eWe#q(ouOSv)q?+fY4(G*1jN9a znF8DxU_04HX=w?lxU|%c#icIqn^cH(*LHLDJfzApuxxy|O+F740yly8b>?NC$y>;0 z+yElnfauAfAmSR~`!vb*nTTYr}#tc7QHqAlD! zd^fMq!O<$&loM?z2qSoMZ($ z1TY#BxRr)MONHA&a4`?Lf>6V12+V-#`6t1^6$TZ-4Wi^P;Z)%e02iWC(qcG4@;l`q zC>x-NkTar0Fo582{1fRei+3315P&S77()5Pm``&6TJR1(&c~pk2tkeEN)s>u24Uit zU&4l9p&cNL^ic^wGxlVrY7bZ;p{aQS9KnsMxbor&7iJC;LlMzUom&%$p3 zWX~K$H9|RmBX~SP!2_`eS%bwc=MX%Y<&(ie8Z^YklsgS@3$dev;<@83PVWo~9kM(t zyD4+5>}FOH4nM-bBNAKz3u}V+4Gwu}02r<=!*j2^4axHw^C*swcZ%a<9v;r{^)`;a zsDOOCFaHgszi_BW#yDsf;6KsJgE zS7dC80lqh-fc2iBfE|v+1yny27nB2-xYvGP3#I?>8Fd7YI#UQYNMq{3NC*f!z4c`&!P z-jH3wT7X5kG2kiSMO*_ZMak|%P}M?msx?_yegK{pEx8ptCE#eiP5F$#`uv(OLca$h zolX3nM1z9qVFILJU<`c-on+GUq<;Bj1PXA`FoFB33WMN5VK5&lr!S>iK=>$8hoNEW z>bfe(qoBg%JP4IC;b)VHYUHn&n+&54&A|K6W>{^6DN1o! zSdp<+XH~8Cx!IR!Yj)r)C4%nP0y4*?geSAXUjQ#8FCueb7N!>vDL|66ouWsYm~2{s zf=%IK4PZQU#tu-WDS{;)I1!2z8=~zi=_N&+B7_jHOd;gbT|95lgrtgU1g9#aoc(Q6 zlWHg#?~yRvU%9j>iT(sCFtf;lFAlCwm@^$5BhVQjcMLkwFj6rl5IrYmFZ37s(bm}? zso;`<1>(hOG@}U89ND6QI9_Cch%v`*(KBRT$SIR{BV>R;a|j(E+(5&mchsb_81d0! z$XSJ<7g(H38el_$zAWAu2ABd!IUkGrmlk1%4(l6mK5!FScVNS4Y}3?9l}zNBohs38 zCX!j(dGaK%4t|H$M8gayhXy%}Z9owIQFkYH5bO%?wIIoky1_aGaVYmh1D?w$I6|pRR`DXDsu$R5ppv5Oa=fKYr0H6nTN0!V{e()X43aF(!pjM!*+x_+2t-m9)_ZX6Fu~1elxVUSJPv zw$p63Q_9jcP(sDZ*j8j6(f&0N;KX3Ih)NE*bQ43-5J_W4oIt&s@)_h znTkuWg}UQ6T>r1zEfk=i@x&IEn)XgSR4^N$E0|@acxM5Ag)Bq@U3*sl5(!rV2V_La z#uMgucqmsidK(N`xy#Yp5jt7{^M_lx-e|{AhzjL-=wGxDod^{cZGPn$vJIzl4U2a3 zx};dn;!h*BxQeU~?T#Rx03KF!`K3v;t>YlKkbnl#404Io@YyL5OcljI&Dko3Shx8Q z0IYU{6P*-ifT^t1QJ$nR>c*qMf6WZgVSdhS@*0@|f4F=699x=$%Ng!hI37*GLG4~p-LOnKL<&Ncp z2k>CcT0XwP#v@i{Iq*Cd**%4oWyXudLP(<%HhdU`55euRBO*_yL`~2Eyzi4h1yl#( zR^a|75#ko{vrTMq*oPHumo%@we`dBGRvc}*fGi4arZ%Bjr#T?O%LKb57$}H&5VDsFe=DGs79jkk z+}ETtRh;>?5MJolau7X2$}th(+Fy80v;7#_4tz+76hTo2A_el|jlCQY-e1`{7^m_D z;l(?8n@QGu2pifqO_dkB?-jgrbqJ}^^|d_un? z`OtKuzDC|SKMXXu#$&of-W;l;5jg@vNX0x!HN@EGaK92RSIkzBcI@p5yl_N-AxqXo za@ok!{62Q*XH`}BHi~y0Qp;>TFFtQ}hFiuojNdN{5s95-}K)@PWgvBT})wRn0 z!Y-5!l0FPqk~uX9L8Ior->wB0PUDrD#G;?bu5iH&R#Xk{-$~6FBZQ&9WVo2n%jUvZ zJeLI?%A=8?RDwjoxoPNScRLtb5!FMD89vBF0z@lC$gC}gt3Op#1?G1Wj|w_3@JD9r zk!G|7+&=WnFx7=ok&lj%NL4G+0+t!5M1V9(;ut^xsF@8=fC3_=iUY?H0&2hx4XVOG zA;b|fFG2Gd; zQ3BD3ONQSxR47HO_@v{>0ec|5526Cwtx%!wwV>{VitTEo3WY=F18j~q&`lE?-0NKA z0rMc1!Wl~#gDcD7R4kl52!d{7m2h(yuUk;zK2iXoA;k_vG7wIPh&%u(*z-f|9VXS% zw8>g_2Wx@LqybU_4OO-LeR(8CYexXx=6=lMh!zJjdr*cYTJbOR15kT8E@)m$T*R~r zO61Ta7vg$Hc?mv^wHywZt1AehGjR?-lM0Hzsm)$qyhCd)@=n7EibMnz=)tOuqvVnP$vjaw*>Si1}w@VV2tJGe*;m@1;J6i53s zn3uTF492A_#F;L_GYm|@TP<+Qw|d+{{BRptU>{t_E$jdQz?}l`KcM5W?ouKb=dm#J zGkn7iM7ME+Fgc(dsuokQ4jXXCf)eKniqUH{qmZ}=r&Dy|Xg|9HE89U}v@nCgp&T5F zhc54fMc*zwfNSZ_Z0sxx3KS@l zc9R0JFA}1*aOyFdf;?z9DG=5M%s3Tu42M556n-qVuMGZ}0Q`|A{1^{a!%ym@k`MSJ z&kO#@kP-B^@B_OfK>YPc#rPCJ+_4O^=WcTxP~xIM2%#dR7?neeVrC|Z^KjEB#-8*r z)uc4o2L2(X0so{l*;Uc>Utlu^5K{#I(khOT2ekX zHEcS!REm{{_T)RmO6J&pBrN4T@>Ci43~uampmS_sjF63(WkS<*gsjRAT}aKP!9EOY z;pVW_(^id06R;NYZ5tFoEMG9xN@_%!oO>lT>Oy`4>SSOgHRKzTl-!1Z`!G6mi307y==*b6^eAAvmZIgpXz0{(z!zvdk|*#Z3sCCU6@w zvx_x`IV_b)P;vvVdGoSpMK z&h1gSP&Ias&^5G47Nr>AJy^$LY}*RblC>yl&Ng6XA?q_B?zkF*>gr^C$|tpoV=V68 z2q>>kqoL#(iqsoJQX5EWU!(@LQYW-*me&>Kp(Yz(;gXQ%S-~YAgcXG7!YMugm^wYd zEah@O1tt~-R0SqL2m!Nv)e6jWRn3kiX-5R?6HWsxo&X%-5L5sl^uH<|s z1)ClVCz4C8UpN;)h(Se0`%EyHI>4E}-0N5xEUz?65n9Hf(fJ;Ww#s-zm z_%^K76m%-Z5@I2BD@D;ojtBlo0~DIVU6|-bp?1y*F&*0g&B@_xN1P)v$B6QUL{v|f z1`i_ErbZRgFb$KvY)OL%C=REO1sV(Uz+pBxPIK2fnre@=C>L*rq1`W%+rx-Qkc4A^?nXt|Mt=++Gfdi|- zf|d&7B6Iz>Ee&2TZor7i2k8pw=w*ii>o5&3*lr(XN~Th57l*th#ehJlncgM_ky4mB#(aP?&0xSqN00aHuKo%pB-{RO7N7f#3`Vd9aBR z<05RMW^RhZE)JL~BHYLAm5!ePJ;HQSVGp4oYZM|P4a*>d%}sU=S`(tAhK({37wE;7 z<{b!9v!z8W1`4gMgU(q@sIFUODI6jW>ZvgNDpi-3+<&-f5UuV1k#aB$Lv&_`yCcnS zMKnm&26LmA>=K8JekO@|7sDEC9(@NhviCUU6MbJyGHl+j`Rsm5tF*gx+Od5!BZT)v zNJmtL!3tYA1zQe#lx0!=rx>IN2%Rik1U4=J`Y|Ytdei;(0&xEIxJS@Oy%_;9TVJ!6 zi0GxRoObnfe#f=CqZqey2Lp3#qP-D$kt>tQ_QBZ83cxsdx)l$$Y6FLB!SLkSqA{@>kipydJ%gAisgEL#NvfM z4P6Ba7JmqIEv7H_ad&@kU{uBRkU#}yqwZ(eYf`XX=43j+<={n!VUC4qItDN2@iG?p z5={X6SHTJ(XDnT&)l3vnjAW2E1GF%d@QGb*?G|c>w&QbARl$uoGsomaeJ-Y_fGSVI zLbX-ZWpi)0TVY}63AV1uUc*p3fqy~|mZjoIDrrO{8-eH|k$*re0F4GJsDEHIaM?W` z3&G86aIi!(H{&Fsj-cFZrbdYGU#f(R(d{55&;~edL}5Nn*$4wd_D~!^IC6Q5Y=#%@ z(*#fart;j#izT&EJHw!aFObB-5NEd3q$~&Le1Yz=xz{;O6iV*{q-?c>5wwGrlRhAH zr58EvK-WvWKl_(@jEh6hM>`U2qKR%A&@y^6gplktcq5!4WA%R z1=Ry?h+#H~jX>XE0|>UT5CTzIe!6&@)MCcnlx`>O%;nRYU^XZ&4aCQ3<871BB9~bYS|N zlxB7pX&-d%LKktWN$v!Engdj^GL9&d&O+KL=;qfdXcl&G3=a|)K7w_SDgp?G9bgg+ zxuPnH=|O_Ax#3_%4Oj$mi*VLl%>{<6I|AG4V)tUTfQ=j5V>LT8J~*p!4`m4NWM5wF zriq~(`=Y+Z?n0d zct^|3EzHQzP0!IY^7HfZ+v*v7&X}N2&&|(BA3r<uz2QK5s%svq1$J`323gG71VZ znl&Ato_$2ZH&oscoB>G=Hg!i<8ZnR!iGPi)auJ$BvD%du{PZuZ}BmnwdKzJtuR5o|BO~ z33zO*XUv+KF&xjd)nRgaemZK(A1@@vx%)UTD54Akuko_ zWi2nA*y@V(OIuBBGroDN%UVusF=1Rrdh_NJnztC&qGdDCTYfrN#Q41Y3_(NzNF$?J zCi+w8uz7^n)*I#i=(O2V{v+iV<~N&~UP!LS3YMY#J}7rL%1_2M^w}5kycO?5pL>FU z8sL5NS)F9y6wHJC?n4`lA&vu|6y6z|D9DtWIc9;K8aPb%{K`+X9Qvz;iHII9PS zM4W{_6Gzr_Qn~kh=KFN;%zTa;eWLKjwqTz*6PsohjDbMOA2Tj*dhP_!M8n*SnPb3D z8vXx;pJQdbA}T>F`+K3wYwH0R=Au8z3oKa6%>L}ur?WnDGB~zyYjV7Fo$S7n^jtk} zTo!m-C9lk$tn7`+N=)WBw(Zyeqa529OebF-JE~$*aWDxo1tQpDuH{PekG1%4M#1>> zsTtN&?(`|+K=ATk&zoMT=S|eXSSAHBOwY{}3Y33S^C0yhrV8`(a&&fyuvfj|$mz}T z(}b56og3*B*-sUarD!-iW41m8oIoF!0R*Zv3mAbJnuOH`<^@?xP7}n;Tz%T~JZK6N zbMn#)_0ZBLX6Ax9=nW@fob^ucO^jXAtVw3>#6~%Jxfzf@=@Zy%1=FFgOrnfISrBo$ zLI{|4W)9zv&zmwOJ@{lbvS4~{0Im$Q4tNTF40by`zkqa`lQ|``5G@#=kpU5}14I;> zp`+BC=~Hrb(3OTi{xpd8+M;o7f-B{Kg@nS{Q#0Czi%DBwu=0{QJDV3f)U|K4HVQhfrTS>iZRy`f#b#s3lFT2YsQ;z@~V$1 zv!~&Dd`8zcygsnJ))ZXZf4;K$1Gp}$yL0P)Tw7jvD%;b+R(hn(?3axWwz7lQ4rw`~ zgKc;3NmI73?OKkd+d$uqO+Jdx6|?+-`!AFI`)H?(8T!`1L(|&vu^Q zYgc}H+GSln(`Uc^TjJy{shLAMY^r{5mnZM9cJX^}z1yWu_mwBFn;+SA^~jfhY&5=I z*Dq_EkOyKDTi|EZ6=_AGvT*sDJzbh~$ChZE0bckcG;Wdpxm z?JDXvvTWni7cG3UTfy%8%UXQ?dAFr)Uymvoo!b5G2_>(@rS|K-?aZMW@1|edy?OEN z$z3*Y?tWG7p`4tJC%V7&TJqxSK5fv$__Jo#S2c(Cc(h&Lqb>R_>ygy!*zl_+?CddQ z?5ZDo75~;_%BG0i`#)~hv*XV@jvf1Ie9x2(Ki3(3?9QI4E2plWUgzzex1>+JE;HZJ z>(p;of92?Nd9VD_OF!E=F1J^gKdy+|a^`_vHRtSpr_l=sdfj(t+s=jSVtY@x@7UVi zH>UM&x9iaU%}rtAO5_d zZ|bVnx21ftt?#&w5vT7?Io0=?LC$Bj5f}HHGU(-mPiKwoxBKFjgKMr>-fvE;?Q0Kj zeXU>4_MvaMtJ(VR`myPYH>bAjf5qdQr{w!H`|ldoC^|m-zW#L%KA-W`1Ml^3(7WMF z58fCxV14>ek1u)rssWzjA>UPRQZS&;$o0oZonA9w{L=@=P56$2&h=?dOmB z4SJx)*pGkczi80wb!WY|_RB4Uu1>mS!W&b6929r3RlBo$E*PBHd%>P|?MDoL!~5=i z7e?JO`0VmmyEO0q%HVcwHx1jm^7p|L8zgNyb$|0ArQcP*u;BFxLyjC@^+WubyM`=z za>uDgSM440!>G#&Huj1bn%&B_%$I(}&{xuICo`YV8@i=Y>E%b?dvNH*Ez4g0aQDHX zt&Fa-68?xAw!LAKZ@wPcVc3uPr&nLla@Mf*OJ~G4Gaetdr{-gsFC0HQ?CP@Qo!>rC zeR!YUHBYU%vDffR>ootZ>&*GXOBxilNlkff_`OX=ILCeX?eO`34((7J?IYUh&mJG?_+><|M?UknTzJXI=H1@9z3kHTkwqUF zTe{A@edLJ#iC@<`{QAh*1wG!K`i5=PkiMU|dYx@KYRa+OyB=wmHEQSMqnfOnST<^U zt!FMDQo3(cV){|nl(Oj2Ym0g{=ory{^!|^=HW}nB9K9#;`B{&-9vwY*$d}aybv-=# zi97l>ZFN)9m=Rl#&7MEC>zMp+M%8$5Ny(Uto^JcY=hdGc^W&K4?8Aq?9P{0CZ*&^+ zex0!=``>rt;MM)dK6%k~P1p6l4x^)C+adlJ#@bg5TR5ZDPh(&HGw*_ZJ1$H=`Ntbg zuP+#xKCAfZ7h3JUC4K+MrHwnZeKpasj z^S|o)?-{pH|6$C4Q+vm)KK^x^M=o`afBS*YJN2L2cKr5hpUA##>D2L;PP(V_tfwCu zf3|(v(7{JO7=Pd7M!&Xd?49uHj-LxVwCOlu*3-@VCwH1XVepZy6NlaL#DvzK)<=GQ z;j;-HmUcKeeSM9Ly4wnX*D^v?U^>OXJk+A z+VSkTd+XgldHDM;{BiB1_a{Huef^wC+ha1H=)G>;kxlJ0hmSjOpvISlnLoCDGxo6l zSmyqYWs`3lcqG#^cz4?4naNp8v*)~5b78lv0@tvv`sZ`Aq8@6~q~#A!XT{uf?d94x z$Fq8#czDtF3+iPzAKdWdoihhyZ^^#2#oR%QvmbNKJ@ZM{i`f@X$Q%8J{pajf?cA+P zUcM-2zUStbM{OLH^Ukiz@7}!Z)|^*=d$s*nEqCR#*>rkYefyc5`UUs29qhYw$~S$| zUR(R<#3^5VcI%dE16NL&`qq`LZr=FL6wi(uc0B2Gcb}F! zcitZ>zFfIF_i*~}#lDD-avK+K{eJmTZ{CcR*%!A>?Uc8Cf$N#5adYz8B{rDWsdz)) zo@!Ixykq6DytyNHmu`Kz=G3>ZDBe4$R^O=|7O(91jlOW|z{g%rxvi?@}9hc zAEqW8vTeWMk^0jHCmSuA-8yty_OM&dY<~9UX`daK^GVA~U!L~yO*O0SIQ#3g0YBb% zPyX2^`TKt9aDU`Ww1u4w?)nDefI5* z(|>$D`REzP*VFf(?YSOjM$K4qRoT$G0|w4$)_eE&pHI4e#+LLsS%s z@biq}E1TUogVvwO{%8MCY9$FrxdyJ6y=WeIbZ3~5q&Wpw8`dFwA9d&7;_ z%*n{9U(~wIlXK>FX`C8y?dNkw5Bt^E>5E#|e6*r%t8d=!d(FG;uD5^Txb~XPH(j#e zaL3Kp^t}9!C*9d6t{LN+bMIT%HYob#x*DC+)(k89ec;>K*GDZYy8PmoUtJrsvuM}J zf=z>Ce=9ou9)oHI@YGdahvV29*3rs939cVd!NT1DETmdZ|%zWP>VQ9e7U6V7Mn#(+#kf7Oaq(4`@OSU4{_?-_h8-E!`eDT!s{TCj0H%)jby5Ae~CO^Laxy>&e_~39+ z>ep@8JkavHA3qs$`-It_&OMW|W%sqme>ri{+?okrH<@?WiiFd#``f>`(UY-b-i&UO zcU(~WwrQVScIUFGUu*YVa{r=x7FO%9y`<5Rhky3nlQQ_rd!KM5wrSNO{>=l|W?r)O z`hzQ;dbjp(%Z6Wl;BXt?^>^&+-1$^o_1_D+?&o=sPp8#2bPatQMccy`f0a%?q6Abdymn{1!d<>`mdjvijKe_5kec^ewETy)=#Z_f7U zn*34C@0a~Ftj@A~=T5#pWB(Q2F^x8Ctn>08Jy%@1=8^a7|5Ed*&BI1L+3JpV>qgYu zJoBra$qmPST71#ywJQd9>-op6*RAr#uA2PX!PnOQbRurf>E~A8UhAsro7>L0f9r_h z`AwVLwy@!_F|Gj2)I zvlrxi@ZPlX>yLg~yV|WN-M~wW`(9I$xz! zdmyFD8}Zlw{B?HsTk?ckU4EwGxCm&n#P@M~|nDuM(I;CH0InV2L z4m?|Z;qQ%q`+37%TUypn?^S)>>BK93?b2{S?~!8$UOqYHr**^YHf{Xg^V8kMb32S3 z&~d~KU26=j|M9M0-*0}`+ch6;U3BG?qzm8uEq}@N8*hGUY21&$U6N97lhJhPgOL~K zH+FHGaSQ#npYT*s^_5-Tfn7D~=`o@@w=&Opy?VdgT`~P%`uy$D$+fPX_l~FZ!ylb_ad$2JpojO=zRB~G zZ9DtyKla(lvQvq*E}8kA_SjvSA0#|i``4#`{U~|sD>rD1lfPeIco4ik6`o?8LQs+*XV)Wm+wRmjo$(tV-c{pXyvo}ooDD%wgU$lGqVDI9& z35Rc(ng2?Bv$Y4BId4AJ^sm&?_ir5$QSj5^bxX3Ys`FAtwTT_my6tUv>b=432Hn~H zudfpxEOVswG8R8SQYPlMlRkMf&WSf9_~M;)iMj``h)|)6&0e^4n{Z z-%J^nxTx={yKa7F^6H`yGYV4%kErwR!`(l<>K47x|*P7Qm zwz>7my{{#9ex?|`&arNyzyUaew+>J2wdv4>87B&#PFgj6ajp1;(|=vk?5e0Que-Kh_0eV5ErF6JU6e?z=WbL?hi}uSemkY z<%%V5M{Q1B(QJS6UkMM-oU!5X{`@ITtIb~WNr%7I^!x3WpP!m_>V+2*ZeD-p-LqHM z-ckG8=Z5>oPpEzHh6!nxUbaE2eqv0@GtWGW!MWg`n|BP;)(!jO(6XJEBtGc4Voddj zU*1}`oP~@zi?0O*SmH|tG@EH8}?s6u*Rt~N2^6eX5N$ds&nlN z@dI!AzFGEDw4wf7qhUrGFHfA2{*Wp9a1D*LT? zR^gTX-e^#A@S4OiMRj|npZ%@TYq8PKwOIeBF?W28n0aq3_w74S_R2*KUT?W)e$vdh zW(|D%`Ijc;d8Tymt#4EBw`oldtzN#T-ms}RyxnWaZ#8zEe4)7Cq5X5`{Cxk_SFQU! z$^Ct^*N!)R@voORt-SQi>|g8cZ}4-O{!)vHt$(k!c=UkVYP_~}(gP<(dG9J){>uNy-Fv__v3!4^*(CJddl6B=60#|qL_x8v ziXx(@*uy5-2nqxVh*+`r-o=Ju$KJcwYwx}H-s`np3-8Qqf>FHn_xt_d`@HCqOfr3E z&Ybc+XIIyI68u}vuRVU;d85~>^DTz9$m`zh`T8T5vU^6l zJxqRd{^8Dty;rv?88>)LZa}C+mZb+kUQl=c`-A zCY3bnCr_=bX2zsYR!0IKoeg>zxomlt{tsfBeK=|BGwhmA=(Y-Nwn(<*s?!+fR z^sVGy$(IaVH1Tn8?7hX}=&wPIH|4j#GkD21UtWu$yAP2~&+I#}a^UQwLmtQ0FF023 zky}f;Jf7@r*|w&y3o%pnEKHxwhA~z{FcyCohfu zIPkX_{$8c7)tGgKd$;Bu7<(%8*G}8WfD!(Y-d(5cJ?-H9Aa#xA7q6n;Tiu4|oxEbG z9Wt!Sz%Fiu6FUXQ?kcE$Upu{aos$;>;&SiCNsmf*wAk2?Ep=?+Up7_G@tIOJ>4~2ZI8a)_gb6F29lB*0f3sM?O8_z4g=H)Uzq+CkpZh zKhAtv$Gz%D8|PuNUiW6cJ>%NcUm6rPS>=#EUew}t)%urhy*m1ASbE^x_C=#E4`_Yj z)*08;?!#Ozg^9Y~7(c7^J$}-F`$6fBp3O(KkH74FJ?O-enNNI1E?By7e(wbJaiT!-@78e}1*7wPeuekr> zwVdf5uN;WG_E|N?t?0I(%G6fvL)xF`CC+ab?zr>ChLE1FUVdKm%u542gR;K9e!uqP zC0Eb9uDv}A>-+5f+F^f$sJD~r>-rO)?X`M+^l){1=f2fe`R$qIyz``@gS}x#QTM}P zqdkw`seQ!wv9aywY3r+;3&?U^Jy+NBX$R-aC6!t^w*DCJzq@~8%F9)?d+*q^^t>x$ z??ar-@T(xG}j!8qOSF&;S zuHHNE?bb?TOQv0&;}M*`$jxJ4+pubOeS7Vy@pbc|{FuNVT~{Q$nD>P_ntUXsX!11g zeb09|wDbS^z|O<&L9=V_?lsqZraN@fF1k9{`QoZij{^^m5qDeFByh;;leInGXu^EX zUZ}kNb>^Lul`kL3-ScpO`_R$F`yczvU4J36;fUFbX9ac3O0;@$!?$X~=fWbNp{spH zyty>H(z=_ix{aFMEPu`$_nemRG=?X~hV`VQ`b11?8Qf_}=YhMz9M0_Ty6ezT_jkD!OAoeL*U;m(hcgv)!FOY` z`jPW`j#FM;f3kGFT{1Rr2 zW=5PEyDVmW@w?lacAk#6&ifZFzWDs`rH$2^4{YR07lwB(%&yYU?cK;5YXpw|!nh#c zxVJ;TI(?|+*CFk^=gE0ZJkEBSbENoVlxLq|%UzohZY`4zX>Zi*cz?@BhZ6tpT`uRi z6b1T4tq%V5yP=KOFD)Bay;QJzMWx+MqoUrpxyf2MEgLI);AMBreQm!d%>(v2b$?#F zQ^@iRdzT2wh)Z6xi^q&&ef+j3+d76uobBZ{xn>{t=-0nhZ|8LL=%p?11L{widgb$P zzrMT~vo7n_0kyZl&E0!iC#t>wk++oxsP4N79|pb*|J-K$`0HT~@^K3SPd>dfI!Juu z(xRpV=Xa{}$oq1|K{0FE^}qFG{_%u0l2+~=Rm!Lhdyb^$pXz%zVQ^B=of;{-I?2x` zOBjZ8z8@ z%=m844Bx36ZPGtHc)o(VwEpb``AUyA$&NSQ)ae%&{&s8Fps>CnbjkVnccr?skH$}V znEFuccWOk>m=C3c>OVI&c$O4e#WSa9(zN|YXPtO8PVma5S%_;({+3F`jhOy{>#QF3 zUwOpOMSft@qtnffdUrhawDi?{&r9P^t0CY`jQi@#6{Q^py8iMYaYky>N1AJ#KV=LWN6VbxQkh3_H^? z@O3NeA$14z+Q62UPI$OvwfEclN(Dh^_HL3$uMB-w+5P$4H?N3Ps%E>vPbL(5IRuUJ zdsn4!OXp8F)3)a%x<&h(@6~ze?ce)FJs76#6q_^Ez0HI#=TE+$cCY&-rRLbs9YM=4 zAMWWiDSz-Uy=pv+IepltjhCTD_j=69nFmJ>C70NGgoXL8O6Z!}Y{KPbG0kIhf*-EW ze_eZcQt{=L!*z9doqUINVj@b@uRdDYHY4%qjJ_VlQ&OGSl_^W_j%n=Qt7BBipa#!k zHtk%ubx`+tE1A`=eW}?a$?B4KBI=j>J0G-r>+zDw8|V?VQCR-xLWfe|t=X!0*#$TRp z=v@D;)4hUy&m#PrT<=UIcfKdzTO8CyIO>__xi!8-Nxw~d(}Mc7JZZbrHEd)1!u)BK zid>?^o7OEp$>o?x{AVDW8F>_p67VopzQhrl}HF8A1)lk2oUwz}`{Zaw#t_r{06f3~gh zf-X1P{Tf)qs>7z(pz5Ozo!Jo5Y$e|(T-Zl_tZy5`S(j?}vqq)5TW9Q_-uTeVe$Upr z#U!}r1kK$s=caYh?&-;U7Jn&r9`AGiaMNa|3wVw43!ffNTzJWSeuMnRLC1L)$L?Fv zV1R98@W7KbGJGydJ?flFo;~wSsPFMb;o; z-sX0&E^*5J+N7@2=uMyYS-WrW-Lz=glOtm`Hp!|!^;9?Ky&lQM%iKM@!`=KFy?p5I zGcV-Eqvy_78w|Sanf@lJ-i>&_f(pAX_LfMM9>EuP)%o(Avl5jk&+^O;?zS59`l zaiv7JAh{kd&S!IJP`_dRes?N9-f)9BHqSj}#u`%PwQ@t?@Cot9vzq1JUr}Z3@28*wv1j;< zPP?Ggd)=B5jhpugY;m=)Sz_QL$&HAyXRR+C@^5k9fUf-KVj zDEY3x04(_~KLAWD^CO^%Wqt%W@wTWB0Z#(Ir7-{nL0(NS3`DWWj{zwNzGr%2V9K}r zCV-0hR~`pc`Iesptdz}f0S8<`5K8q%Q~r5}T5`Y_)BO|fT<47eFsA!4WJL-GgyHUA?EQ;9 zIY10|{~nGTR*eJ3aQSZ=(>C7502!RW;POd#hh45UH%53XwzxpPAb2GpSYv31^zbv5qv#K0Q3f3Z2j z*zupoH01y`JYM1itHkxayK_Jr$Y1={T32-0i38jO@(PBw8+^TZ$-xd7cmrL>lOcX zwi8=9J8=LV|HlVk8t5y(Mc8sc9oO(rPmg%JOQa)@VZe^(Gu6X>v!;IC^)wa(cl>4H zElyMjE`2{~2?p@E*3GC?f7!jSZ#TPRAdlz7gU`=+&h01d!U1~xHuidKd%0m}UR@5@ z6S8*nM7r_Qn)4cS03VO*QSaNdUmSO^JqPshJ^yL_Q?XmeUTgd@;3tF)dNpb1$o!`( z$7A4+$1dG7W#+SKi!c9%0YJVlc0?RF^ssLWHx39CyrD;aV81obPdDKJLGGHf(-vIo zv}{-q2MqG*eW$j61={SH;(6iactF-p};x<={fkN)7^q%g^)P2qmjmCf>pFQU# z&QtONMlW%|z@b3Z{u>cHs!m9b;{ZhN2RHc`({poI1ekzCTNhp%ci{Bt=^74D6gYX< z<1O2N9W=KS2P|^Sk7OS%U$3*-;DrH3-WQDhZlAvu6Bot-jRN$x(f6rlGC!kc0ysd4=|kx-=?tXz$X_7=Yw2Te+i)kCkkNngb%a{^GZyZYS#j(-j;b z$xD*rJMp(hMg8{m!oVc|km%-DJ{%1m&cZ$Z&0xG z+TDB%Sn}JLQq8*B%Mtcb9B|3?u5#l6d3yC@H8}v2XV8HKs`|t73hX!_li%IVj<%j@ zQ*Jip08Jrd-`ET(VLGLc3&g-CkL;Imi+r}`G+I{?1Dt%vrC%L4`(X>ec_kR=6nyE| zNBJ7^jLTgI40!T5A=CM8`*OhJS^@?>`3UOuy&m~xOWVmB41fx%7w259X6>9!vw}Dv z)Wj>NHXLl$;+}v5MET^kY7ozMtxD&Tl0*I57PRnx}Q#(*lfdbyq_Lmdjgh&f=D*Tji_!biu5m>q5yU=>jKY25rZ zp%of>b3iM%fxk-~uBR@&aODdITzOUe$Q$eR>!f2XIpCH5#=_k_pSA0=JBb5exh~lA z@_cGm;p&I|F%Zi${!NMFp!hvkZ{NUxEI$|Drw>jUJ|22D3InrTJ%S%F`;X*BKYES< zTAtJIrTo5W=af+kx?-S~-`C)eA6QZE%y%xpS-ES}G^P8Fjeg#zyJwG(# z{;>~*BnE)Fil#Q>u7w} z9ZXi-bLIeI-Y0rpzp=H(kU6JEVW3#xFOE-+Opf+gpydE#Zm&+<`?|#e6y6+g%=>x$ zx&4+nA742t9s|e%az|Ed9(gFX*@Y+!By)4mcsk$sX?*Ch-WX8k)n@qOQHeD-r0#By zfo1;GhQ`U+4Z7Fe+!F)LTnF9ue>Qf?u@?8+V4#_2cpcn*-}y5hZe zyvqHb^i4_T-a5)MDmQ{fOW3!l4AyOa{ncRNer;_oYrsmsL$2sp1$`51MU2R zo436X)MvqhRdYDN-F=OyS)~r6M|a?Wcb;=U<tdZv` z8#$n!$EULcd(?k6^5wV(7_jGCb7aL!8&T{`i>)>8Xrbu0H6DpU$@;_ zxBS8QFb>G)^JRV2%k!pIkXPdXeL=x%+7A!^DkFMxz&>}jQ}<;nVg~+lNr3@=-n-U2 zdHEf?O`aTrfqsGS$49J)+Fc`L{uvDTbCYk#o?c7*anZ=(82INsP&2MylRldgS3Jf5 zz`zN!{l=|ak=?Sy9RmT~-U)9?{M)&7N#+27UQ+AnyHcXg#Ma<|fdMxKyYgmz8PqtM z0|>fZ+`Dp$;7f7)rW{bv%ejYt?*`Ecln zWNHl#K_U6$Om$EU?FeGcH_*z@Xn-vb)V8Ee=(=UBI4K8h~ZneX}L*K+# zg_oLmJYOGS0wA95K^$~G>e+op6b2%C3_VNqaxZOntUm`x^j#7+(Dy>W)w|UkFfrIJ zvxT8y^URCAIe?)d4-oYwg^!raX`kPRt<>8?vvIDCWm1_qkGyE;_~^tc|sKj zZ1n#1_W|RNPB}>1Z~(`^tCjhQTX0IAFk|_nqg#`{Hg_ z@?S6(10MsLwU!2Cu1J1ai332o6;@u_1B_iFYG=75y00`;D(BXi=s@7KeCO3%IT zUdQ*dzFIgp2?HzrdaRGS8Dx8A;IM}nU>S1gWKfCwy93U`n>uxuRX0jIpAgRy&$jX_048%czPQHFg-f6{!J?smEK-_1p_gCHh#T1J8i_S zD-&8`KxPm*w}gLtLvm!{84S#H|GGbUQ2PZd-V7Ly0h&HLHrEIz9cN_CUxtC2K|LnT z+Bj#idgwxX4A^vUwYk1-=!EwV5;)+dciN&>UmoPXEt+3|0i1!v!&YBcr>PdQ9FWtE zANDvVXzwuR{v4pwd*CwNnD7mer{@g8z|MdPk2_za+}hV4U0G|QwYvRY9_-$X5GY9;1YjZ8cD9GNl?Nlue09tbPLG!^03#;z8 z$3Rg3CwE`2ac{Bs@-{sNgt}G^&gh(6sl}#HET<)$XqyN$V&_m^&eYjU)}2L zFk=!26m{)Bj%t}#J1z0yC=3|&Opxxa>@{|f?zRX6NBzQLbF*f4Fa9!fD+Z8;cr}h2 z$~!Rh`aDkzB=zv0d1dkLo)O-M+F?McZ&AVNQ!l5k?NEyYmWJrYR~*!4PIJFX9Kh70 zU(VBtPlqf}uUv(JroOW$JgDBK%jowrI$*$QFn^nCpLx4C)r{qUr|!Q#@+>^KnvEO3 z2?J1lq~Vu;`8{w~ha3)w8Z@s>#FoJ9}P>K(!#=NBP6_>_t_e>{FEj}r<1qFV2EKZQ z-7g(;jm;YSipBs~|8p;P^;}lR`s2o?7zpcn_{j_JDJL3jD(;K{v7S5bFYnmvSHFAB zIAE+FmGvaQy1#hU%a0f!>smivKYdf^=ga9FP}Z~6jsE@aMQn2$z8?c-{iF~HVm>=dV2bNw6y%U0NkMAO-h$(hZY`c&H-`Vs|M|w^0^Ct`<)03 z$o0;-E86yn5G)VmfVqK(627#GxpnLDtGO7U>(+aI^s>?IX0p!@Y}I!W$9nr8Idb;J z3ts7?{Iu8s(I*35b}qg9c1lVe$)b7&q_XexBdL;`_$P*u1 z4{|0RD7`yG25i(6Rmg66*KKLa_&d)oestAsvs>oerBjhn?M?Ijddmdqc#ozeiQ**|C~k`bfdcF`XAjdw%F0IaS)j!6rkP zPEx0u`n|inuJ`VwCB@@d?nM5X)$z*aFB~!?hGL>8`C*=~kR4$Xt<&<0@ zSISkCm?9|&C8cDPoT4ZNrKD5}v4T`c6jFsuAy-feg+i%NDaA@sDN#z5GNoKeDHTek zQl)|}s-SrlRIP$yD)f~|{GS7^v$Bz&Vp@djWJ@B%kte4#Pc z2M1U~#(#brv%j0sGzdaq#CZ97^|?7kN?)Xijc4+~w-*8y7_$HKMm721ehZN}aK-%pO zqqz>wP1zK}0`j7lId%i`S*-z=2rjcjGnx_zypYZ0YYYZ(JceiyDV1r?-!}^0(b!S^ zlrAiIb;IY_AAbAMzqcd&j_#wm>^Ilz6kZ?r4fzC{e>3%!HyysWf$zbAJBJHX(L4)} z9D7-V2R+*P$N?LootT4^WPoQl%z>#$b{dnJW6s!v!O0wm(7{4=IKdS*r=Tq~F7y(K zIX?_@JPjFqCx?rI3;XOx>DVk|lrB93d*TCCkccR}n9N_ndMY0bAj_E6iw&(E6N=xf zg=VB>strBZ>{Rd*;VB!s@*<)BC9oEdU-cgq2YrvZIMef6@v`zOp*&g-=CQ!;PRq&1 zAvCaGdls9GL!Q7I0*CuFRtNs@nH*7oXb<{a;}72$*_>1Z_`6%g#mQuI@(kJCEWfg- zgwfy#5hz@Q>04H34i5n?>(GEXg~NXI0Kat&XAX>$u@LjGefh|vRG61nRMh# zlMkNhK(LGk7zBeCL!KcQqPA!t96~o-8!UW8;SAaNX%IT(TdM49JP~Y0R!%;uu!bQs zJs*NrK=6}%AcPsn=^jX1Hq(U-&0uwDxfvF}r5g-cC<8=eF_Te~zkCEM>LLm?=4XJj ze78`PFVdL9z(O+*3e^&t%4F)&%K{UmWoALR0*HOVWUvsk!|Xn<1Ja(825qBg26@>i zB0w)7@tKCQei^eEEo)@iZYYpTZYKJKqivuzEP9K=3@~M${I~--2195%1Tca)M@B<# zww4Xmda z=->kbPbK;lTFFJxhTvCNJGfy(W|wdG4M$(f&dq{QA}|DVRFU#A3Q)gIVI4Bq47ja^ zoKzq>*ndAa6NTF8V#tPFrQ^N|jW8HZpU_@1?}2l19F4gN@8~ zgTNHIgU9;}d67}ktqDh8jX65J!|{%X?Jb7y5lz!Vg=oJ@;WE<;1$;&?GmTYp$+ENx z(lz0#1y?j&F>s-}VC!OkuR8D^3s+sZzRj62R|_}ZsLxGDd6B^s(SP(AUC4ll(rE9a zSPQ7{s6U9dqR;4ZfeZbH@>Yfm^$VSM=uAg>(Kt}-B~%~!4*iDmqdJiR6paU+i|9L) z2N@Ajy{HZJ8RbKtQT-2ro_&DJt`Wp)fvXx^wctvCD+R6$xO&4i9Iv64xC-GahHE8UJK;J9*K@c&!(|8eEC{YjaK*xv09R+Ya^M;P z*JQYs!L$)pcxkdOj)&2N%m^0Cj^SA9i_JG#GtG4rXKyLqE{{=?DIR=w6jS zOCY*OdJcomB5_%OA~-ptbZPl&e0t-0?3!`0dg7rDv^LD?1XKDK!|S0H;q!nOB||#Y z&8YDl7BCUg^+!`EkElIGWH;l6;EU4BCF*WY#iwsioUy$s+Uhex7uXoGJY;wZo;*@il-PcxLt>3>Qobn24f2LlvbE{JA zZe#1CJ}*A9uOqg%et+O0EYm-97&>uO?S7 zf^#t<65Xa|b=#_w;u@(N#5Ia*l>}wX<$IgTo6~zBjqa5>{Ruv!eQ8efVKE{;=BHzU zfs3@MthO5jfivc6B494i@FGzNBcmaMjfgC(rx(=mM`J`2SXK|5_D~NRwq-SC_2irC zG55~_`iJT@ryYMtJN=N(hIF_^{ya!0Tcig=8jaUnpB~bd^AQi}FpJ+^AZ^*cvnhRp z_Ky*q@W21dr=wpXJMZxRnFoBnW-Y(^=`2n+zq)=3{X~*;3>b{uJW~bZd zyEq;Fx&QbTAt%RF|NIoE2hD6vMs#d(rs3z`aC*a`MJvXYbf3+9{*2Q{Mm?{X7dGp0 z@6W$3JydDi@wwe5&HK_3rw1?8 z^bJohxw7?(4yWH;Ry(!TFJEx(OFB+he)a41Ngr;%dGRF&r#BarE?crDHCEP8dBTVQTxYlW}@SzsRicypK0>zRtqw zahvaLp1b45qH$k~ae8v!oZ%OY8__Dat zt2pg^m^bM4hGAc{rFU`qiND)Ko$bBt{YszW^wHso2D_u%N6#qz4X3NKez)8DY&x~B z^fOMQdk$Q{tmCDKE8t$P3(r1$Sc*<6^wN~tLV{H!%y2xvV(=&s**ZUaMY42-Z zN1Sf^AYf7Tv}O~X2pvv89+Ty-drn-gLZst#le`x*XDrB=UysPa=^@?vuJ7H`?sZ3^ z4^HR#Udu1K+iHCtF&L-!>?`aracGC36N%9{9n)#*!F@^cgC)ddoL)C?+V36LSDkWz zn1$1K)bnQSnA`CBEut8wD~(oNk?kp5_?ald>5g-!FUX#`|D88~Jx(9r`KVRWuB)3! z{&t+cT{rBt&zsM~w4AtyrxLZCoAUL-l;(Y<2V!dej88Kq}C&MNv;==z|wz?1v^w_2J@ zp%Eonf&P^K>j1q+7bd75zg4nwib}bZC$LVpU4LV27>N0k>K!($GH;KfKk|+_CtF459yVr^dFsDq18gUQzkSzG=dC`jt-^BNQ?Sc z{ZOAhi~{k{=JwIKg3e8II`)V3iXY0ORrK@ouL3%_;lRXFCY+ex>bwed{=AHd>9FX! zxgXa|Wz6a8rZl`^UR?+84+X%F1EVr;D8Y-Z=fW$PI-SS6_121acxEkgIVtd0mg9w( z)ZdLa{fG1&NFzSaT>b^5n^>fen$kaA2N?z&_@Z$#7pHL>l>7O(VX8WaI|2KosUohz zGv`M;@aOqKUd}Oo$QiIOwCXCT8KGwNTJY zfQSt;F|hPpM)(HW?9i5r%i9~?ksOC!Lemuw?=dkIVnB2N?#zN`O#zWVCp0uWtxIZ7 zib-^}4+TY^KBs1=J@)#hdB}_%(H**sqF!PMcGBm71EZUz@xKh5C^MX%lv6fm^6eRcc3p?xDF;Js7X(gC?83djhi z7lWWKBtPomLVXqY{Qr&R0|lA<4_@C*7q`RoOgiZ2vU6F`1Gneqtq^V!lI_juVn`!> zHjau3k|S&&)4DUSQ0^CyOha*qTBHksg^Ge5zl1u`TI6?d#XK^X6NQiDR;~=bN9)S` zJ6E3j4Yve3I9Q%&xkDkG;I)D>NLSDm-qBt&X`;BIrglN((HU4H*45!P52{Kd2+f>~ z{C(EpP!Bp+X2W|mcn^fNjcB7;BbA$@uc0gpV{NJE$u?w|#&HwMqB;5<-qCo|z~qAD za!|f;#j!%%tYr?>e=7;?b#%pXApaud&j0*p==Oj3;{WMO@WV@pUKTButxk}!E#nX; zcH(GGG7xk$x0dM$i*yrfjz2K}-t&iazA4>7BocMfKmhj4P*8=VwHSduL_)k)psr|b zAPq@M$_{AP8R|a*@2H>O6ciJDcU6WU$%194*5;@VI#)Q5jr`$xkr++nsmdsCJD`TY{!k80s?Jp?HxRQ zC{@iROD|rsQ;eUm#Kyi>ZGGCfiEakYkvD&n$&7$p(v_KMC;k}iWU?vUb15A z_Py2)j$T1E>(DJ0Ek1f|o{gV>Sf$!^9z1o5mIH%#!ccAlUlcF+rDGx z6fLXoX6)Iw|H$HHt5)wmxpGyeVdtdIVZE&c!Wsg-fQS+m3=9&GE`h>uyI`woRt<#C zRST9`hYQ1n5wJ0v-$v+YlNhIvI!SFrw)O)mw`^L?wyL*(p#y98*Ufs>z&y>(;TDt5UJ^=enO zu4QF!-NKr%aurw=jM4-*wzV%<)H#fHu(x*dsA+9aRTugcY>Cz-IX1SlZ%79;woP)1 zv#~FD*U&yl&?rtJaJIF#R@vAOp!{rV2?E;?E)u6fh5B5Fg1sZ-wN8V@uHNI84Qy1j zWuVHYs<5MVW&4Kq5mp`pS9f5W3RO04v1mz5`(Qixd{w*o4+cnGh#+fcq3wXtBZS?o zoCJ0@t`k!l+2uqRyt6mjW_dO2<>~0@m~7`)Fl<00!H{|`UV{@utgQ>qRkNyHfyk;M z@E7t2#D=)lv?2zatUB<1!TZQ~p}mkl$gM$qOu?RLYeLxCDnP~`;9Om(b8KT@uu>W1 zR9$Fi!*{kWm^tX8&`sbZ$P=oq9fgF8qfiNhi?9t#7|_Zw2>L?VIzv`Fn}Q>i><3%( z2!WNAwKd)!ETS=qhk`_pk$KuF#k86ZqQ%5P|#Jl)p^4-1c|=C#x^~uYyv$6+QDujhQb_ZaZr9_`qwDWnq zd+?aC6DBTQvvu3P{f7=;zk9EgC&UX{QL|P|T$4_N$HI^6w{F{i`1pyt_jqN?y%t*U zoptQs35Bx{9Y5jZ7Fn|v9hcmpV`sIF9W!Am6xny^#@%}_o!sa+9a}JX?e?9!&Rux< zYS55T#fx_C+IQf@M&q_=&iL=E?0kt4E9-w`Sv}UBB!D`viwHY?RO(t^a=gH|#rm?&`}|Z?lc#a&o6u7DX*y zwQ1LZ6BlmG#E*=+h`t0%2gy!u#*x0(bR*8E4BGaIVsZ)<0KOw10?!iMRPhGt9 z;A<(wCk`8ULpZR3ZGh0)Z9s{0!E&n*y8!_LKU+c=C6ozm1cZ&XjhlUI9BLD}jSG;p}CVU=v`IY{R$qaZD7}7t{dy{_Yd zpw+I@EShZD$1%BEHz)df}LSGjs@ra z2e?`l+;Dh3N1(79(9yGCvu(il}w*L3?34yMjT!f%e{Z@xp?U z*2{|>eS~C@aKPot@PI_Cf<>+a-r5kMRjuLIF~WkKf&hVwQ#sOYBH?Oe_(Rk?Pshmt zi9n{&`DjjegwN=lD60U;-I}y6X1;kdltaHSgToD-Z{=m5OaoYEvkiIWf8o#qAUMl@ zA~JCnH&BP8XA6Mg6ooX`rJ+ZFfW-_OCwUTZV*EsC(Opa^%mrC9FFsG@v}RN_FU z@tfeH_*fZ}__AwJi{^$3EoW~pYRNmnB(bN8l6aRZwBp^o)q3S^Ci&^z3hholENU0Z zd*1FP(Z4+}i)X{D0qhnZ{t=BG#9poh3(JbnCxjJ=;D8PeHSO#OUm;-!N1#stQ7KLxe~#A^r%EgTR{fGlkW{DDddK_ zZ3!EJJwKSJ1!WzfWCTeM>6vH)&yv+1w26zKN$YS z!t+FJ3BH3J0h@@(<%bbH1VX+YVJ)}Vu}?{ z0HYK}fX-_n)X(E53K}|)!rlbs5((q97m!e=4G|*Fe$`r zLSXBKXOcye9sf{eIPg|#Fn(R<=X@cCkuEAp~RMOCcLc(7pT<@*J!09=0TYlA0pe{MtNI?H-Z8vCu96p;3s(@8>s~O&Rkl} z!E&H83b9lsrr=2{8ikUTY9zEEzWe|r5mdnb{6H&zS^Le^?DXt_kMQ_3_djZ`aPB`j_8&!^CY^n%)0tzJv9 z8o69cDz$pChPG|-w>wEHxlY2vEV`(_RVkHG8irEpNfoQpK~HJBe=?15{DB(UqB^Bq zqE%>RIz|oymXiwFKH=~8P;RQu;IQ?xkQ+6^!NI)&5UyCP*Xbn;3>z@Jv?x8jM}~+b zl`^qdDpgSul~SPq46j(}^v~}a_dpmmJO;#&35`iuy;dd_1E`l#kxH?Yc2@uG?khlM zSA#AEttW+8CDx*6rAb(&LL>i^KD(qr12V+?NV9UXWpZ7%Aq%EJ4TMn3B6?#z0hy7m= ze))HVA1?}0tJG@bEUa0DPA^lbXpbYPCnTl#c1O5lgaZtV(5*lp|KyaxKY@mmJC6`v zMkGRz9Z?%ri;B0xhZWo@RB_o!gnw?628dfIS(fYPN18bs)S>EuikOx-$;tsKFJ{Gz zoRw(dK=tehgOOv*j>3c-B2_J!yt1Cu53h@QqwE5#x*CoLxH$^FL?a^=dPd0r2_~hc z#VeC4DM~D+D3zE3xIalMR9+3yHX-p$wc40!kmAW+s

zG#tU@c5G7_K?5T z(m|u}W)yQ1_$QpGs2+NlV5@JuspV<}o(Jf6z8an-*#!Ww@O(796f~fZ?ZRe?M2Xz@ zcptC`@D1E9^hTnUNHt;&E7ME$j7q7cgRkP=DF3=QYSBNY6Mr_iZ;#hRef)uHsMTg_ z@Yl2gm;(g9#xz)>WMr_7WeQRc?3IL~L)_KsE@0n*TLL_~7JFTU+L|Y%g1eT{q^ZFr z0FD;ZB!xL}xoV^`#?*>l-!fQy9UcSA!%_^8}CLS&MGww98hAG zl}a>>Mn+dkL>s8=B&N!p#F(~yPhWGDXqwOkH7bC>NM#zJW+X6a8Zlj2j@BzaYC$3~ z^+RfUFsB+nm=lWWbW%My9)T+pEO|MpqpP5En&N1kHqUPP{tWh+`K^b8ekoP z2T|!|z#p(0#>^lnq~QM~6H65e8GN7=Dv2_J`bmFfW`2ybVL^>@MkNLBC{oJGz;R2j zq9YYQDJL&`XlU6;^)jhm$10V;Y*P%d#&lJ*p-m%&r?!birXe;2(G4CH%8kZiq<=zK zRa)e_MZ$q0WyBz8(A7Glx;bv=CwHz@xamBy+`fNOKP6F;I#QyebgWnf^op*ogZdR> zOmF{L{e~yHAq7^eVFkC+azISue#lqUTxbF1-PHPPN|$zncC9Qg3zA(bPT@OV{`sIE30^$%U; zGO)n>i|8I1mV+*riMx?Zwl)<8qy^|PoX2%7QfScd4fi-;I6?3vSj^%dRA?saz%PTz z)~HWI-UST}+22+Dr=3Q33ocTQfTvs?07=#4qm8O(Nbprc?{u1V!nzX3&vRQWkiXT3?=}`RB@$UMUMoOday8b&z}$d4uu{SRd#zKjaJ1^_nyt|6as=l)M%_d#G4MhpN@cX&M56kJOmK?G zL1GJ3OywAm4+PW-nip0>=|F~5iQ%AU=vo<2D}ZT{;||B@$+6QeNg~F^^q^_DWw?{1 zvV6xSGVUqDYVZ^S4Gqu%@Eb+CPs9?cRHU4eft#@wxD+^a=;+k{usKroljfi$mem6X z1X3J0Ve3hWijJvYwiy4mB&U=hflwo5<-kXPzKgE?-{aLuQV;u9t5nHlN(LRhb()m# z;15CtXoWyUNHKbNl(inD5!239$R!|5f_ewIe+hVxE2OdYpsv5%xGJpY(7*zL3Df9+ zh-fJAO$UOlQ<8LD#5esB<4GCw0m6XDo>HZQ4J!u8hyibNhN0`FKsihCU)|LR&KqVf z2(v%+4La8HsN;4jCtH@2DdQE2E!EVQEFsLfC2 zyb0Xm*07wo=SlzVTdR=+MIad!97TFY3X0XnXyIBeI%M>aV2YicfS(&(uB)s{C1G_^ z&_2m2Dae_0+`ks|LB+?gtenw_SzueBJ5By|RiKxVz%ix-MYJ6BbR^xhCX5VkNg2W| zDZnQ))u1zyau(ogI#vzPHKjV6LAnDC7#H*^u|^EK8LeKbrQ;EmG;!sYlaHKYfonsL zs&5G&EvLPFHk<>9ztTcnlxuVvy%f|^AS}T@Io&Mtzt|F3b&%@YqCE*jpde)`sT9l- zT1Kg$6Vm>R?Wyoti7ZkuiBd#WS&c%$%5@*Xcn~2s%9_-6H$H*_gs~HUfjHE*qeNksz*7 zDb_)N5rtMsxBQXra1%q~n`g*Yvj#oP3j-TWqL6`j4BA4CUQZ{9psSW!6&K^Q6ObQl zV{%d|)@o#WoklBG(XAT)EdLMlPnmXu(fr(Ws0nlklvKisbvjZim&jCfYs6Pdv-5MQ zEbze0$yXu|wlt#=wk-C+R-4mmWWGXuQGu~VE&;}$LFA02+f@6Z24M66x(cTsG{m>Vunt}1eTK$Fki&xf(aHyG7*V#!8RrmwWeg2dk+{Mk;p8PG+<$SBZ&$# zUfd0VRzT)fuv$hX1DO~Yavj|k@!C=-Du*jAlayeM94-yQE094F;ZeiOM!Az z$+BW#;lVuGt^*XOIKjOv-io=GjY&#u*+K3=)WYn51X&-wq0Y(i7pQXJ!y$x>SSMCd zz|AS?_Whx9QvO4|sIv-AmsiGv|H04^hivAhf2aj!Pa>zjpBynBoLr&PiREDaW#|t7 z(+=S2L2Pl^-I2k3YbX}@8Q3B$m`*$Xqq_r?U#pWb3R0qALE9juJI%&I@Bh&ZN?@(# zDl{O%z#q7&u$h3{Qs~eZI;7K6kx~T+esJh&Bw(DA(VhR%@Icq4Bq5@a4vr2usuZ;P ze>=P%?$2Ki54Z}6N-qVc5QQAXT#8PSe!sWKL?%Do!06&K^#&Od;nAYkX~BdA#t@(o zpgEP&3?hr)Hl(y=dKM{Ta@2Vc$470@>jBCS#lZXpY_CQMc3TM21V&L!)pEtaz@5WD zUIzY1w0gZp%&;WV7;7WS<&`j~RvD~2N-EVtcqX8HT87pkV*7n(lxC+T$gcq|N~2^c zRwmT|^^(zSjdJ-Fkl)l1WQao85t)|NLF_4(*8fX;4T^E41+JN70h)p)t&0U~j%k5O z_i3VIf2#W|$M}QU1@yaOB`j1qtCcC})F|_)5Wz8)QN>&oV+E!`LV>bW#=`9BS*cVk zq0=ft0Xas30~ZF7P9PJhlEY^mFa;1VOAA)7t{TWhsVwwSCJ7o0N`M6yi7Wydm8YUV zHHblA2)(hHDaqKhhj!0yBtA_#{m9G|pu^@q6BtqIIq<%2<3B>j? zJLoq(JtCjxg-n9Y5zZC`!@$jDq)Iv+3zpm@;J>5<+&yyAv}!ZKS7>3cfG(esXh^M= zG@}t9&X@wU4kXxiLCXZ9yGoIPKuM+v<>~^>4z86=5OU~D#6*8r zhBTEi>4$X+4a7Zz^9EGJQi)t?l97JWya6%MmQ_he&|YRhR0TL-!K}h&mW>JanpO*; z(zGDRNGQO9WMMmiN^<$foAKNS&yH=%V z!30B*fPj(%hKJ6^Mg+@7mC$H5Xhpa(YP67HQ9|rBy^hq#bXq->)+lMC>c>{aKelR` zJy58CMu1dGLFcGd$r(E5Pm3CKy0SR}^#-E@dm=Jm$Pq#)_fO{+6)hX86b?%nr2q*O z{!yfu?xFml$E3=l$Ed8S!?3AYN($BziB6)SKw!)J$pYmj$-F>WB_#u34``|Y&Y=f_ z#i=ZRvO;=d{io%GOTU|NG}n41;EjOw*8tVh0#NM_E6e}M%H=v{8Vae==_xH3qO=S! zW1!Fa!>W2&5Js#;HW5aXGWnkoMpn#%294FJV55^7v5fAGlv{8&e`csv0F#`a3t}|M zq~|gDMztPdIKeb18CYt1FwMdG0bxf;_dzIvKdQuJ>?LJtHHs_*cnKVt4(ic?dW_PN zdcc6_rAjae_C;%+B;lM?n@UN5@XE4tVRIs2BfuoIh+0!DoP-Lnn6VmGu2ZsfKSyi< z1+fg7Tlynn|6?_9LgOEyI9OdN68t?uS*4MH;7%71|MC>ms+1$0gIec3wK=yg6u%zM@jZO)Jswh`22MFcZOz4!@@}g zFa{Y5VjHWY2NCU{dnRTd3;JAJ|3U$yl1PAH0gZ=a3V1?>9!wx?7{ys!v`UZDu}|CwOKU!6YPsjD%HT5 z1aJZgNTrmD9%|WPU4AC6>SuLWXzBk{A*fP;DHkS13*sN>fk=87QH;5F#CO6$j4q4% z|M|q2Ks50NLpQLp{f$Y*%MTs#rX|Sf4)kD*hX9^BDX8aw21)7R#G?O?^pg~GayU|S z!De9q2Lf;?FuH-#l993W2!e(sAmtWWE6bbD-5Cf}26oI$4ChfGNn4$UAb6Bi405j? z4DO(nWI<*g`S0q1_@{am1=c#P0-2dedK7^O{l9`4X(><|N*PdVF^m}W4D@KCJ=FEz zG5dk+2|8&dr~-kXlFOv@n7<@UD!GIKjXs>N0Mvz3i5|;sH#D&rizz`z*LPS<6K4sl z3P=>F6Y)D*ZZPH0z83UEaxsVsECM=@BMfM&%+)Cr<*I|wYa&q=lbNRNhU>%LpJ2v< zFU;0*;A*kHg=@+rjFq*hlPhI%u+vj497_y6oV{y&GI|<;SiZ74%0B$8GN}$aX8=b7b8RXu z*wm1f5cpBhXHfKX0s*GVDk=N$v)Yv4YYZ})8b@g?tCEEv6d=B9fU^WKNTa1^5Ox1< zl_0|bPYQypUO{RVAo+uI4PVIVnRua<^``8@Pr5~MVNMaf1jCa;kHiTLBbLHKD8%%# ztZ>=_Lo{s}pe#UL2-aO>Fq^~Cf5$ zRj}G1l;#soT*|}*FEFP~9CI<@hVe^W$8$6D0HC>$FyU=Xrn`SjoXhQXJW+uCv>?TZ zf-7^7u~K6|rePA;X%#F$6{wSCGO2`KL;!n+mjC8{h-G?-76f()s5VHXm0C&^p!=cvzvzhRUg-2B2u*-JVN^hK^-_8nG3fuS z58rqNtpxOQGQAcwfEw^;64T3xd^8jPU}66CE%}4>05Ut+RlsWkJd_l0Gw6~s8u5+% zNW^$6<8{HQoKra(!OB7IR59RZ2lh3Ul%-b?_TRFuBy531bWs}&8LJ4uBjaB{+XfU6 zSGAhJdI%1QWj=pJBA}kY_~D?+mX!NjhPp^1N60#~$2m#{8w-3TDA0f?L0Hm(>Pbtl z`Ahy3;K^WAQIVi2gTqm-q1XOL{3$}YgH@7}vJ#yJbguL|q9xo%IR_50kn{dj!SaJU zgILDsRS*bMPXg)=p4mXJC$Me{b3tX`A%!{Ktfi+IppgNO49|Q3a1{mR=?(viL)6L` z2@9$j299t>qo6ku$b#_$2Pffh|7FM!K>x@|@O%Vm5Re;`lHT+;_&$=-AU+gqi4qE0 z)zh2*oAL{&l~o!o3%(d~gfOGGU|yaZhiMflO{2h*TQ(L@?x-l>p=1h#Y61(|RsySU zaW3QrLva>c0Kj8O0t6a>jKY%C=`<{;ZUHC<3@y03(cAEn3S;90RyN2c{zeK2iPsWmfk^F z*lT}ig6o~-KIGOhR)+q}UaJCrodU-Xu?jd?9q{fu|HlHwuK&4UwVP-F3!W4DFpyD> zga1e0T>~akV3`510$4~Dm@t9dA0VR5jiX8^F2IEn9-bnV^ppWFj7oFiDxf$c zmjY-}2RLvoCD(vi_8@^Q72MqXq`1=5Hh>#b_27I3dOv7gsnSbya{3UbvcYl>B9u}pZm+Y%(RB>$!JkUj22L9Ft30p0Yw~G zU5{9tWk2hb90%GYRX_AeZOB5^iB$k#f&I(CQ++_XVd$gZs{6JSNRnH)cP7fJ#-lWK4ZMHg0YVZ|LxLt3 zynpHASOP4&b>)`NAJ!!U@!OcDNzYej8z4qH^b=?=DFdplQG%5hQS1|#9V%Bhso+); zGC_gu$)xlFS9E}|>ES;kk$}aIKKYFW`8H|XCpBz9Xb?Q}bP^yFGA+Qo#9#nEMIZ|> z*C1p;OIZqbITNqiUo!~jXAIH z8j*8wou4*qO#=}ySo4ys3m$s+Lt(8Pc)qJ#}Ld=c@Iz$;JIMN(E|4&Wnrz*=ZGY8 zf4;*zN;nSt+n7N`jM^b74xk3N7JN%#@u52fx>?YGf}<hAx1x{0!TDT!UI0K2cwT^!gzy+JeBc1!IXUt&UphH*Faxp;J|GM*g!E;C zF;6ZkUbbL=aIpBR1&iJMOzTxF2WLivD<(lG0`Mz+1v8I$U=%o;g2sZBf=U5q_uHwW z(`aN8IB|8Lm6wABl)g$JXdW)~-H|Ebj!f>jG-Sh2%}2J9g5?4pdw^?~fl)_EU$bZz z=psDsQggGY@Rj}1i1*ATTAyn-G zfRLA|NWWJpxJpHl%G@*2L`lzr511IV0R3=8hPdWHVb*<>R`Hl$tKhm(yifurGN zOZb|jV#*+VBe?Cu>=eo;s99VKKhhtW#OvwIbR^tQ>QZ)?pCGghr%-=fEnM^1dgjvsmPr~F`qRpe zZA{!Vk4huC$cFQIIDv>UB;>37fU5yS+Gi$8TF$FX#}EK=AmH}Lm#L(6F(S6NcOJF( zzKoNmcwSK6@x(&%ZTfTP-pS#Xm#9oxfF9|vZ;cvS1PNtne~%F$4v@g1T8K9Ya|*KP zFC4)DA9)j8qd9LqGEvlre<0;W!8Mnz$Q$AYCz~_pbVF^HzdCiQ%(WnSAT1g2&L$%?;H5`(P{C6 zmVpT^r3-ReMTSa$=Y)0fS7S6z7#>DOcqUhLqa#yy=^vUKv6?@iu!sy~`n`>b)zvu2z{k7;YosW90hQ~=+G;d~>e+Fm zjTJADVtjELQX+f_oQ{G1$r1Xrve1K?R=Usl2smZ`rHYOy2#f&KI@oeD!t+KF!PV@}1cn7X{WJ@DT&wKBU#t66 zNSOZEgEsJ^$t6sbCH2szcpjikxKDqp-!aEbJ{9PIjVGBR+&fYjNvibkcJqwQO)>VS zBG)Y841yW$@E8Ev~u3&4K(#m5edVb%P%J)Kujspe^!2{wNfIIUD>sf zAKIT}TMToNEd-CXC)fpO>r_u7zWA3TL@09(?X!WsK1|fS%IAXufzdTe@NAYC<*l6by$nts;onqWV`tg)R2C$aVTUr zkFYVe^goppWMh=5OVGXlud*hgkG!->6>su@@bU@H0DGE1FJV+@|xu@dF z!RM%q8v?P&4BHLn9rqzvFSpdA(=LOW#FJ949atVzjY6T)byq*_3hKpf9TW14EWkLj z_+q~&?0JC9cKh{By)c9?RxvGl2XPvbBUPb(#uY90e}zBWK&=Zu4WYVt6x_>D(i`x> zpLGSxW+z}}qoXdHv3}Vy70E@SqHG&;Bqv6&0cDFAElHmL&zAx38Nnfvx*gyaK~OyB zHlTJBS0+X&^bZUl2S;6aS~v(4^r5(oe%_TFM)UjMlqcO--4qB5IZALN;0ZBd^$V^< zf6L*mxpd6#p6K$rvrZJgwt*B$ZV(1NC^abfBGxau0(vpY9&M=^CP7EKLRQ#72Gb zS*ZE5x53lUHZhVP6O0D%0l|=ACXw7Ft*_s5JL6B^cFDpKy=45(?M`d8F9GXJn2=(Z zj@opy>8y{Sh3%)U!!y7fh6fqmzq@>$=*t1^Or7=>%96Bh86zO_VRvx2uqesA?7Y98 z1nb^~yNd|L1Ue+UKojw>>w8^aUAz_4ZCBphRH|H})3(3v-6nq=Lvgz@$fCC%(>3?X zDq(a|@5{#^ns zYn{EVZMc*P60)M+g*-9^_Dr&U%|l7Gx7sb&^buI3DlaYJ%18L5v*KKG z+D7ygd|fj`*2^%-sIx0EElVpWieNMFV*BjMIj2>BjykigtJPXMjkR;9*Ckw!S2M)F YQ!UpW(wUf*r4a1aJ=BgPZl^B(3x?3`cmMzZ literal 141565 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 Ar2qf` diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index 8ecd5a67d..badfc292c 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -46,7 +46,7 @@ entropy-protocol={ version="0.3.0", path="../protocol", features=["server"] } entropy-client ={ version="0.3.0", path="../client", default-features=false, features=["native"] } # Programs -entropy-programs-runtime="0.10.0" +entropy-programs-runtime={ git="https://github.com/entropyxyz/programs.git", branch="master" } # Logging tracing ="0.1.37" diff --git a/crates/threshold-signature-server/src/helpers/substrate.rs b/crates/threshold-signature-server/src/helpers/substrate.rs index a23da6503..ee8a27df5 100644 --- a/crates/threshold-signature-server/src/helpers/substrate.rs +++ b/crates/threshold-signature-server/src/helpers/substrate.rs @@ -52,7 +52,7 @@ pub async fn get_program( api: &OnlineClient, rpc: &LegacyRpcMethods, program_pointer: &::Hash, -) -> Result, UserErr> { +) -> Result { let bytecode_address = entropy::storage().programs().programs(program_pointer); let program_info = query_chain(api, rpc, bytecode_address, None) .await? @@ -64,12 +64,17 @@ pub async fn get_program( pub async fn get_oracle_data( api: &OnlineClient, rpc: &LegacyRpcMethods, - program_oracle_data: Vec, -) -> Result, UserErr> { - let oracle_data_call = entropy::storage().oracle().oracle_data(BoundedVec(program_oracle_data)); - let oracle_info = - query_chain(api, rpc, oracle_data_call, None).await?.unwrap_or(BoundedVec(vec![])); - Ok(oracle_info.0) + program_oracle_datas: Vec>, +) -> Result>, UserErr> { + let mut oracle_infos = vec![]; + for program_oracle_data in program_oracle_datas { + let oracle_data_call = + entropy::storage().oracle().oracle_data(BoundedVec(program_oracle_data)); + let oracle_info = + query_chain(api, rpc, oracle_data_call, None).await?.unwrap_or(BoundedVec(vec![])); + oracle_infos.push(oracle_info.0); + } + Ok(oracle_infos) } /// Takes Stash keys and returns validator info from chain diff --git a/crates/threshold-signature-server/src/user/api.rs b/crates/threshold-signature-server/src/user/api.rs index 7f10931d6..c9397de91 100644 --- a/crates/threshold-signature-server/src/user/api.rs +++ b/crates/threshold-signature-server/src/user/api.rs @@ -689,7 +689,7 @@ pub async fn pre_sign_checks( for (i, program_data) in user_details.programs_data.0.iter().enumerate() { let program_info = get_program(api, rpc, &program_data.program_pointer).await?; - let oracle_data = get_oracle_data(api, rpc, program_info.oracle_data_pointer).await?; + let oracle_data = get_oracle_data(api, rpc, program_info.oracle_data_pointers.0).await?; let auxilary_data = auxilary_data_vec[i].as_ref().map(hex::decode).transpose()?; let signature_request = SignatureRequest { message: message.clone(), auxilary_data }; runtime.evaluate( diff --git a/crates/threshold-signature-server/src/user/tests.rs b/crates/threshold-signature-server/src/user/tests.rs index 111efb54f..70affafbe 100644 --- a/crates/threshold-signature-server/src/user/tests.rs +++ b/crates/threshold-signature-server/src/user/tests.rs @@ -1601,13 +1601,17 @@ async fn test_get_oracle_data() { let rpc = get_rpc(&cxt.node_proc.ws_url).await.unwrap(); run_to_block(&rpc, 1).await; - let oracle_data = get_oracle_data(&api, &rpc, "block_number_entropy".encode()).await.unwrap(); + let oracle_data = + get_oracle_data(&api, &rpc, vec!["block_number_entropy".encode()]).await.unwrap(); let current_block = rpc.chain_get_header(None).await.unwrap().unwrap().number; - assert_eq!(current_block.encode(), oracle_data); + assert_eq!(oracle_data.len(), 1); + assert_eq!(current_block.encode(), oracle_data[0]); // fails gracefully - let oracle_data_fail = get_oracle_data(&api, &rpc, "random_heading".encode()).await.unwrap(); - assert_eq!(oracle_data_fail.len(), 0); + let oracle_data_fail = + get_oracle_data(&api, &rpc, vec!["random_heading".encode()]).await.unwrap(); + assert_eq!(oracle_data_fail.len(), 1); + assert_eq!(oracle_data_fail[0].len(), 0); } pub async fn submit_transaction_request( diff --git a/pallets/programs/src/benchmarking.rs b/pallets/programs/src/benchmarking.rs index 81e0cb145..43b726dd8 100644 --- a/pallets/programs/src/benchmarking.rs +++ b/pallets/programs/src/benchmarking.rs @@ -41,19 +41,21 @@ fn assert_last_event(generic_event: ::RuntimeEvent) { benchmarks! { set_program { + let o in 0 .. T::MaxOracleLookups::get(); let program = vec![10]; let configuration_schema = vec![11]; let auxiliary_data_schema = vec![12]; - let oracle_data_pointer = vec![13]; + let oracle_data_pointers = BoundedVec::try_from([vec![13u8; o as usize]].to_vec()).unwrap(); let version_number = 0u8; let mut hash_input: Vec = vec![]; hash_input.extend(&program); hash_input.extend(&configuration_schema); hash_input.extend(&auxiliary_data_schema); - hash_input.extend(&oracle_data_pointer); hash_input.extend(&vec![version_number]); + let (_oracle_length, hash_input_with_oracle) = + ProgramsPallet::::get_length_and_hash_of_oracle(&oracle_data_pointers, hash_input).unwrap(); - let program_hash = T::Hashing::hash(&hash_input); + let program_hash = T::Hashing::hash(&hash_input_with_oracle); let deployer: T::AccountId = whitelisted_caller(); let sig_req_account: T::AccountId = whitelisted_caller(); @@ -65,7 +67,7 @@ benchmarks! { program.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number ) verify { @@ -75,7 +77,7 @@ benchmarks! { program_hash, configuration_schema, auxiliary_data_schema, - oracle_data_pointer, + oracle_data_pointers, version_number }.into() ); @@ -83,26 +85,29 @@ benchmarks! { remove_program { let p in 0..T::MaxOwnedPrograms::get(); + let o in 0 .. T::MaxOracleLookups::get(); + let program = vec![10]; let configuration_schema = vec![11]; let auxiliary_data_schema = vec![12]; - let oracle_data_pointer = vec![13]; + let oracle_data_pointers = BoundedVec::try_from([vec![13u8; o as usize]].to_vec()).unwrap(); let version_number = 0u8; let mut hash_input: Vec = vec![]; hash_input.extend(&program); hash_input.extend(&configuration_schema); hash_input.extend(&auxiliary_data_schema); - hash_input.extend(&oracle_data_pointer); hash_input.extend(&vec![version_number]); + let (_oracle_length, hash_input_with_oracle) = + ProgramsPallet::::get_length_and_hash_of_oracle(&oracle_data_pointers, hash_input).unwrap(); - let program_hash = T::Hashing::hash(&hash_input); + let program_hash = T::Hashing::hash(&hash_input_with_oracle); let random_program = vec![11]; let random_hash = T::Hashing::hash(&random_program); let deployer: T::AccountId = whitelisted_caller(); let value = CurrencyOf::::minimum_balance().saturating_mul(1_000_000_000u32.into()); let _ = CurrencyOf::::make_free_balance_be(&deployer, value); - >::insert(program_hash.clone(), ProgramInfo {bytecode: program, configuration_schema, auxiliary_data_schema, oracle_data_pointer, deployer: deployer.clone(), ref_counter: 0u128, version_number}); + >::insert(program_hash.clone(), ProgramInfo {bytecode: program, configuration_schema, auxiliary_data_schema, oracle_data_pointers, deployer: deployer.clone(), ref_counter: 0u128, version_number}); let mut program_hashes = vec![random_hash.clone(); p as usize]; // remove one to make room for the targetted removal program hash program_hashes.pop(); diff --git a/pallets/programs/src/lib.rs b/pallets/programs/src/lib.rs index 5e061278d..bdf61e4c5 100644 --- a/pallets/programs/src/lib.rs +++ b/pallets/programs/src/lib.rs @@ -75,6 +75,9 @@ pub mod pallet { /// The maximum amount of owned programs. type MaxOwnedPrograms: Get; + /// The maximum amount of oracle lookups allowed. + type MaxOracleLookups: Get; + /// The amount to charge, per byte, for storing a program on-chain. type ProgramDepositPerByte: Get>; @@ -85,6 +88,8 @@ pub mod pallet { type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; + pub type OraclePointers = BoundedVec, ::MaxOracleLookups>; + #[pallet::genesis_config] #[derive(frame_support::DefaultNoBound)] pub struct GenesisConfig { @@ -108,7 +113,7 @@ pub mod pallet { configuration_schema: program_info.2.clone(), auxiliary_data_schema: program_info.3.clone(), deployer: program_info.4.clone(), - oracle_data_pointer: vec![], + oracle_data_pointers: BoundedVec::try_from([].to_vec()).unwrap(), ref_counter: program_info.5, version_number: 0, }, @@ -123,7 +128,8 @@ pub mod pallet { /// Information on the program #[derive(Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, TypeInfo)] - pub struct ProgramInfo { + #[scale_info(skip_type_params(T))] + pub struct ProgramInfo { /// The bytecode of the program. pub bytecode: Vec, /// The schema for the Program's configuration parameters. @@ -138,10 +144,10 @@ pub mod pallet { /// [JSON Schema](https://json-schema.org/) in order to simplify the life of off-chain /// actors. pub auxiliary_data_schema: Vec, - /// The location of the oracle data needed for this program - pub oracle_data_pointer: Vec, + /// The locations of the oracle data needed for this program + pub oracle_data_pointers: OraclePointers, /// Deployer of the program - pub deployer: AccountId, + pub deployer: T::AccountId, /// Accounts that use this program pub ref_counter: u128, /// The user submitted version number of the program's runtime @@ -154,7 +160,7 @@ pub mod pallet { #[pallet::storage] #[pallet::getter(fn programs)] pub type Programs = - StorageMap<_, Blake2_128Concat, T::Hash, ProgramInfo, OptionQuery>; + StorageMap<_, Blake2_128Concat, T::Hash, ProgramInfo, OptionQuery>; /// Maps an account to all the programs it owns #[pallet::storage] @@ -184,8 +190,8 @@ pub mod pallet { /// The new program auxiliary data schema. auxiliary_data_schema: Vec, - /// The oracle data location needed for the program - oracle_data_pointer: Vec, + /// The oracle data locations needed for the program + oracle_data_pointers: OraclePointers, /// The version number of runtime for which the program was written version_number: u8, @@ -224,30 +230,33 @@ pub mod pallet { /// /// Note that the caller becomes the deployer account. #[pallet::call_index(0)] - #[pallet::weight({::WeightInfo::set_program()})] + #[pallet::weight({::WeightInfo::set_program(::MaxOracleLookups::get())})] pub fn set_program( origin: OriginFor, new_program: Vec, configuration_schema: Vec, auxiliary_data_schema: Vec, - oracle_data_pointer: Vec, + oracle_data_pointers: OraclePointers, version_number: u8, - ) -> DispatchResult { + ) -> DispatchResultWithPostInfo { let deployer = ensure_signed(origin)?; let mut hash_input = vec![]; hash_input.extend(&new_program); hash_input.extend(&configuration_schema); hash_input.extend(&auxiliary_data_schema); - hash_input.extend(&oracle_data_pointer); + hash_input.extend(&vec![version_number]); - let program_hash = T::Hashing::hash(&hash_input); + let (oracle_length, hash_input_with_oracle) = + Self::get_length_and_hash_of_oracle(&oracle_data_pointers, hash_input)?; + let program_hash = T::Hashing::hash(&hash_input_with_oracle); + let new_program_length = new_program .len() .checked_add(configuration_schema.len()) .ok_or(Error::::ArithmeticError)? .checked_add(auxiliary_data_schema.len()) .ok_or(Error::::ArithmeticError)? - .checked_add(oracle_data_pointer.len()) + .checked_add(oracle_length) .ok_or(Error::::ArithmeticError)?; ensure!( new_program_length as u32 <= T::MaxBytecodeLength::get(), @@ -263,7 +272,7 @@ pub mod pallet { bytecode: new_program.clone(), configuration_schema: configuration_schema.clone(), auxiliary_data_schema: auxiliary_data_schema.clone(), - oracle_data_pointer: oracle_data_pointer.clone(), + oracle_data_pointers: oracle_data_pointers.clone(), deployer: deployer.clone(), ref_counter: 0u128, version_number, @@ -283,17 +292,18 @@ pub mod pallet { program_hash, configuration_schema, auxiliary_data_schema, - oracle_data_pointer, + oracle_data_pointers: oracle_data_pointers.clone(), version_number, }); - Ok(()) + Ok(Some(::WeightInfo::set_program(oracle_data_pointers.len() as u32)) + .into()) } /// Removes a program at a specific hash /// /// Caller must be the deployer account for said program. #[pallet::call_index(1)] - #[pallet::weight({::WeightInfo::remove_program( ::MaxOwnedPrograms::get())})] + #[pallet::weight({::WeightInfo::remove_program( ::MaxOracleLookups::get(), ::MaxOwnedPrograms::get())})] pub fn remove_program( origin: OriginFor, program_hash: T::Hash, @@ -303,12 +313,18 @@ pub mod pallet { Self::programs(program_hash).ok_or(Error::::NoProgramDefined)?; ensure!(old_program_info.deployer == deployer, Error::::NotAuthorized); ensure!(old_program_info.ref_counter == 0, Error::::ProgramInUse); + + let mut oracle_length: usize = 0; + for oracle_data_pointer in &old_program_info.oracle_data_pointers { + oracle_length += oracle_data_pointer.len(); + } + Self::unreserve_program_deposit( &old_program_info.deployer, old_program_info.bytecode.len() + old_program_info.configuration_schema.len() + old_program_info.auxiliary_data_schema.len() - + old_program_info.oracle_data_pointer.len(), + + oracle_length, ); let mut owned_programs_length = 0; OwnedPrograms::::try_mutate( @@ -325,7 +341,11 @@ pub mod pallet { )?; Programs::::remove(program_hash); Self::deposit_event(Event::ProgramRemoved { deployer, old_program_hash: program_hash }); - Ok(Some(::WeightInfo::remove_program(owned_programs_length as u32)).into()) + Ok(Some(::WeightInfo::remove_program( + old_program_info.oracle_data_pointers.len() as u32, + owned_programs_length as u32, + )) + .into()) } } @@ -372,5 +392,19 @@ pub mod pallet { Ok(()) } + + /// Gets hash input and length of each oracle data pointer + pub fn get_length_and_hash_of_oracle( + oracle_datas: &OraclePointers, + mut hash_input: Vec, + ) -> Result<(usize, Vec), Error> { + let mut length: usize = 0; + for oracle_data in oracle_datas { + hash_input.extend(oracle_data); + length = + length.checked_add(oracle_data.len()).ok_or(Error::::ArithmeticError)?; + } + Ok((length, hash_input)) + } } } diff --git a/pallets/programs/src/mock.rs b/pallets/programs/src/mock.rs index 8d4891333..20ece9a7b 100644 --- a/pallets/programs/src/mock.rs +++ b/pallets/programs/src/mock.rs @@ -71,6 +71,7 @@ parameter_types! { pub const MaxBytecodeLength: u32 = 5; pub const ProgramDepositPerByte: u32 = 5; pub const MaxOwnedPrograms: u32 = 1; + pub const MaxOracleLookups: u32 = 2; } parameter_types! { @@ -99,6 +100,7 @@ impl pallet_programs::Config for Test { type MaxBytecodeLength = MaxBytecodeLength; type ProgramDepositPerByte = ProgramDepositPerByte; type MaxOwnedPrograms = MaxOwnedPrograms; + type MaxOracleLookups = MaxOracleLookups; type RuntimeEvent = RuntimeEvent; type WeightInfo = (); } diff --git a/pallets/programs/src/tests.rs b/pallets/programs/src/tests.rs index d930b7acd..365e12025 100644 --- a/pallets/programs/src/tests.rs +++ b/pallets/programs/src/tests.rs @@ -13,7 +13,7 @@ // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see . -use frame_support::{assert_noop, assert_ok, traits::Currency}; +use frame_support::{assert_noop, assert_ok, traits::Currency, BoundedVec}; use pallet_balances::Error as BalancesError; use sp_runtime::traits::Hash; @@ -29,17 +29,19 @@ fn set_program() { let program_2 = vec![12u8, 13u8]; let configuration_schema = vec![14u8]; let auxiliary_data_schema = vec![15u8]; - let oracle_data_pointer = vec![16u8]; + let oracle_data_pointers = BoundedVec::try_from([vec![16u8]].to_vec()).unwrap(); let version_number = 0u8; let too_long = vec![1u8, 2u8, 3u8, 4u8, 5u8]; let mut hash_input: Vec = vec![]; hash_input.extend(&program); hash_input.extend(&configuration_schema); hash_input.extend(&auxiliary_data_schema); - hash_input.extend(&oracle_data_pointer); hash_input.extend(&vec![version_number]); + let (_oracle_length, hash_input_with_oracle) = + ProgramsPallet::get_length_and_hash_of_oracle(&oracle_data_pointers, hash_input) + .unwrap(); - let program_hash = ::Hashing::hash(&hash_input); + let program_hash = ::Hashing::hash(&hash_input_with_oracle); // can't pay deposit assert_noop!( ProgramsPallet::set_program( @@ -47,7 +49,7 @@ fn set_program() { program.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number ), BalancesError::::InsufficientBalance @@ -60,14 +62,14 @@ fn set_program() { program.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number )); let program_result = ProgramInfo { bytecode: program.clone(), configuration_schema: configuration_schema.clone(), auxiliary_data_schema: auxiliary_data_schema.clone(), - oracle_data_pointer: oracle_data_pointer.clone(), + oracle_data_pointers: oracle_data_pointers.clone(), deployer: PROGRAM_MODIFICATION_ACCOUNT, ref_counter: 0u128, version_number, @@ -92,7 +94,7 @@ fn set_program() { program.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number ), Error::::ProgramAlreadySet @@ -105,7 +107,7 @@ fn set_program() { program_2.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number ), Error::::TooManyProgramsOwned @@ -117,7 +119,7 @@ fn set_program() { too_long, configuration_schema, auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number ), Error::::ProgramLengthExceeded @@ -131,15 +133,18 @@ fn remove_program() { let program = vec![10u8, 11u8]; let configuration_schema = vec![14u8]; let auxiliary_data_schema = vec![15u8]; - let oracle_data_pointer = vec![16u8]; + let oracle_data_pointers = BoundedVec::try_from([vec![16u8]].to_vec()).unwrap(); let version_number = 0u8; let mut hash_input: Vec = vec![]; hash_input.extend(&program); hash_input.extend(&configuration_schema); hash_input.extend(&auxiliary_data_schema); - hash_input.extend(&oracle_data_pointer); hash_input.extend(&vec![version_number]); - let program_hash = ::Hashing::hash(&hash_input); + + let (_oracle_length, hash_input_with_oracle) = + ProgramsPallet::get_length_and_hash_of_oracle(&oracle_data_pointers, hash_input) + .unwrap(); + let program_hash = ::Hashing::hash(&hash_input_with_oracle); // no program assert_noop!( @@ -157,7 +162,7 @@ fn remove_program() { program.clone(), configuration_schema.clone(), auxiliary_data_schema.clone(), - oracle_data_pointer.clone(), + oracle_data_pointers.clone(), version_number )); assert_eq!( @@ -206,7 +211,7 @@ fn remove_program_fails_ref_count() { let program_hash = ::Hashing::hash(&program); let configuration_schema = vec![14u8]; let auxiliary_data_schema = vec![15u8]; - let oracle_data_pointer = vec![16u8]; + let oracle_data_pointers = BoundedVec::try_from([vec![16u8]].to_vec()).unwrap(); let version_number = 0u8; Programs::::insert( @@ -215,7 +220,7 @@ fn remove_program_fails_ref_count() { bytecode: program, configuration_schema, auxiliary_data_schema, - oracle_data_pointer, + oracle_data_pointers, deployer: PROGRAM_MODIFICATION_ACCOUNT, ref_counter: 1u128, version_number, diff --git a/pallets/programs/src/weights.rs b/pallets/programs/src/weights.rs index 2a8934e95..29e3f509d 100644 --- a/pallets/programs/src/weights.rs +++ b/pallets/programs/src/weights.rs @@ -52,79 +52,85 @@ use core::marker::PhantomData; /// Weight functions needed for pallet_programs. pub trait WeightInfo { - fn set_program() -> Weight; - fn remove_program(p: u32) -> Weight; + fn set_program(o: u32) -> Weight; + fn remove_program(o: u32, p: u32) -> Weight; } /// Weights for pallet_programs using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - /// Storage: `Programs::Bytecode` (r:1 w:1) - /// Proof: `Programs::Bytecode` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Programs::Programs` (r:1 w:1) + /// Proof: `Programs::Programs` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn set_program() -> Weight { + /// The range of component `o` is `[0, 10]`. + fn set_program(_o: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `142` - // Estimated: `3607` - // Minimum execution time: 26_000_000 picoseconds. - Weight::from_parts(27_000_000, 0) - .saturating_add(Weight::from_parts(0, 3607)) + // Measured: `214` + // Estimated: `3679` + // Minimum execution time: 23_000_000 picoseconds. + Weight::from_parts(26_554_140, 0) + .saturating_add(Weight::from_parts(0, 3679)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - /// Storage: `Programs::Bytecode` (r:1 w:1) - /// Proof: `Programs::Bytecode` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Programs::Programs` (r:1 w:1) + /// Proof: `Programs::Programs` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// The range of component `p` is `[0, 25]`. - fn remove_program(p: u32, ) -> Weight { + /// The range of component `p` is `[0, 250]`. + /// The range of component `o` is `[0, 10]`. + fn remove_program(p: u32, o: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `326 + p * (32 ±0)` - // Estimated: `3809 + p * (31 ±0)` - // Minimum execution time: 26_000_000 picoseconds. - Weight::from_parts(26_938_669, 0) - .saturating_add(Weight::from_parts(0, 3809)) - // Standard Error: 47_904 - .saturating_add(Weight::from_parts(136_174, 0).saturating_mul(p.into())) + // Measured: `353 + o * (1 ±0) + p * (32 ±0)` + // Estimated: `3842 + o * (1 ±0) + p * (32 ±0)` + // Minimum execution time: 22_000_000 picoseconds. + Weight::from_parts(28_023_735, 0) + .saturating_add(Weight::from_parts(0, 3842)) + // Standard Error: 11_641 + .saturating_add(Weight::from_parts(103_353, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 31).saturating_mul(p.into())) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(o.into())) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(p.into())) } } // For backwards compatibility and tests impl WeightInfo for () { - /// Storage: `Programs::Bytecode` (r:1 w:1) - /// Proof: `Programs::Bytecode` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Programs::Programs` (r:1 w:1) + /// Proof: `Programs::Programs` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn set_program() -> Weight { + /// The range of component `o` is `[0, 10]`. + fn set_program(_o: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `142` - // Estimated: `3607` - // Minimum execution time: 26_000_000 picoseconds. - Weight::from_parts(27_000_000, 0) - .saturating_add(Weight::from_parts(0, 3607)) + // Measured: `214` + // Estimated: `3679` + // Minimum execution time: 23_000_000 picoseconds. + Weight::from_parts(26_554_140, 0) + .saturating_add(Weight::from_parts(0, 3679)) .saturating_add(RocksDbWeight::get().reads(2)) .saturating_add(RocksDbWeight::get().writes(2)) } - /// Storage: `Programs::Bytecode` (r:1 w:1) - /// Proof: `Programs::Bytecode` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Programs::Programs` (r:1 w:1) + /// Proof: `Programs::Programs` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// The range of component `p` is `[0, 25]`. - fn remove_program(p: u32, ) -> Weight { + /// The range of component `p` is `[0, 250]`. + /// The range of component `o` is `[0, 10]`. + fn remove_program(p: u32, o: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `326 + p * (32 ±0)` - // Estimated: `3809 + p * (31 ±0)` - // Minimum execution time: 26_000_000 picoseconds. - Weight::from_parts(26_938_669, 0) - .saturating_add(Weight::from_parts(0, 3809)) - // Standard Error: 47_904 - .saturating_add(Weight::from_parts(136_174, 0).saturating_mul(p.into())) + // Measured: `353 + o * (1 ±0) + p * (32 ±0)` + // Estimated: `3842 + o * (1 ±0) + p * (32 ±0)` + // Minimum execution time: 22_000_000 picoseconds. + Weight::from_parts(28_023_735, 0) + .saturating_add(Weight::from_parts(0, 3842)) + // Standard Error: 11_641 + .saturating_add(Weight::from_parts(103_353, 0).saturating_mul(p.into())) .saturating_add(RocksDbWeight::get().reads(2)) .saturating_add(RocksDbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 31).saturating_mul(p.into())) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(o.into())) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(p.into())) } } diff --git a/pallets/propagation/src/mock.rs b/pallets/propagation/src/mock.rs index 424010c8b..0478e0197 100644 --- a/pallets/propagation/src/mock.rs +++ b/pallets/propagation/src/mock.rs @@ -351,6 +351,7 @@ parameter_types! { pub const MaxBytecodeLength: u32 = 3; pub const ProgramDepositPerByte: u32 = 5; pub const MaxOwnedPrograms: u32 = 5; + pub const MaxOracleLookups: u32 = 5; } impl pallet_programs::Config for Test { @@ -358,6 +359,7 @@ impl pallet_programs::Config for Test { type MaxBytecodeLength = MaxBytecodeLength; type ProgramDepositPerByte = ProgramDepositPerByte; type MaxOwnedPrograms = MaxOwnedPrograms; + type MaxOracleLookups = MaxOracleLookups; type RuntimeEvent = RuntimeEvent; type WeightInfo = (); } diff --git a/pallets/registry/src/benchmarking.rs b/pallets/registry/src/benchmarking.rs index dee1c07f2..65849c535 100644 --- a/pallets/registry/src/benchmarking.rs +++ b/pallets/registry/src/benchmarking.rs @@ -22,7 +22,7 @@ use frame_support::{ BoundedVec, }; use frame_system::{EventRecord, RawOrigin}; -use pallet_programs::{ProgramInfo, Programs}; +use pallet_programs::{OraclePointers, ProgramInfo, Programs}; use pallet_session::Validators; use pallet_staking_extension::{ benchmarking::create_validators, JumpStartDetails, JumpStartProgress, JumpStartStatus, @@ -165,7 +165,7 @@ benchmarks! { let program = vec![0u8]; let configuration_schema = vec![1u8]; let auxiliary_data_schema = vec![2u8]; - let oracle_data_pointer = vec![3u8]; + let oracle_data_pointers: OraclePointers = BoundedVec::try_from([vec![3u8]].to_vec()).unwrap(); let program_hash = T::Hashing::hash(&program); let programs_info = BoundedVec::try_from(vec![ ProgramInstance { @@ -182,7 +182,7 @@ benchmarks! { bytecode: program, configuration_schema, auxiliary_data_schema, - oracle_data_pointer, + oracle_data_pointers, deployer: program_modification_account.clone(), ref_counter: 0, version_number: 0, @@ -251,7 +251,7 @@ benchmarks! { let program = vec![0u8]; let configuration_schema = vec![1u8]; let auxiliary_data_schema = vec![2u8]; - let oracle_data_pointer = vec![3u8]; + let oracle_data_pointers: OraclePointers = BoundedVec::try_from([vec![3u8]].to_vec()).unwrap(); let program_hash = T::Hashing::hash(&program); let programs_info = BoundedVec::try_from(vec![ProgramInstance { program_pointer: program_hash, @@ -266,8 +266,8 @@ benchmarks! { }; n as usize]) .unwrap(); let sig_req_account: T::AccountId = whitelisted_caller(); - Programs::::insert(program_hash, ProgramInfo {bytecode: program, configuration_schema: configuration_schema.clone(), auxiliary_data_schema: auxiliary_data_schema.clone(), oracle_data_pointer: oracle_data_pointer.clone(), deployer: program_modification_account.clone(), ref_counter: 0, version_number: 0}); - Programs::::insert(new_program_hash, ProgramInfo {bytecode: new_program, configuration_schema, auxiliary_data_schema, oracle_data_pointer, deployer: program_modification_account.clone(), ref_counter: o as u128, version_number: 0}); + Programs::::insert(program_hash, ProgramInfo {bytecode: program, configuration_schema: configuration_schema.clone(), auxiliary_data_schema: auxiliary_data_schema.clone(), oracle_data_pointers: oracle_data_pointers.clone(), deployer: program_modification_account.clone(), ref_counter: 0, version_number: 0}); + Programs::::insert(new_program_hash, ProgramInfo {bytecode: new_program, configuration_schema, auxiliary_data_schema, oracle_data_pointers, deployer: program_modification_account.clone(), ref_counter: o as u128, version_number: 0}); let balance = ::Currency::minimum_balance() * 100u32.into(); let _ = ::Currency::make_free_balance_be(&sig_req_account, balance); >::insert( @@ -291,7 +291,7 @@ benchmarks! { let program = vec![0u8]; let configuration_schema = vec![1u8]; let auxiliary_data_schema = vec![2u8]; - let oracle_data_pointer = vec![3u8]; + let oracle_data_pointers: OraclePointers = BoundedVec::try_from([vec![3u8]].to_vec()).unwrap(); let program_hash = T::Hashing::hash(&program); let programs_info = BoundedVec::try_from(vec![ProgramInstance { program_pointer: program_hash, diff --git a/pallets/registry/src/mock.rs b/pallets/registry/src/mock.rs index ad5b26c3b..c46aa88e8 100644 --- a/pallets/registry/src/mock.rs +++ b/pallets/registry/src/mock.rs @@ -348,6 +348,7 @@ parameter_types! { pub const MaxBytecodeLength: u32 = 3; pub const ProgramDepositPerByte: u32 = 5; pub const MaxOwnedPrograms: u32 = 5; + pub const MaxOracleLookups: u32 = 5; } impl pallet_programs::Config for Test { @@ -355,6 +356,7 @@ impl pallet_programs::Config for Test { type MaxBytecodeLength = MaxBytecodeLength; type ProgramDepositPerByte = ProgramDepositPerByte; type MaxOwnedPrograms = MaxOwnedPrograms; + type MaxOracleLookups = MaxOracleLookups; type RuntimeEvent = RuntimeEvent; type WeightInfo = (); } diff --git a/pallets/registry/src/tests.rs b/pallets/registry/src/tests.rs index f382bd34c..206f7ce4f 100644 --- a/pallets/registry/src/tests.rs +++ b/pallets/registry/src/tests.rs @@ -43,7 +43,8 @@ fn setup_programs( bytecode: empty_program.clone(), configuration_schema: empty_program.clone(), auxiliary_data_schema: empty_program.clone(), - oracle_data_pointer: empty_program.clone(), + oracle_data_pointers: BoundedVec::try_from(vec![empty_program.clone()].to_vec()) + .unwrap(), deployer: alice, ref_counter: 0, version_number: 0, @@ -479,7 +480,8 @@ fn it_changes_a_program_instance() { bytecode: empty_program.clone(), configuration_schema: empty_program.clone(), auxiliary_data_schema: empty_program.clone(), - oracle_data_pointer: empty_program.clone(), + oracle_data_pointers: BoundedVec::try_from(vec![empty_program.clone()].to_vec()) + .unwrap(), deployer: 1, ref_counter: 1, version_number: 0, @@ -500,7 +502,8 @@ fn it_changes_a_program_instance() { bytecode: new_program, configuration_schema: empty_program.clone(), auxiliary_data_schema: empty_program.clone(), - oracle_data_pointer: empty_program.clone(), + oracle_data_pointers: BoundedVec::try_from(vec![empty_program.clone()].to_vec()) + .unwrap(), deployer: 1, ref_counter: 1, version_number: 0, diff --git a/pallets/transaction-pause/src/mock.rs b/pallets/transaction-pause/src/mock.rs index 5cc9a2c58..961defb8b 100644 --- a/pallets/transaction-pause/src/mock.rs +++ b/pallets/transaction-pause/src/mock.rs @@ -86,6 +86,7 @@ parameter_types! { pub const MaxBytecodeLength: u32 = 3; pub const ProgramDepositPerByte: u32 = 5; pub const MaxOwnedPrograms: u32 = 5; + pub const MaxOracleLookups: u32 = 5; } impl pallet_programs::Config for Runtime { @@ -93,6 +94,7 @@ impl pallet_programs::Config for Runtime { type MaxBytecodeLength = MaxBytecodeLength; type ProgramDepositPerByte = ProgramDepositPerByte; type MaxOwnedPrograms = MaxOwnedPrograms; + type MaxOracleLookups = MaxOracleLookups; type RuntimeEvent = RuntimeEvent; type WeightInfo = (); } diff --git a/pallets/transaction-pause/src/tests.rs b/pallets/transaction-pause/src/tests.rs index 7ac70ed75..b1c822d75 100644 --- a/pallets/transaction-pause/src/tests.rs +++ b/pallets/transaction-pause/src/tests.rs @@ -152,7 +152,7 @@ fn paused_transaction_filter_work() { new_program: vec![], configuration_schema: vec![], auxiliary_data_schema: vec![], - oracle_data_pointer: vec![], + oracle_data_pointers: BoundedVec::try_from(vec![vec![]].to_vec()).unwrap(), version_number: 0u8, }); assert!(!PausedTransactionFilter::::contains(BALANCE_TRANSFER)); diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index f801c6a94..461a4d49d 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1467,6 +1467,7 @@ parameter_types! { pub const MaxBytecodeLength: u32 = 1_000_000; pub const ProgramDepositPerByte: Balance = MILLICENTS; pub const MaxOwnedPrograms: u32 = 250; + pub const MaxOracleLookups: u32 = 10; } impl pallet_programs::Config for Runtime { @@ -1474,6 +1475,7 @@ impl pallet_programs::Config for Runtime { type MaxBytecodeLength = MaxBytecodeLength; type ProgramDepositPerByte = ProgramDepositPerByte; type MaxOwnedPrograms = MaxOwnedPrograms; + type MaxOracleLookups = MaxOracleLookups; type RuntimeEvent = RuntimeEvent; type WeightInfo = weights::pallet_programs::WeightInfo; } diff --git a/runtime/src/weights/pallet_programs.rs b/runtime/src/weights/pallet_programs.rs index dc006272f..f9519b473 100644 --- a/runtime/src/weights/pallet_programs.rs +++ b/runtime/src/weights/pallet_programs.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_programs` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 33.0.0 -//! DATE: 2024-10-03, STEPS: `25`, REPEAT: `10`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-11-08, STEPS: `5`, REPEAT: `2`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `ip-172-31-28-93`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! HOSTNAME: `Jesses-MacBook-Pro.local`, CPU: `` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("dev")`, DB CACHE: 1024 // Executed Command: @@ -27,14 +27,11 @@ // pallet // --chain // dev -// --wasm-execution=compiled // --pallet=pallet_programs // --extrinsic=* -// --steps=25 -// --repeat=10 +// --steps=5 +// --repeat=2 // --header=.maintain/AGPL-3.0-header.txt -// --template -// .maintain/frame-weight-template.hbs // --output=./runtime/src/weights/ #![cfg_attr(rustfmt, rustfmt_skip)] @@ -52,12 +49,13 @@ impl pallet_programs::WeightInfo for WeightInfo { /// Proof: `Programs::Programs` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn set_program() -> Weight { + /// The range of component `o` is `[0, 10]`. + fn set_program(_o: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `214` // Estimated: `3679` - // Minimum execution time: 39_231_000 picoseconds. - Weight::from_parts(39_935_000, 0) + // Minimum execution time: 23_000_000 picoseconds. + Weight::from_parts(26_554_140, 0) .saturating_add(Weight::from_parts(0, 3679)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -67,17 +65,19 @@ impl pallet_programs::WeightInfo for WeightInfo { /// Storage: `Programs::OwnedPrograms` (r:1 w:1) /// Proof: `Programs::OwnedPrograms` (`max_values`: None, `max_size`: None, mode: `Measured`) /// The range of component `p` is `[0, 250]`. - fn remove_program(p: u32, ) -> Weight { + /// The range of component `o` is `[0, 10]`. + fn remove_program(p: u32, o: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `354 + p * (32 ±0)` - // Estimated: `3823 + p * (32 ±0)` - // Minimum execution time: 38_105_000 picoseconds. - Weight::from_parts(40_094_638, 0) - .saturating_add(Weight::from_parts(0, 3823)) - // Standard Error: 1_384 - .saturating_add(Weight::from_parts(149_685, 0).saturating_mul(p.into())) + // Measured: `353 + o * (1 ±0) + p * (32 ±0)` + // Estimated: `3842 + o * (1 ±0) + p * (32 ±0)` + // Minimum execution time: 22_000_000 picoseconds. + Weight::from_parts(28_023_735, 0) + .saturating_add(Weight::from_parts(0, 3842)) + // Standard Error: 11_641 + .saturating_add(Weight::from_parts(103_353, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(o.into())) .saturating_add(Weight::from_parts(0, 32).saturating_mul(p.into())) } -} \ No newline at end of file +} From 272fed905a2256bfbb74cb2450b496ccc4a4fcee Mon Sep 17 00:00:00 2001 From: JesseAbram <33698952+JesseAbram@users.noreply.github.com> Date: Fri, 15 Nov 2024 13:53:44 -0500 Subject: [PATCH 13/24] Integration oracle test (#1148) * Integration oracle test * lint * update oracle program * fmt * Update crates/testing-utils/src/constants.rs Co-authored-by: peg --------- Co-authored-by: peg --- crates/test-cli/src/lib.rs | 5 +- crates/testing-utils/oracle_example.wasm | Bin 0 -> 23849 bytes crates/testing-utils/src/constants.rs | 2 + .../src/user/tests.rs | 66 +++++++++++++++++- 4 files changed, 68 insertions(+), 5 deletions(-) create mode 100755 crates/testing-utils/oracle_example.wasm diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index b0c1ba79d..cf558146e 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -673,10 +673,7 @@ struct StatusOutput { } impl StatusOutput { - fn new( - accounts: Vec<([u8; 33], RegisteredInfo)>, - programs: Vec<(H256, ProgramInfo)>, - ) -> Self { + fn new(accounts: Vec<([u8; 33], RegisteredInfo)>, programs: Vec<(H256, ProgramInfo)>) -> Self { let accounts = accounts .into_iter() .map(|(verifying_key, _registered_info)| hex::encode(verifying_key)) diff --git a/crates/testing-utils/oracle_example.wasm b/crates/testing-utils/oracle_example.wasm new file mode 100755 index 0000000000000000000000000000000000000000..9d85953c656b757c2728bcab51f0d487ca4bba50 GIT binary patch literal 23849 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 Ki7c)4(EkB^AW)Y8 literal 0 HcmV?d00001 diff --git a/crates/testing-utils/src/constants.rs b/crates/testing-utils/src/constants.rs index ada142829..ab937e67a 100644 --- a/crates/testing-utils/src/constants.rs +++ b/crates/testing-utils/src/constants.rs @@ -83,6 +83,8 @@ pub const TEST_PROGRAM_WASM_BYTECODE: &[u8] = pub const FAUCET_PROGRAM: &[u8] = include_bytes!("../faucet_program.wasm"); /// `infinite_loop.wasm` from the `programs` repo. pub const TEST_INFINITE_LOOP_BYTECODE: &[u8] = include_bytes!("../infinite_loop.wasm"); +/// `oracle_example.wasm` from the `programs` repo. +pub const TEST_ORACLE_BYTECODE: &[u8] = include_bytes!("../oracle_example.wasm"); /// `template_basic_transaction.wasm` from the `programs` repo. pub const TEST_BASIC_TRANSACTION: &[u8] = include_bytes!("../template_basic_transaction.wasm"); /// `example_custom_hash.wasm` from the `programs` repo. diff --git a/crates/threshold-signature-server/src/user/tests.rs b/crates/threshold-signature-server/src/user/tests.rs index 70affafbe..0290d4fef 100644 --- a/crates/threshold-signature-server/src/user/tests.rs +++ b/crates/threshold-signature-server/src/user/tests.rs @@ -39,7 +39,8 @@ use entropy_testing_utils::{ constants::{ AUXILARY_DATA_SHOULD_SUCCEED, FAUCET_PROGRAM, FERDIE_X25519_SECRET_KEY, PREIMAGE_SHOULD_SUCCEED, TEST_BASIC_TRANSACTION, TEST_INFINITE_LOOP_BYTECODE, - TEST_PROGRAM_CUSTOM_HASH, TEST_PROGRAM_WASM_BYTECODE, X25519_PUBLIC_KEYS, + TEST_ORACLE_BYTECODE, TEST_PROGRAM_CUSTOM_HASH, TEST_PROGRAM_WASM_BYTECODE, + X25519_PUBLIC_KEYS, }, substrate_context::{ test_context_stationary, test_node_process_testing_state, testing_context, @@ -1117,6 +1118,69 @@ async fn test_fail_infinite_program() { ); } +#[tokio::test] +#[serial] +async fn test_oracle_program() { + initialize_test_logger().await; + clean_tests(); + + let one = AccountKeyring::One; + let two = AccountKeyring::Two; + + let (_validator_ips, _validator_ids) = + spawn_testing_validators(ChainSpecType::Integration).await; + + let mnemonic = development_mnemonic(&Some(ValidatorName::Alice)); + let (_tss_signer, _static_secret) = + get_signer_and_x25519_secret_from_mnemonic(&mnemonic.to_string()).unwrap(); + + let force_authoring = true; + let substrate_context = &test_node_process_testing_state(force_authoring).await[0]; + + let api = get_api(&substrate_context.ws_url).await.unwrap(); + let rpc = get_rpc(&substrate_context.ws_url).await.unwrap(); + + let non_signer = jump_start_network(&api, &rpc).await.unwrap(); + let (relayer_ip_and_key, _) = validator_name_to_relayer_info(non_signer, &api, &rpc).await; + + let program_hash = test_client::store_program( + &api, + &rpc, + &two.pair(), + TEST_ORACLE_BYTECODE.to_owned(), + vec![], + vec![], + vec!["block_number_entropy".encode()], + 0u8, + ) + .await + .unwrap(); + + let (verifying_key, _registered_info) = test_client::register( + &api, + &rpc, + one.clone().into(), // This is our program modification account + subxtAccountId32(two.public().0), // This is our signature request account + BoundedVec(vec![ProgramInstance { program_pointer: program_hash, program_config: vec![] }]), + ) + .await + .unwrap(); + + // Now we'll send off a signature request using the new program + let (_validators_info, signature_request, _validator_ips_and_keys) = + get_sign_tx_data(&api, &rpc, hex::encode(PREIMAGE_SHOULD_SUCCEED), verifying_key).await; + + let test_user_res = + submit_transaction_request(relayer_ip_and_key.clone(), signature_request.clone(), one) + .await; + + let message_hash = Hasher::keccak(PREIMAGE_SHOULD_SUCCEED); + let decoded_verifying_key = + decode_verifying_key(verifying_key.as_slice().try_into().unwrap()).unwrap(); + let all_signers_info = get_all_signers_from_chain(&api, &rpc).await.unwrap(); + verify_signature(test_user_res, message_hash, &decoded_verifying_key, &all_signers_info).await; +} + #[tokio::test] #[serial] async fn test_device_key_proxy() { From 647c9cc6a94bb34db5fa60f543649272344983ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2024 07:53:37 +0000 Subject: [PATCH 14/24] Bump the patch-dependencies group with 2 updates (#1168) Bumps the patch-dependencies group with 2 updates: [serde_json](https://github.com/serde-rs/json) and [axum](https://github.com/tokio-rs/axum). Updates `serde_json` from 1.0.132 to 1.0.133 - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](https://github.com/serde-rs/json/compare/v1.0.132...v1.0.133) Updates `axum` from 0.7.7 to 0.7.9 - [Release notes](https://github.com/tokio-rs/axum/releases) - [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/axum/compare/axum-v0.7.7...axum-v0.7.9) --- updated-dependencies: - dependency-name: serde_json dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies - dependency-name: axum dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- crates/protocol/Cargo.toml | 2 +- crates/test-cli/Cargo.toml | 2 +- crates/testing-utils/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- node/cli/Cargo.toml | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bed9bc865..f1a2f0ca8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -647,9 +647,9 @@ checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" [[package]] name = "axum" -version = "0.7.7" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" +checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" dependencies = [ "async-trait", "axum-core", @@ -11614,9 +11614,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.132" +version = "1.0.133" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" dependencies = [ "itoa", "memchr", diff --git a/crates/protocol/Cargo.toml b/crates/protocol/Cargo.toml index d08eeab54..572a14119 100644 --- a/crates/protocol/Cargo.toml +++ b/crates/protocol/Cargo.toml @@ -34,7 +34,7 @@ hpke-rs-rust-crypto="0.2.0" num ="0.4.3" # Used only with the `server` feature to implement the WsConnection trait -axum ={ version="0.7.7", features=["ws"], optional=true } +axum ={ version="0.7.9", features=["ws"], optional=true } tokio-tungstenite={ version="0.24.0", optional=true } # Used only with the `wasm` feature diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index 4ac0c3f1a..6eb6f9125 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -21,5 +21,5 @@ bincode ="1.3.3" x25519-dalek ="2.0.1" sp-runtime ={ version="32.0.0", default-features=false } entropy-shared={ version="0.3.0", path="../shared" } -serde_json ="1.0.132" +serde_json ="1.0.133" serde ={ version="1.0.215", features=["derive"] } diff --git a/crates/testing-utils/Cargo.toml b/crates/testing-utils/Cargo.toml index 4f2fb3173..1aa465129 100644 --- a/crates/testing-utils/Cargo.toml +++ b/crates/testing-utils/Cargo.toml @@ -17,7 +17,7 @@ parity-scale-codec="3.6.12" lazy_static ="1.5.0" hex-literal ="0.4.1" tokio ={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util", "process"] } -axum ={ version="0.7.7" } +axum ={ version="0.7.9" } entropy-shared ={ version="0.3.0", path="../shared" } entropy-kvdb ={ version="0.3.0", path="../kvdb", default-features=false } entropy-tss ={ version="0.3.0", path="../threshold-signature-server", features=["test_helpers"] } diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index badfc292c..51cf41732 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -32,7 +32,7 @@ tokio ={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util" # HTTP reqwest={ version="0.12.9", features=["json", "stream"] } -axum ={ version="0.7.7", features=["ws"] } +axum ={ version="0.7.9", features=["ws"] } # Substrate subxt ="0.35.3" diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index 5c42fbc46..5a1cd29fc 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -30,7 +30,7 @@ log ="0.4.22" pallet-im-online={ version="28.0.0" } rand ="0.8.5" serde ={ version="1.0.215", features=["derive"] } -serde_json ='1.0.132' +serde_json ='1.0.133' # Substrate Client From e585baed8111d3e9c816eae09ad4cf0bef0b3d65 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2024 09:46:38 +0100 Subject: [PATCH 15/24] Bump entropy-programs-runtime from `c689ad3` to `b300dab` (#1169) Bumps [entropy-programs-runtime](https://github.com/entropyxyz/programs) from `c689ad3` to `b300dab`. - [Release notes](https://github.com/entropyxyz/programs/releases) - [Commits](https://github.com/entropyxyz/programs/compare/c689ad3d8114eff88bc646d9b200c71f6e14f436...b300dab62e0bd77ff9a6341dab4988459dcaed78) --- updated-dependencies: - dependency-name: entropy-programs-runtime dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f1a2f0ca8..efa59c901 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -848,7 +848,7 @@ checksum = "33415e24172c1b7d6066f6d999545375ab8e1d95421d6784bdfff9496f292387" dependencies = [ "bitcoin_hashes", "rand", - "rand_core 0.6.4", + "rand_core 0.5.1", "serde", "unicode-normalization", "zeroize", @@ -2578,7 +2578,7 @@ dependencies = [ [[package]] name = "entropy-programs-core" version = "0.10.0" -source = "git+https://github.com/entropyxyz/programs.git?branch=master#c689ad3d8114eff88bc646d9b200c71f6e14f436" +source = "git+https://github.com/entropyxyz/programs.git?branch=master#b300dab62e0bd77ff9a6341dab4988459dcaed78" dependencies = [ "getrandom 0.2.15", "serde", @@ -2589,7 +2589,7 @@ dependencies = [ [[package]] name = "entropy-programs-runtime" version = "0.10.0" -source = "git+https://github.com/entropyxyz/programs.git?branch=master#c689ad3d8114eff88bc646d9b200c71f6e14f436" +source = "git+https://github.com/entropyxyz/programs.git?branch=master#b300dab62e0bd77ff9a6341dab4988459dcaed78" dependencies = [ "entropy-programs-core", "thiserror 1.0.68", @@ -7713,7 +7713,7 @@ checksum = "4e69bf016dc406eff7d53a7d3f7cf1c2e72c82b9088aac1118591e36dd2cd3e9" dependencies = [ "bitcoin_hashes", "rand", - "rand_core 0.6.4", + "rand_core 0.5.1", "serde", "unicode-normalization", ] From 69a3b427a565bb1f9bd246978465278bccf6b572 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 08:04:35 +0000 Subject: [PATCH 16/24] Bump tower-http from 0.6.1 to 0.6.2 in the patch-dependencies group (#1171) Bumps the patch-dependencies group with 1 update: [tower-http](https://github.com/tower-rs/tower-http). Updates `tower-http` from 0.6.1 to 0.6.2 - [Release notes](https://github.com/tower-rs/tower-http/releases) - [Commits](https://github.com/tower-rs/tower-http/compare/tower-http-0.6.1...tower-http-0.6.2) --- updated-dependencies: - dependency-name: tower-http dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 10 +++++----- crates/threshold-signature-server/Cargo.toml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index efa59c901..843488077 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -848,7 +848,7 @@ checksum = "33415e24172c1b7d6066f6d999545375ab8e1d95421d6784bdfff9496f292387" dependencies = [ "bitcoin_hashes", "rand", - "rand_core 0.5.1", + "rand_core 0.6.4", "serde", "unicode-normalization", "zeroize", @@ -2845,7 +2845,7 @@ dependencies = [ "thiserror 2.0.3", "tokio", "tokio-tungstenite", - "tower-http 0.6.1", + "tower-http 0.6.2", "tracing", "tracing-bunyan-formatter", "tracing-loki", @@ -7713,7 +7713,7 @@ checksum = "4e69bf016dc406eff7d53a7d3f7cf1c2e72c82b9088aac1118591e36dd2cd3e9" dependencies = [ "bitcoin_hashes", "rand", - "rand_core 0.5.1", + "rand_core 0.6.4", "serde", "unicode-normalization", ] @@ -14651,9 +14651,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8437150ab6bbc8c5f0f519e3d5ed4aa883a83dd4cdd3d1b21f9482936046cb97" +checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697" dependencies = [ "bitflags 2.5.0", "bytes", diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index 51cf41732..98997e213 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -52,7 +52,7 @@ entropy-programs-runtime={ git="https://github.com/entropyxyz/programs.git", bra tracing ="0.1.37" tracing-subscriber ={ version="0.3.18", features=["env-filter", "json"] } tracing-loki ="0.2" -tower-http ={ version="0.6.1", features=["trace", "cors"] } +tower-http ={ version="0.6.2", features=["trace", "cors"] } tracing-bunyan-formatter="0.3.9" uuid ={ version="1.11.0", features=["v4"] } From 78a81907b5d600c0a0f94cd002808ead42cdc359 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 13:29:42 +0100 Subject: [PATCH 17/24] Bump parity-scale-codec from 3.6.12 to 3.7.0 (#1172) Bumps [parity-scale-codec](https://github.com/paritytech/parity-scale-codec) from 3.6.12 to 3.7.0. - [Release notes](https://github.com/paritytech/parity-scale-codec/releases) - [Changelog](https://github.com/paritytech/parity-scale-codec/blob/master/CHANGELOG.md) - [Commits](https://github.com/paritytech/parity-scale-codec/commits) --- updated-dependencies: - dependency-name: parity-scale-codec dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 5 +++-- crates/testing-utils/Cargo.toml | 2 +- crates/threshold-signature-server/Cargo.toml | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 843488077..ea444c6d6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7741,9 +7741,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.12" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +checksum = "8be4817d39f3272f69c59fe05d0535ae6456c2dc2fa1ba02910296c7e0a5c590" dependencies = [ "arrayvec 0.7.4", "bitvec", @@ -7751,6 +7751,7 @@ dependencies = [ "bytes", "impl-trait-for-tuples", "parity-scale-codec-derive", + "rustversion", "serde", ] diff --git a/crates/testing-utils/Cargo.toml b/crates/testing-utils/Cargo.toml index 1aa465129..2aea25152 100644 --- a/crates/testing-utils/Cargo.toml +++ b/crates/testing-utils/Cargo.toml @@ -13,7 +13,7 @@ subxt ="0.35.3" sp-keyring ="34.0.0" project-root ="0.2.2" sp-core ={ version="31.0.0", default-features=false } -parity-scale-codec="3.6.12" +parity-scale-codec="3.7.0" lazy_static ="1.5.0" hex-literal ="0.4.1" tokio ={ version="1.41", features=["macros", "fs", "rt-multi-thread", "io-util", "process"] } diff --git a/crates/threshold-signature-server/Cargo.toml b/crates/threshold-signature-server/Cargo.toml index 98997e213..ac390f102 100644 --- a/crates/threshold-signature-server/Cargo.toml +++ b/crates/threshold-signature-server/Cargo.toml @@ -36,7 +36,7 @@ axum ={ version="0.7.9", features=["ws"] } # Substrate subxt ="0.35.3" -parity-scale-codec="3.6.12" +parity-scale-codec="3.7.0" sp-core ={ version="31.0.0", default-features=false } # Entropy From b79d655c9a1ae19171dd29b493fd1c25e125c253 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 21 Nov 2024 08:09:23 +0000 Subject: [PATCH 18/24] Bump scale-info from 2.11.5 to 2.11.6 in the patch-dependencies group (#1177) Bumps the patch-dependencies group with 1 update: [scale-info](https://github.com/paritytech/scale-info). Updates `scale-info` from 2.11.5 to 2.11.6 - [Release notes](https://github.com/paritytech/scale-info/releases) - [Changelog](https://github.com/paritytech/scale-info/blob/master/CHANGELOG.md) - [Commits](https://github.com/paritytech/scale-info/commits/v2.11.6) --- updated-dependencies: - dependency-name: scale-info dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- crates/shared/Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ea444c6d6..a6a62055c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11282,9 +11282,9 @@ dependencies = [ [[package]] name = "scale-info" -version = "2.11.5" +version = "2.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa7ffc1c0ef49b0452c6e2986abf2b07743320641ffd5fc63d552458e3b779b" +checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" dependencies = [ "bitvec", "cfg-if", @@ -11296,9 +11296,9 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.11.5" +version = "2.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46385cc24172cf615450267463f937c10072516359b3ff1cb24228a4a08bf951" +checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", diff --git a/crates/shared/Cargo.toml b/crates/shared/Cargo.toml index d90ffa2a7..10cd726f5 100644 --- a/crates/shared/Cargo.toml +++ b/crates/shared/Cargo.toml @@ -10,7 +10,7 @@ edition ='2021' [dependencies] codec ={ package="parity-scale-codec", version="3.0.0", default-features=false } -scale-info ={ version='2.11.5', default-features=false, features=['derive'] } +scale-info ={ version='2.11.6', default-features=false, features=['derive'] } serde ={ version="1.0", default-features=false, features=["derive"] } serde_derive="1.0.147" strum ="0.26.3" From bdc0df81a8248a306362c776f098fe0e4e03ac81 Mon Sep 17 00:00:00 2001 From: peg Date: Thu, 21 Nov 2024 10:00:10 +0100 Subject: [PATCH 19/24] Add TSS endpoint to get TDX quote (#1173) * Add attest get endpoint * Changelog * Add test-cli command to get a quote * Error handling * Apply suggestions from review --- CHANGELOG.md | 3 +- Cargo.lock | 1 + crates/client/src/client.rs | 25 +++++-------- crates/client/src/errors.rs | 13 +++++++ crates/client/src/tests.rs | 2 +- crates/client/src/user.rs | 35 +++++++++++++++++-- crates/test-cli/Cargo.toml | 1 + crates/test-cli/src/lib.rs | 20 +++++++++++ .../src/attestation/api.rs | 26 ++++++++++++++ .../src/attestation/errors.rs | 2 ++ .../src/attestation/tests.rs | 32 ++++++++++++++++- crates/threshold-signature-server/src/lib.rs | 3 +- 12 files changed, 141 insertions(+), 22 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c90d6df7..e4d4fbaed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,12 +21,13 @@ At the moment this project **does not** adhere to `change_threshold_accounts()` extrinsics got new TDX `quote` related parameters added. - In [#1134](https://github.com/entropyxyz/entropy-core/pull/1134/) the `--no-sync` option was removed. -- In [#1153](https://github.com/entropyxyz/entropy-core/pull/1153/) the program runtime was updated to accept +- In [#1153](https://github.com/entropyxyz/entropy-core/pull/1153/) the program runtime was updated to accept multiple oracle inputs, this means any programs that were compiled and used need to be recompiled to the new runtime ### Added - Protocol message versioning ([#1140](https://github.com/entropyxyz/entropy-core/pull/1140)) +- Add TSS endpoint to get TDX quote ([#1173](https://github.com/entropyxyz/entropy-core/pull/1173)) ### Changed - Use correct key rotation endpoint in OCW ([#1104](https://github.com/entropyxyz/entropy-core/pull/1104)) diff --git a/Cargo.lock b/Cargo.lock index a6a62055c..d44be9ea4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2753,6 +2753,7 @@ dependencies = [ "entropy-client", "entropy-shared", "hex", + "reqwest", "serde", "serde_json", "sp-core 31.0.0", diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 98d8b4b85..9061fd270 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -39,7 +39,9 @@ use crate::{ }, client::entropy::staking_extension::events::{EndpointChanged, ThresholdAccountChanged}, substrate::{get_registered_details, submit_transaction_with_pair}, - user::{get_all_signers_from_chain, get_validators_not_signer_for_relay, UserSignatureRequest}, + user::{ + self, get_all_signers_from_chain, get_validators_not_signer_for_relay, UserSignatureRequest, + }, Hasher, }; @@ -426,6 +428,9 @@ async fn jumpstart_inner( /// some point in the near future. /// /// The returned `nonce` must be used when generating a `quote` for the chain. +/// +/// This wraps [user::request_attestation] to convert the error to a [ClientError] consistant with +/// other functions in this module #[tracing::instrument( skip_all, fields( @@ -435,19 +440,7 @@ async fn jumpstart_inner( pub async fn request_attestation( api: &OnlineClient, rpc: &LegacyRpcMethods, - attestee: sr25519::Pair, -) -> Result, ClientError> { - tracing::debug!("{} is requesting an attestation.", attestee.public()); - - let request_attestation = entropy::tx().attestation().request_attestation(); - - let result = - submit_transaction_with_pair(api, rpc, &attestee, &request_attestation, None).await?; - let result_event = result - .find_first::()? - .ok_or(crate::errors::SubstrateError::NoEvent)?; - - let nonce = result_event.0; - - Ok(nonce) + attestee: &sr25519::Pair, +) -> Result<[u8; 32], ClientError> { + Ok(user::request_attestation(api, rpc, attestee).await?) } diff --git a/crates/client/src/errors.rs b/crates/client/src/errors.rs index 24705ae55..9cd514608 100644 --- a/crates/client/src/errors.rs +++ b/crates/client/src/errors.rs @@ -49,6 +49,17 @@ pub enum SubgroupGetError { JoinError(#[from] tokio::task::JoinError), } +/// An error when making an attestation request +#[derive(Debug, Error)] +pub enum AttestationRequestError { + #[error("Generic Substrate error: {0}")] + GenericSubstrate(#[from] subxt::error::Error), + #[error("Substrate client: {0}")] + SubstrateClient(#[from] crate::substrate::SubstrateError), + #[error("Recieved nonce is not 32 bytes")] + BadNonce, +} + #[cfg(feature = "full-client")] #[derive(Debug, Error)] pub enum ClientError { @@ -108,4 +119,6 @@ pub enum ClientError { BadVerifyingKeyLength, #[error("There are no validators which can act as a relay node for signature requests")] NoNonSigningValidators, + #[error("Attestation request: {0}")] + AttestationRequest(#[from] AttestationRequestError), } diff --git a/crates/client/src/tests.rs b/crates/client/src/tests.rs index 93e406037..db3ab5e94 100644 --- a/crates/client/src/tests.rs +++ b/crates/client/src/tests.rs @@ -116,7 +116,7 @@ async fn test_change_threshold_accounts() { .unwrap(); // When we request an attestation we get a nonce back that we must use when generating our quote. - let nonce = request_attestation(&api, &rpc, tss_signer_pair.signer().clone()).await.unwrap(); + let nonce = request_attestation(&api, &rpc, tss_signer_pair.signer()).await.unwrap(); let nonce: [u8; 32] = nonce.try_into().unwrap(); let mut pck_seeder = StdRng::from_seed(tss_public_key.0.clone()); diff --git a/crates/client/src/user.rs b/crates/client/src/user.rs index 9b4aa101b..154924c42 100644 --- a/crates/client/src/user.rs +++ b/crates/client/src/user.rs @@ -15,13 +15,14 @@ //! User interaction related use crate::{ chain_api::{entropy, EntropyConfig}, - substrate::query_chain, + substrate::{query_chain, submit_transaction_with_pair}, }; use entropy_shared::{user::ValidatorInfo, BlockNumber, HashingAlgorithm}; use serde::{Deserialize, Serialize}; +use sp_core::{sr25519, Pair}; use subxt::{backend::legacy::LegacyRpcMethods, OnlineClient}; -pub use crate::errors::SubgroupGetError; +pub use crate::errors::{AttestationRequestError, SubgroupGetError}; /// Represents an unparsed, transaction request coming from the client. #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] @@ -143,3 +144,33 @@ pub async fn get_all_signers_from_chain( Ok(all_signers) } + +/// An extrinsic to indicate to the chain that it should expect an attestation from the `signer` at +/// some point in the near future. +/// +/// The returned `nonce` must be used when generating a `quote` for the chain. +#[tracing::instrument( + skip_all, + fields( + attestee = ?attestee.public(), + ) +)] +pub async fn request_attestation( + api: &OnlineClient, + rpc: &LegacyRpcMethods, + attestee: &sr25519::Pair, +) -> Result<[u8; 32], AttestationRequestError> { + tracing::debug!("{} is requesting an attestation.", attestee.public()); + + let request_attestation = entropy::tx().attestation().request_attestation(); + + let result = + submit_transaction_with_pair(api, rpc, attestee, &request_attestation, None).await?; + let result_event = result + .find_first::()? + .ok_or(crate::errors::SubstrateError::NoEvent)?; + + let nonce = result_event.0.try_into().map_err(|_| AttestationRequestError::BadNonce)?; + + Ok(nonce) +} diff --git a/crates/test-cli/Cargo.toml b/crates/test-cli/Cargo.toml index 6eb6f9125..ef4fdba17 100644 --- a/crates/test-cli/Cargo.toml +++ b/crates/test-cli/Cargo.toml @@ -23,3 +23,4 @@ sp-runtime ={ version="32.0.0", default-features=false } entropy-shared={ version="0.3.0", path="../shared" } serde_json ="1.0.133" serde ={ version="1.0.215", features=["derive"] } +reqwest ="0.12.9" diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index cf558146e..2e58db13d 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -189,6 +189,14 @@ enum CliCommand { #[arg(short, long)] mnemonic_option: Option, }, + /// Request a TDX quote from a TSS server and write it to a file. + GetTdxQuote { + /// The socket address of the TS server, eg: `127.0.0.1:3002` + tss_endpoint: String, + /// The filename to write the quote to. Defaults to `quote.dat` + #[arg(long)] + output_filename: Option, + }, } impl Cli { @@ -558,6 +566,18 @@ pub async fn run_command( Ok("Succesfully jumpstarted network.".to_string()) } }, + CliCommand::GetTdxQuote { tss_endpoint, output_filename } => { + let quote_bytes = + reqwest::get(format!("http://{}/attest", tss_endpoint)).await?.bytes().await?; + let output_filename = output_filename.unwrap_or("quote.dat".into()); + + std::fs::write(&output_filename, quote_bytes)?; + if cli.json { + Ok("{}".to_string()) + } else { + Ok(format!("Succesfully written quote to {}", output_filename)) + } + }, } } diff --git a/crates/threshold-signature-server/src/attestation/api.rs b/crates/threshold-signature-server/src/attestation/api.rs index fe984108d..1ae24f41f 100644 --- a/crates/threshold-signature-server/src/attestation/api.rs +++ b/crates/threshold-signature-server/src/attestation/api.rs @@ -24,6 +24,7 @@ use crate::{ AppState, }; use axum::{body::Bytes, extract::State, http::StatusCode}; +use entropy_client::user::request_attestation; use entropy_kvdb::kv_manager::KvManager; use entropy_shared::OcwMessageAttestationRequest; use parity_scale_codec::Decode; @@ -77,6 +78,31 @@ pub async fn attest( Ok(StatusCode::OK) } +/// Retrieve a quote by requesting a nonce from the chain and return the quote in the HTTP response +/// body. +/// +/// This is used by node operators to get a quote for use in the `validate`, `change_endpoint` +/// and `change_tss_accounts` extrinsics. +pub async fn get_attest( + State(app_state): State, +) -> Result<(StatusCode, Vec), AttestationErr> { + let (signer, x25519_secret) = get_signer_and_x25519_secret(&app_state.kv_store).await?; + let api = get_api(&app_state.configuration.endpoint).await?; + let rpc = get_rpc(&app_state.configuration.endpoint).await?; + + // Request attestation to get nonce + let nonce = request_attestation(&api, &rpc, signer.signer()).await?; + + // We also need the current block number as input + let block_number = + rpc.chain_get_header(None).await?.ok_or_else(|| AttestationErr::BlockNumber)?.number; + + // We add 1 to the block number as this will be processed in the next block + let quote = create_quote(block_number + 1, nonce, &signer, &x25519_secret).await?; + + Ok((StatusCode::OK, quote)) +} + /// Create a mock quote for testing on non-TDX hardware #[cfg(not(feature = "production"))] pub async fn create_quote( diff --git a/crates/threshold-signature-server/src/attestation/errors.rs b/crates/threshold-signature-server/src/attestation/errors.rs index 7fc2ccd00..0ccd379de 100644 --- a/crates/threshold-signature-server/src/attestation/errors.rs +++ b/crates/threshold-signature-server/src/attestation/errors.rs @@ -48,6 +48,8 @@ pub enum AttestationErr { Kv(#[from] entropy_kvdb::kv_manager::error::KvError), #[error("Data is stale")] StaleData, + #[error("Attestation request: {0}")] + AttestationRequest(#[from] entropy_client::errors::AttestationRequestError), } impl IntoResponse for AttestationErr { diff --git a/crates/threshold-signature-server/src/attestation/tests.rs b/crates/threshold-signature-server/src/attestation/tests.rs index 16e49821d..37314b9b9 100644 --- a/crates/threshold-signature-server/src/attestation/tests.rs +++ b/crates/threshold-signature-server/src/attestation/tests.rs @@ -27,10 +27,40 @@ use crate::{ use entropy_kvdb::clean_tests; use entropy_shared::OcwMessageAttestationRequest; use entropy_testing_utils::{ - constants::TSS_ACCOUNTS, + constants::{BOB_STASH_ADDRESS, TSS_ACCOUNTS}, substrate_context::{test_context_stationary, test_node_process_stationary}, }; use serial_test::serial; +use subxt::utils::AccountId32; +use tdx_quote::{decode_verifying_key, Quote}; + +#[tokio::test] +#[serial] +async fn test_get_attest() { + initialize_test_logger().await; + clean_tests(); + + let cxt = test_node_process_stationary().await; + let (_validator_ips, _validator_ids) = + spawn_testing_validators(ChainSpecType::Integration).await; + + let api = get_api(&cxt.ws_url).await.unwrap(); + let rpc = get_rpc(&cxt.ws_url).await.unwrap(); + + let quote_bytes = + reqwest::get("http://127.0.0.1:3002/attest").await.unwrap().bytes().await.unwrap(); + let quote = Quote::from_bytes("e_bytes).unwrap(); + + let query = + entropy::storage().staking_extension().threshold_servers(&AccountId32(BOB_STASH_ADDRESS.0)); + let server_info = query_chain(&api, &rpc, query, None).await.unwrap().unwrap(); + + let provisioning_certification_key = + decode_verifying_key(&server_info.provisioning_certification_key.0.try_into().unwrap()) + .unwrap(); + + assert!(quote.verify_with_pck(provisioning_certification_key).is_ok()) +} #[ignore] #[tokio::test] diff --git a/crates/threshold-signature-server/src/lib.rs b/crates/threshold-signature-server/src/lib.rs index 7ea5b0734..2468208b2 100644 --- a/crates/threshold-signature-server/src/lib.rs +++ b/crates/threshold-signature-server/src/lib.rs @@ -182,7 +182,7 @@ pub use crate::helpers::{ validator::{get_signer, get_signer_and_x25519_secret}, }; use crate::{ - attestation::api::attest, + attestation::api::{attest, get_attest}, health::api::healthz, launch::Configuration, node_info::api::{hashes, version as get_version}, @@ -214,6 +214,7 @@ pub fn app(app_state: AppState) -> Router { .route("/validator/reshare", post(new_reshare)) .route("/rotate_network_key", post(rotate_network_key)) .route("/attest", post(attest)) + .route("/attest", get(get_attest)) .route("/healthz", get(healthz)) .route("/version", get(get_version)) .route("/hashes", get(hashes)) From fd1047ffe9ebaa47a70bbc31ca7864f7559fd784 Mon Sep 17 00:00:00 2001 From: JesseAbram <33698952+JesseAbram@users.noreply.github.com> Date: Thu, 21 Nov 2024 08:08:05 -0500 Subject: [PATCH 20/24] Add no current signer guard (#1175) --- pallets/staking/src/lib.rs | 5 +++++ pallets/staking/src/tests.rs | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/pallets/staking/src/lib.rs b/pallets/staking/src/lib.rs index 8154f3bde..fb72839de 100644 --- a/pallets/staking/src/lib.rs +++ b/pallets/staking/src/lib.rs @@ -794,6 +794,11 @@ pub mod pallet { return Ok(weight); } + // Network not jumpstarted + if current_signers_length == 0 { + return Ok(weight); + } + let mut new_signers: Vec> = vec![]; let mut count = 0u32; let mut remove_indicies_len = 0; diff --git a/pallets/staking/src/tests.rs b/pallets/staking/src/tests.rs index 01eef85a6..92125b2a9 100644 --- a/pallets/staking/src/tests.rs +++ b/pallets/staking/src/tests.rs @@ -523,6 +523,13 @@ fn it_deletes_when_no_bond_left() { }); } +#[test] +fn it_doesnt_panic_when_no_signers() { + new_test_ext().execute_with(|| { + assert_ok!(Staking::new_session_handler(&[1, 2, 3])); + }); +} + #[test] fn it_tests_new_session_handler() { new_test_ext().execute_with(|| { From 5e357c20521f9e2b00574a83c54b9a8c2c95b299 Mon Sep 17 00:00:00 2001 From: peg Date: Thu, 21 Nov 2024 21:00:23 +0100 Subject: [PATCH 21/24] Test CLI - if no configuration / aux info interfaces files are provided, default to an empty vector (#1178) If no interface files given, default to empty vector --- crates/test-cli/src/lib.rs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index 2e58db13d..5a64df243 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -326,16 +326,18 @@ pub async fn run_command( let config_interface = match config_interface_file { Some(file_name) => fs::read(file_name)?, - None => fs::read( - config_interface_file_option.expect("No config interface file passed"), - )?, + None => match config_interface_file_option { + Some(config_interface_file) => fs::read(config_interface_file)?, + None => Vec::new(), + }, }; let aux_data_interface = match aux_data_interface_file { Some(file_name) => fs::read(file_name)?, - None => fs::read( - aux_data_interface_file_option.expect("No aux data interface file passed"), - )?, + None => match aux_data_interface_file_option { + Some(aux_data_interface_file) => fs::read(aux_data_interface_file)?, + None => Vec::new(), + }, }; let program_version_number = match program_version_number_option { From ceb378aed24be1d41bb8db378ddcd9cbf4fea1ca Mon Sep 17 00:00:00 2001 From: peg Date: Fri, 22 Nov 2024 08:58:04 +0100 Subject: [PATCH 22/24] Add command to get oracle headings (#1170) * Add command to get oracle headings * Tidy, changelog * Wait an extra block * test gets finalized blocks --------- Co-authored-by: Jesse Abramowitz --- CHANGELOG.md | 1 + Cargo.lock | 1 + crates/client/Cargo.toml | 22 ++++++++++++---------- crates/client/src/client.rs | 19 +++++++++++++++++++ crates/client/src/errors.rs | 2 ++ crates/client/src/tests.rs | 23 +++++++++++++++++++++-- crates/test-cli/src/lib.rs | 14 +++++++++++--- 7 files changed, 67 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e4d4fbaed..c5d4bfdbe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ runtime ### Added - Protocol message versioning ([#1140](https://github.com/entropyxyz/entropy-core/pull/1140)) +- CLI command to get oracle headings ([#1170](https://github.com/entropyxyz/entropy-core/pull/1170)) - Add TSS endpoint to get TDX quote ([#1173](https://github.com/entropyxyz/entropy-core/pull/1173)) ### Changed diff --git a/Cargo.lock b/Cargo.lock index d44be9ea4..989a41f6a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2522,6 +2522,7 @@ dependencies = [ "hex", "js-sys", "num", + "parity-scale-codec", "rand", "rand_core 0.6.4", "reqwest", diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 1b1ac87a0..869bc5dd1 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -19,18 +19,19 @@ futures ="0.3" sp-core ={ version="31.0.0", default-features=false, features=["full_crypto", "serde"] } tracing ="0.1.37" rand ={ version="0.8", default-features=false } +anyhow ="1.0.93" # Present when "full-client" feature is active -blake2 ={ version="0.10.4", optional=true } -rand_core ={ version="0.6.4", optional=true } -serde_json ={ version="1.0", optional=true } -x25519-dalek ={ version="2.0.1", features=["static_secrets"], optional=true } -entropy-protocol={ version="0.3.0", path="../protocol", optional=true, default-features=false } -reqwest ={ version="0.12.9", features=["json", "stream"], optional=true } -base64 ={ version="0.22.0", optional=true } -synedrion ={ version="0.2.0-beta.0", optional=true } -hex ={ version="0.4.3", optional=true } -anyhow ="1.0.93" +blake2 ={ version="0.10.4", optional=true } +rand_core ={ version="0.6.4", optional=true } +serde_json ={ version="1.0", optional=true } +x25519-dalek ={ version="2.0.1", features=["static_secrets"], optional=true } +entropy-protocol ={ version="0.3.0", path="../protocol", optional=true, default-features=false } +reqwest ={ version="0.12.9", features=["json", "stream"], optional=true } +base64 ={ version="0.22.0", optional=true } +synedrion ={ version="0.2.0-beta.0", optional=true } +hex ={ version="0.4.3", optional=true } +parity-scale-codec={ version="3.6.3", default-features=false, optional=true } # Only for the browser js-sys={ version="0.3.72", optional=true } @@ -64,6 +65,7 @@ full-client=[ "dep:base64", "dep:synedrion", "dep:hex", + "dep:parity-scale-codec", ] full-client-native=["full-client", "entropy-protocol/server"] full-client-wasm=["full-client", "entropy-protocol/wasm", "dep:js-sys"] diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 9061fd270..062de590a 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -21,6 +21,7 @@ pub use crate::{ }; use anyhow::anyhow; pub use entropy_protocol::{sign_and_encrypt::EncryptedSignedMessage, KeyParams}; +use parity_scale_codec::Decode; use rand::Rng; use std::str::FromStr; pub use synedrion::KeyShare; @@ -444,3 +445,21 @@ pub async fn request_attestation( ) -> Result<[u8; 32], ClientError> { Ok(user::request_attestation(api, rpc, attestee).await?) } + +/// Get oracle data headings +/// This is useful for program developers to know what oracle data is available +pub async fn get_oracle_headings( + api: &OnlineClient, + _rpc: &LegacyRpcMethods, +) -> Result, ClientError> { + let storage_address = entropy::storage().oracle().oracle_data_iter(); + let mut iter = api.storage().at_latest().await?.iter(storage_address).await?; + let mut headings = Vec::new(); + while let Some(Ok(kv)) = iter.next().await { + // Key is: storage_address || 128 bit hash || key + let mut input = &kv.key_bytes[32 + 16 + 1..]; + let heading = String::decode(&mut input)?; + headings.push(heading); + } + Ok(headings) +} diff --git a/crates/client/src/errors.rs b/crates/client/src/errors.rs index 9cd514608..c2f4ab241 100644 --- a/crates/client/src/errors.rs +++ b/crates/client/src/errors.rs @@ -119,6 +119,8 @@ pub enum ClientError { BadVerifyingKeyLength, #[error("There are no validators which can act as a relay node for signature requests")] NoNonSigningValidators, + #[error("Scale decode: {0}")] + Codec(#[from] parity_scale_codec::Error), #[error("Attestation request: {0}")] AttestationRequest(#[from] AttestationRequestError), } diff --git a/crates/client/src/tests.rs b/crates/client/src/tests.rs index db3ab5e94..1fa9c290f 100644 --- a/crates/client/src/tests.rs +++ b/crates/client/src/tests.rs @@ -11,8 +11,8 @@ use crate::{ }, get_api, get_rpc, EntropyConfig, }, - change_endpoint, change_threshold_accounts, register, remove_program, request_attestation, - store_program, + change_endpoint, change_threshold_accounts, get_oracle_headings, register, remove_program, + request_attestation, store_program, substrate::query_chain, update_programs, }; @@ -274,3 +274,22 @@ async fn test_remove_program_reference_counter() { // We can now remove the program because no-one is using it remove_program(&api, &rpc, &program_owner, program_pointer).await.unwrap(); } + +#[tokio::test] +#[serial] +async fn test_get_oracle_headings() { + let force_authoring = true; + let substrate_context = &test_node_process_testing_state(force_authoring).await[0]; + let api = get_api(&substrate_context.ws_url).await.unwrap(); + let rpc = get_rpc(&substrate_context.ws_url).await.unwrap(); + + let mut current_block = 0; + while current_block < 2 { + let finalized_head = rpc.chain_get_finalized_head().await.unwrap(); + current_block = rpc.chain_get_header(Some(finalized_head)).await.unwrap().unwrap().number; + } + + let headings = get_oracle_headings(&api, &rpc).await.unwrap(); + + assert_eq!(headings, vec!["block_number_entropy".to_string()]); +} diff --git a/crates/test-cli/src/lib.rs b/crates/test-cli/src/lib.rs index 5a64df243..8b76fe5f8 100644 --- a/crates/test-cli/src/lib.rs +++ b/crates/test-cli/src/lib.rs @@ -27,9 +27,9 @@ use entropy_client::{ EntropyConfig, }, client::{ - change_endpoint, change_threshold_accounts, get_accounts, get_api, get_programs, get_rpc, - jumpstart_network, register, remove_program, sign, store_program, update_programs, - VERIFYING_KEY_LENGTH, + change_endpoint, change_threshold_accounts, get_accounts, get_api, get_oracle_headings, + get_programs, get_rpc, jumpstart_network, register, remove_program, sign, store_program, + update_programs, VERIFYING_KEY_LENGTH, }, }; pub use entropy_shared::PROGRAM_VERSION_NUMBER; @@ -189,6 +189,10 @@ enum CliCommand { #[arg(short, long)] mnemonic_option: Option, }, + /// Get headings of oracle data + /// + /// This is useful for program developers to know what oracle data is available. + GetOracleHeadings, /// Request a TDX quote from a TSS server and write it to a file. GetTdxQuote { /// The socket address of the TS server, eg: `127.0.0.1:3002` @@ -568,6 +572,10 @@ pub async fn run_command( Ok("Succesfully jumpstarted network.".to_string()) } }, + CliCommand::GetOracleHeadings => { + let headings = get_oracle_headings(&api, &rpc).await?; + Ok(serde_json::to_string_pretty(&headings)?) + }, CliCommand::GetTdxQuote { tss_endpoint, output_filename } => { let quote_bytes = reqwest::get(format!("http://{}/attest", tss_endpoint)).await?.bytes().await?; From b74ea7deda6b565a6eccdcaae1f9c20a4140b108 Mon Sep 17 00:00:00 2001 From: peg Date: Mon, 25 Nov 2024 08:17:08 +0100 Subject: [PATCH 23/24] Use an internal queue for messages with mismatched session id in protocol execution loop (#1183) Use an internal queue for messages with mismatched protocol id --- crates/protocol/src/execute_protocol.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/crates/protocol/src/execute_protocol.rs b/crates/protocol/src/execute_protocol.rs index 835f3c673..ec414aae8 100644 --- a/crates/protocol/src/execute_protocol.rs +++ b/crates/protocol/src/execute_protocol.rs @@ -40,7 +40,7 @@ use crate::{ KeyParams, KeyShareWithAuxInfo, PartyId, SessionId, Subsession, }; -use std::collections::BTreeSet; +use std::collections::{BTreeSet, VecDeque}; pub type ChannelIn = mpsc::Receiver; pub type ChannelOut = Broadcaster; @@ -134,6 +134,7 @@ where // Receive and process incoming messages let (process_tx, mut process_rx) = mpsc::channel(1024); + let mut messages_for_next_subprotocol = VecDeque::new(); while !session_arc.can_finalize(&accum)? { tokio::select! { // Incoming message from remote peer @@ -160,7 +161,7 @@ where } } else { tracing::warn!("Got protocol message with incorrect session ID - putting back in queue"); - tx.incoming_sender.send(message).await?; + messages_for_next_subprotocol.push_back(message); } } else { tracing::warn!("Got verifying key during protocol - ignoring"); @@ -176,6 +177,10 @@ where } } + for message in messages_for_next_subprotocol { + tx.incoming_sender.send(message).await?; + } + // Get session back out of Arc let session_inner = Arc::try_unwrap(session_arc).map_err(|_| GenericProtocolError::ArcUnwrapError)?; From d62db3b0d49a76247bdad9b36f80d6b0606faf06 Mon Sep 17 00:00:00 2001 From: peg Date: Mon, 25 Nov 2024 13:44:15 +0100 Subject: [PATCH 24/24] Use context, not block number in TDX quote input data (#1179) * Use context, not block number in quote input * Get context from querystring * Rm blocknumber from quoteinput in staking pallet benchmarking code * Fix pallet staking benchmarking * Update client tests * Error handle * Changelog * Neater handling of querystring * Make context enum non exhaustive --- CHANGELOG.md | 3 ++ crates/client/src/tests.rs | 11 ++-- crates/shared/src/types.rs | 18 ++++++- .../src/attestation/api.rs | 52 ++++++++++++++----- .../src/attestation/errors.rs | 2 + .../src/attestation/tests.rs | 8 ++- pallets/attestation/src/lib.rs | 11 ++-- pallets/attestation/src/tests.rs | 12 +++-- pallets/staking/src/benchmarking.rs | 29 ++++------- pallets/staking/src/lib.rs | 11 ++-- pallets/staking/src/mock.rs | 2 + 11 files changed, 98 insertions(+), 61 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c5d4bfdbe..5dbc090fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,8 @@ At the moment this project **does not** adhere to - In [#1153](https://github.com/entropyxyz/entropy-core/pull/1153/) the program runtime was updated to accept multiple oracle inputs, this means any programs that were compiled and used need to be recompiled to the new runtime +- In [#1179](https://github.com/entropyxyz/entropy-core/pull/1179) the format of TDX Quote input data has + been changed. ### Added - Protocol message versioning ([#1140](https://github.com/entropyxyz/entropy-core/pull/1140)) @@ -37,6 +39,7 @@ runtime - Add quote guards to `ServerInfo` related extrinsics ([#1123](https://github.com/entropyxyz/entropy-core/pull/1123/)) - Remove declare synced ([#1134](https://github.com/entropyxyz/entropy-core/pull/1134/)) - Update programs to accept multiple oracle data ([#1153](https://github.com/entropyxyz/entropy-core/pull/1153/)) +- Use context, not block number in TDX quote input data ([#1179](https://github.com/entropyxyz/entropy-core/pull/1179)) ## [0.3.0](https://github.com/entropyxyz/entropy-core/compare/release/v0.2.0...release/v0.3.0) - 2024-10-22 diff --git a/crates/client/src/tests.rs b/crates/client/src/tests.rs index 1fa9c290f..1663dbedb 100644 --- a/crates/client/src/tests.rs +++ b/crates/client/src/tests.rs @@ -17,6 +17,7 @@ use crate::{ update_programs, }; +use entropy_shared::{QuoteContext, QuoteInputData}; use entropy_testing_utils::{ constants::{TEST_PROGRAM_WASM_BYTECODE, TSS_ACCOUNTS, X25519_PUBLIC_KEYS}, helpers::encode_verifying_key, @@ -54,11 +55,8 @@ async fn test_change_endpoint() { let signing_key = tdx_quote::SigningKey::random(&mut OsRng); let public_key = sr25519::Public(tss_account_id.0); - // We need to add `1` here since the quote is being checked in the next block - let block_number = rpc.chain_get_header(None).await.unwrap().unwrap().number + 1; - let input_data = - entropy_shared::QuoteInputData::new(public_key, x25519_public_key, nonce, block_number); + QuoteInputData::new(public_key, x25519_public_key, nonce, QuoteContext::ChangeEndpoint); let mut pck_seeder = StdRng::from_seed(public_key.0); let pck = tdx_quote::SigningKey::random(&mut pck_seeder); @@ -129,14 +127,11 @@ async fn test_change_threshold_accounts() { let pck_certificate_chain = vec![tss_public_key.0.to_vec()]; let quote = { - // We need to add `1` here since the quote is being checked in the next block - let block_number = rpc.chain_get_header(None).await.unwrap().unwrap().number + 1; - let input_data = entropy_shared::QuoteInputData::new( tss_public_key, *x25519_public_key.as_bytes(), nonce, - block_number, + QuoteContext::ChangeThresholdAccounts, ); let signing_key = tdx_quote::SigningKey::random(&mut OsRng); diff --git a/crates/shared/src/types.rs b/crates/shared/src/types.rs index 803c9f57c..d6156a0be 100644 --- a/crates/shared/src/types.rs +++ b/crates/shared/src/types.rs @@ -123,17 +123,29 @@ impl QuoteInputData { tss_account_id: T, x25519_public_key: X25519PublicKey, nonce: [u8; 32], - block_number: u32, + context: QuoteContext, ) -> Self { let mut hasher = Blake2b512::new(); hasher.update(tss_account_id.encode()); hasher.update(x25519_public_key); hasher.update(nonce); - hasher.update(block_number.to_be_bytes()); + hasher.update(context.encode()); Self(hasher.finalize().into()) } } +/// An indicator as to the context in which a quote is intended to be used +#[derive(Clone, Encode, Decode, Debug, Eq, PartialEq)] +#[non_exhaustive] +pub enum QuoteContext { + /// To be used in the `validate` extrinsic + Validate, + /// To be used in the `change_endpoint` extrinsic + ChangeEndpoint, + /// To be used in the `change_threshold_accounts` extrinsic + ChangeThresholdAccounts, +} + /// A trait for types which can handle attestation requests. #[cfg(not(feature = "wasm"))] pub trait AttestationHandler { @@ -143,6 +155,7 @@ pub trait AttestationHandler { x25519_public_key: X25519PublicKey, provisioning_certification_key: BoundedVecEncodedVerifyingKey, quote: Vec, + context: QuoteContext, ) -> Result<(), sp_runtime::DispatchError>; /// Indicate to the attestation handler that a quote is desired. @@ -160,6 +173,7 @@ impl AttestationHandler for () { _x25519_public_key: X25519PublicKey, _provisioning_certification_key: BoundedVecEncodedVerifyingKey, _quote: Vec, + _context: QuoteContext, ) -> Result<(), sp_runtime::DispatchError> { Ok(()) } diff --git a/crates/threshold-signature-server/src/attestation/api.rs b/crates/threshold-signature-server/src/attestation/api.rs index 1ae24f41f..8ab443ab5 100644 --- a/crates/threshold-signature-server/src/attestation/api.rs +++ b/crates/threshold-signature-server/src/attestation/api.rs @@ -23,11 +23,16 @@ use crate::{ }, AppState, }; -use axum::{body::Bytes, extract::State, http::StatusCode}; +use axum::{ + body::Bytes, + extract::{Query, State}, + http::StatusCode, +}; use entropy_client::user::request_attestation; use entropy_kvdb::kv_manager::KvManager; -use entropy_shared::OcwMessageAttestationRequest; +use entropy_shared::{OcwMessageAttestationRequest, QuoteContext}; use parity_scale_codec::Decode; +use serde::Deserialize; use sp_core::Pair; use subxt::tx::PairSigner; use x25519_dalek::StaticSecret; @@ -68,8 +73,10 @@ pub async fn attest( .ok_or_else(|| AttestationErr::Unexpected)? }; - // We add 1 to the block number as this will be processed in the next block - let quote = create_quote(block_number + 1, nonce, &signer, &x25519_secret).await?; + // TODO (#1181): since this endpoint is currently only used in tests we don't know what the context should be + let context = QuoteContext::Validate; + + let quote = create_quote(nonce, &signer, &x25519_secret, context).await?; // Submit the quote let attest_tx = entropy::tx().attestation().attest(quote.clone()); @@ -85,6 +92,7 @@ pub async fn attest( /// and `change_tss_accounts` extrinsics. pub async fn get_attest( State(app_state): State, + Query(context_querystring): Query, ) -> Result<(StatusCode, Vec), AttestationErr> { let (signer, x25519_secret) = get_signer_and_x25519_secret(&app_state.kv_store).await?; let api = get_api(&app_state.configuration.endpoint).await?; @@ -93,12 +101,9 @@ pub async fn get_attest( // Request attestation to get nonce let nonce = request_attestation(&api, &rpc, signer.signer()).await?; - // We also need the current block number as input - let block_number = - rpc.chain_get_header(None).await?.ok_or_else(|| AttestationErr::BlockNumber)?.number; + let context = context_querystring.as_quote_context()?; - // We add 1 to the block number as this will be processed in the next block - let quote = create_quote(block_number + 1, nonce, &signer, &x25519_secret).await?; + let quote = create_quote(nonce, &signer, &x25519_secret, context).await?; Ok((StatusCode::OK, quote)) } @@ -106,10 +111,10 @@ pub async fn get_attest( /// Create a mock quote for testing on non-TDX hardware #[cfg(not(feature = "production"))] pub async fn create_quote( - block_number: u32, nonce: [u8; 32], signer: &PairSigner, x25519_secret: &StaticSecret, + context: QuoteContext, ) -> Result, AttestationErr> { use rand::{rngs::StdRng, SeedableRng}; use rand_core::OsRng; @@ -124,7 +129,7 @@ pub async fn create_quote( signer.signer().public(), *public_key.as_bytes(), nonce, - block_number, + context, ); // This is generated deterministically from TSS account id @@ -167,10 +172,10 @@ pub async fn validate_new_attestation( /// Create a TDX quote in production #[cfg(feature = "production")] pub async fn create_quote( - block_number: u32, nonce: [u8; 32], signer: &PairSigner, x25519_secret: &StaticSecret, + context: QuoteContext, ) -> Result, AttestationErr> { let public_key = x25519_dalek::PublicKey::from(x25519_secret); @@ -178,8 +183,29 @@ pub async fn create_quote( signer.signer().public(), *public_key.as_bytes(), nonce, - block_number, + context, ); Ok(configfs_tsm::create_quote(input_data.0)?) } + +/// Querystring for the GET `/attest` endpoint +#[derive(Deserialize)] +pub struct QuoteContextQuery { + /// The context in which the requested quote will be used. + /// + /// Must be one of `validate`, `change_endpoint`, `change_threshold_accounts`. + /// Eg: `http://127.0.0.1:3001/attest?context=validate` + context: String, +} + +impl QuoteContextQuery { + fn as_quote_context(&self) -> Result { + match self.context.as_str() { + "validate" => Ok(QuoteContext::Validate), + "change_endpoint" => Ok(QuoteContext::ChangeEndpoint), + "change_threshold_accounts" => Ok(QuoteContext::ChangeThresholdAccounts), + _ => Err(AttestationErr::UnknownContext), + } + } +} diff --git a/crates/threshold-signature-server/src/attestation/errors.rs b/crates/threshold-signature-server/src/attestation/errors.rs index 0ccd379de..14ace080b 100644 --- a/crates/threshold-signature-server/src/attestation/errors.rs +++ b/crates/threshold-signature-server/src/attestation/errors.rs @@ -50,6 +50,8 @@ pub enum AttestationErr { StaleData, #[error("Attestation request: {0}")] AttestationRequest(#[from] entropy_client::errors::AttestationRequestError), + #[error("Invalid or unknown context value given in query string")] + UnknownContext, } impl IntoResponse for AttestationErr { diff --git a/crates/threshold-signature-server/src/attestation/tests.rs b/crates/threshold-signature-server/src/attestation/tests.rs index 37314b9b9..8ba451305 100644 --- a/crates/threshold-signature-server/src/attestation/tests.rs +++ b/crates/threshold-signature-server/src/attestation/tests.rs @@ -47,8 +47,12 @@ async fn test_get_attest() { let api = get_api(&cxt.ws_url).await.unwrap(); let rpc = get_rpc(&cxt.ws_url).await.unwrap(); - let quote_bytes = - reqwest::get("http://127.0.0.1:3002/attest").await.unwrap().bytes().await.unwrap(); + let quote_bytes = reqwest::get("http://127.0.0.1:3002/attest?context=validate") + .await + .unwrap() + .bytes() + .await + .unwrap(); let quote = Quote::from_bytes("e_bytes).unwrap(); let query = diff --git a/pallets/attestation/src/lib.rs b/pallets/attestation/src/lib.rs index d51887fd2..ec046b851 100644 --- a/pallets/attestation/src/lib.rs +++ b/pallets/attestation/src/lib.rs @@ -47,7 +47,7 @@ mod tests; #[frame_support::pallet] pub mod pallet { - use entropy_shared::{AttestationHandler, QuoteInputData}; + use entropy_shared::{AttestationHandler, QuoteContext, QuoteInputData}; use frame_support::pallet_prelude::*; use frame_support::traits::Randomness; use frame_system::pallet_prelude::*; @@ -205,6 +205,7 @@ pub mod pallet { x25519_public_key: entropy_shared::X25519PublicKey, provisioning_certification_key: entropy_shared::BoundedVecEncodedVerifyingKey, quote: Vec, + context: QuoteContext, ) -> Result<(), DispatchError> { // Check that we were expecting a quote from this validator by getting the associated // nonce from PendingAttestations. @@ -214,15 +215,9 @@ pub mod pallet { // Parse the quote (which internally verifies the attestation key signature) let quote = Quote::from_bytes("e).map_err(|_| Error::::BadQuote)?; - // Get current block number - let block_number: u32 = { - let block_number = >::block_number(); - BlockNumberFor::::try_into(block_number).unwrap_or_default() - }; - // Check report input data matches the nonce, TSS details and block number let expected_input_data = - QuoteInputData::new(attestee, x25519_public_key, nonce, block_number); + QuoteInputData::new(attestee, x25519_public_key, nonce, context); ensure!( quote.report_input_data() == expected_input_data.0, Error::::IncorrectInputData diff --git a/pallets/attestation/src/tests.rs b/pallets/attestation/src/tests.rs index 324c210cf..113d5cd15 100644 --- a/pallets/attestation/src/tests.rs +++ b/pallets/attestation/src/tests.rs @@ -14,7 +14,7 @@ // along with this program. If not, see . use crate::mock::*; -use entropy_shared::{AttestationHandler, QuoteInputData}; +use entropy_shared::{AttestationHandler, QuoteContext, QuoteInputData}; use frame_support::{assert_noop, assert_ok}; use rand_core::OsRng; @@ -32,13 +32,12 @@ fn verify_quote_works() { let pck_encoded = tdx_quote::encode_verifying_key(pck.verifying_key()).unwrap(); let x25519_public_key = [0; 32]; - let block_number = 0; let input_data = QuoteInputData::new( ATTESTEE, // TSS Account ID x25519_public_key, nonce, - block_number, + QuoteContext::Validate, ); let quote = tdx_quote::Quote::mock(attestation_key.clone(), pck, input_data.0); @@ -47,6 +46,7 @@ fn verify_quote_works() { x25519_public_key, sp_runtime::BoundedVec::try_from(pck_encoded.to_vec()).unwrap(), quote.as_bytes().to_vec(), + QuoteContext::Validate, )); }) } @@ -63,13 +63,12 @@ fn verify_quote_fails_with_mismatched_input_data() { let pck_encoded = tdx_quote::encode_verifying_key(pck.verifying_key()).unwrap(); let x25519_public_key = [0; 32]; - let block_number = 0; let input_data = QuoteInputData::new( ATTESTEE, // TSS Account ID x25519_public_key, nonce, - block_number, + QuoteContext::Validate, ); let quote = tdx_quote::Quote::mock(attestation_key.clone(), pck, input_data.0); @@ -83,6 +82,7 @@ fn verify_quote_fails_with_mismatched_input_data() { x25519_public_key, sp_runtime::BoundedVec::try_from(pck_encoded.to_vec()).unwrap(), quote.as_bytes().to_vec(), + QuoteContext::Validate, ), crate::Error::::UnexpectedAttestation, ); @@ -96,6 +96,7 @@ fn verify_quote_fails_with_mismatched_input_data() { mismatched_x25519_public_key, sp_runtime::BoundedVec::try_from(pck_encoded.to_vec()).unwrap(), quote.as_bytes().to_vec(), + QuoteContext::Validate, ), crate::Error::::IncorrectInputData, ); @@ -116,6 +117,7 @@ fn verify_quote_fails_with_mismatched_input_data() { x25519_public_key, sp_runtime::BoundedVec::try_from(mismatched_pck_encoded.to_vec()).unwrap(), quote.as_bytes().to_vec(), + QuoteContext::Validate, ), crate::Error::::PckVerification ); diff --git a/pallets/staking/src/benchmarking.rs b/pallets/staking/src/benchmarking.rs index 411806a84..112a9c978 100644 --- a/pallets/staking/src/benchmarking.rs +++ b/pallets/staking/src/benchmarking.rs @@ -19,7 +19,7 @@ use super::*; use crate::pck::{signing_key_from_seed, MOCK_PCK_DERIVED_FROM_NULL_ARRAY}; #[allow(unused_imports)] use crate::Pallet as Staking; -use entropy_shared::{AttestationHandler, MAX_SIGNERS}; +use entropy_shared::{AttestationHandler, QuoteContext, MAX_SIGNERS}; use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite, whitelisted_caller}; use frame_support::{ assert_ok, ensure, @@ -78,7 +78,6 @@ fn prepare_attestation_for_validate( threshold: T::AccountId, x25519_public_key: [u8; 32], endpoint: Vec, - block_number: u32, ) -> (Vec, JoiningServerInfo) { let nonce = NULL_ARR; let quote = { @@ -91,8 +90,12 @@ fn prepare_attestation_for_validate( let attestation_key = tdx_quote::SigningKey::from_bytes(&ATTESTATION_KEY.into()).unwrap(); - let input_data = - entropy_shared::QuoteInputData::new(&threshold, x25519_public_key, nonce, block_number); + let input_data = entropy_shared::QuoteInputData::new( + &threshold, + x25519_public_key, + nonce, + QuoteContext::Validate, + ); tdx_quote::Quote::mock(attestation_key.clone(), pck, input_data.0).as_bytes().to_vec() }; @@ -132,14 +135,9 @@ fn prep_bond_and_validate( )); if validate_also { - let block_number = 0; let endpoint = b"http://localhost:3001".to_vec(); - let (quote, joining_server_info) = prepare_attestation_for_validate::( - threshold, - x25519_public_key, - endpoint, - block_number, - ); + let (quote, joining_server_info) = + prepare_attestation_for_validate::(threshold, x25519_public_key, endpoint); assert_ok!(>::validate( RawOrigin::Signed(bonder.clone()).into(), @@ -185,13 +183,10 @@ benchmarks! { x25519_public_key.clone(), ); - // For quote verification this needs to be the _next_ block, and right now we're at block `0`. - let block_number = 1; let quote = prepare_attestation_for_validate::( threshold, x25519_public_key, endpoint.clone().to_vec(), - block_number, ) .0; }: _(RawOrigin::Signed(bonder.clone()), endpoint.to_vec(), quote) @@ -229,12 +224,10 @@ benchmarks! { ); // For quote verification this needs to be the _next_ block, and right now we're at block `0`. - let block_number = 1; let (quote , joining_server_info) = prepare_attestation_for_validate::( new_threshold.clone(), x25519_public_key, endpoint.clone().to_vec(), - block_number, ); let pck_certificate_chain = joining_server_info.pck_certificate_chain; @@ -383,10 +376,8 @@ benchmarks! { x25519_public_key.clone() ); - // For quote verification this needs to be the _next_ block, and right now we're at block `0`. - let block_number = 1; let (quote, joining_server_info) = - prepare_attestation_for_validate::(threshold_account.clone(), x25519_public_key, endpoint.clone(), block_number); + prepare_attestation_for_validate::(threshold_account.clone(), x25519_public_key, endpoint.clone()); }: _(RawOrigin::Signed(bonder.clone()), ValidatorPrefs::default(), joining_server_info, quote) verify { assert_last_event::( diff --git a/pallets/staking/src/lib.rs b/pallets/staking/src/lib.rs index fb72839de..cec07911e 100644 --- a/pallets/staking/src/lib.rs +++ b/pallets/staking/src/lib.rs @@ -60,7 +60,7 @@ use sp_staking::SessionIndex; #[frame_support::pallet] pub mod pallet { use entropy_shared::{ - ValidatorInfo, X25519PublicKey, MAX_SIGNERS, TEST_RESHARE_BLOCK_NUMBER, + QuoteContext, ValidatorInfo, X25519PublicKey, MAX_SIGNERS, TEST_RESHARE_BLOCK_NUMBER, VERIFICATION_KEY_LENGTH, }; use frame_support::{ @@ -417,7 +417,8 @@ pub mod pallet { &server_info.tss_account.clone(), server_info.x25519_public_key, server_info.provisioning_certification_key.clone(), - quote + quote, + QuoteContext::ChangeEndpoint, ) .is_ok(), Error::::FailedAttestationCheck @@ -492,7 +493,8 @@ pub mod pallet { &tss_account.clone(), x25519_public_key, provisioning_certification_key.clone(), - quote + quote, + QuoteContext::ChangeThresholdAccounts, ) .is_ok(), Error::::FailedAttestationCheck @@ -645,7 +647,8 @@ pub mod pallet { &server_info.tss_account.clone(), server_info.x25519_public_key, server_info.provisioning_certification_key.clone(), - quote + quote, + QuoteContext::Validate, ) .is_ok(), Error::::FailedAttestationCheck diff --git a/pallets/staking/src/mock.rs b/pallets/staking/src/mock.rs index 6dea3171c..d2009939b 100644 --- a/pallets/staking/src/mock.rs +++ b/pallets/staking/src/mock.rs @@ -16,6 +16,7 @@ use core::convert::{TryFrom, TryInto}; use std::cell::RefCell; +use entropy_shared::QuoteContext; use frame_election_provider_support::{ bounds::{ElectionBounds, ElectionBoundsBuilder}, onchain, SequentialPhragmen, VoteWeight, @@ -400,6 +401,7 @@ impl entropy_shared::AttestationHandler for MockAttestationHandler { _x25519_public_key: entropy_shared::X25519PublicKey, _provisioning_certification_key: entropy_shared::BoundedVecEncodedVerifyingKey, quote: Vec, + _context: QuoteContext, ) -> Result<(), sp_runtime::DispatchError> { let quote: Result<[u8; 32], _> = quote.try_into(); match quote {

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⁢=3PD}c3fa!Ousq#mIMJgNSvnf^IAyM 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
s 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