From 8f7b9da62890f11aaec272ff36c5ed373bac3227 Mon Sep 17 00:00:00 2001 From: Buckram Date: Mon, 17 Mar 2025 14:20:16 +0200 Subject: [PATCH 01/10] evm-note bump for ica-client --- framework/Cargo.lock | 1859 ++++++++++++++++- .../contracts/native/ica-client/Cargo.toml | 4 +- 2 files changed, 1776 insertions(+), 87 deletions(-) diff --git a/framework/Cargo.lock b/framework/Cargo.lock index a02af802b..5af4499a6 100644 --- a/framework/Cargo.lock +++ b/framework/Cargo.lock @@ -2,6 +2,16 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + [[package]] name = "abstract-account" version = "0.26.1" @@ -31,7 +41,7 @@ dependencies = [ "cw2", "cw20", "rstest", - "semver", + "semver 1.0.24", "serial_test", "thiserror 1.0.69", "workspace-hack", @@ -88,7 +98,7 @@ dependencies = [ "cw2", "cw20", "rstest", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -145,7 +155,7 @@ dependencies = [ "cw20-base", "env_logger 0.11.6", "rand", - "semver", + "semver 1.0.24", "serde", "thiserror 1.0.69", "workspace-hack", @@ -213,7 +223,7 @@ dependencies = [ "cw-orch 0.27.0", "dotenv", "env_logger 0.11.6", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -240,7 +250,7 @@ dependencies = [ "cw2", "ibc-proto 0.47.1", "prost", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -265,7 +275,7 @@ dependencies = [ "cw-storage-plus", "cw-utils", "cw2", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -284,7 +294,7 @@ dependencies = [ "cw-ownable", "cw20-base", "map-macro", - "polytone-evm", + "polytone-evm 0.1.0", "rstest", "workspace-hack", ] @@ -304,8 +314,8 @@ dependencies = [ "cw-ownable", "cw2", "evm-note", - "polytone-evm", - "semver", + "polytone-evm 0.3.0", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -326,7 +336,7 @@ dependencies = [ "cosmwasm-std", "cw-orch 0.27.0", "cw2", - "semver", + "semver 1.0.24", "workspace-hack", ] @@ -364,7 +374,7 @@ dependencies = [ "log", "rust-embed", "schemars", - "semver", + "semver 1.0.24", "serde", "serde_json", "thiserror 1.0.69", @@ -398,7 +408,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-ownable", "cw2", - "semver", + "semver 1.0.24", "serde-cw-value", "thiserror 1.0.69", "workspace-hack", @@ -499,7 +509,7 @@ dependencies = [ "cw-ownable", "cw-storage-plus", "cw2", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -550,7 +560,7 @@ dependencies = [ "cw-utils", "dotenv", "env_logger 0.11.6", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -572,7 +582,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-storage-plus", "cw2", - "semver", + "semver 1.0.24", "thiserror 1.0.69", "workspace-hack", ] @@ -600,7 +610,7 @@ dependencies = [ "function_name", "rstest", "schemars", - "semver", + "semver 1.0.24", "serde", "sha2 0.10.8", "thiserror 1.0.69", @@ -638,6 +648,17 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + [[package]] name = "ahash" version = "0.8.11" @@ -681,10 +702,39 @@ version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.7.7", "alloy-sol-types", ] +[[package]] +name = "alloy-json-abi" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec80745c33797e8baf547a8cfeb850e60d837fe9b9e67b3f579c1fcd26f527e9" +dependencies = [ + "alloy-primitives 0.8.23", + "alloy-sol-type-parser", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-primitives" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.18", + "hex-literal", + "itoa", + "ruint", + "tiny-keccak", +] + [[package]] name = "alloy-primitives" version = "0.7.7" @@ -701,6 +751,56 @@ dependencies = [ "tiny-keccak", ] +[[package]] +name = "alloy-primitives" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eacedba97e65cdc7ab592f2b22ef5d3ab8d60b2056bc3a6e6363577e8270ec6f" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 2.0.1", + "foldhash", + "getrandom", + "hashbrown 0.15.2", + "indexmap 2.7.0", + "itoa", + "k256", + "keccak-asm", + "paste", + "proptest", + "rand", + "ruint", + "rustc-hash 2.1.1", + "serde", + "sha3", + "tiny-keccak", +] + +[[package]] +name = "alloy-rlp" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" +dependencies = [ + "alloy-rlp-derive", + "arrayvec", + "bytes", +] + +[[package]] +name = "alloy-rlp-derive" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "alloy-sol-macro" version = "0.7.7" @@ -748,13 +848,23 @@ dependencies = [ "syn-solidity", ] +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488a747fdcefeec5c1ed5aa9e08becd775106777fdeae2a35730729fc8a95910" +dependencies = [ + "serde", + "winnow 0.7.4", +] + [[package]] name = "alloy-sol-types" version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.7.7", "alloy-sol-macro", "const-hex", ] @@ -835,6 +945,15 @@ version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +[[package]] +name = "arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +dependencies = [ + "derive_arbitrary", +] + [[package]] name = "arc-swap" version = "1.7.1" @@ -848,9 +967,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488" dependencies = [ "ark-ec", - "ark-ff", - "ark-serialize", - "ark-std", + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", ] [[package]] @@ -859,10 +978,10 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" dependencies = [ - "ark-ff", + "ark-ff 0.4.2", "ark-poly", - "ark-serialize", - "ark-std", + "ark-serialize 0.4.2", + "ark-std 0.4.0", "derivative", "hashbrown 0.13.2", "itertools 0.10.5", @@ -871,16 +990,34 @@ dependencies = [ "zeroize", ] +[[package]] +name = "ark-ff" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" +dependencies = [ + "ark-ff-asm 0.3.0", + "ark-ff-macros 0.3.0", + "ark-serialize 0.3.0", + "ark-std 0.3.0", + "derivative", + "num-bigint", + "num-traits", + "paste", + "rustc_version 0.3.3", + "zeroize", +] + [[package]] name = "ark-ff" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", + "ark-ff-asm 0.4.2", + "ark-ff-macros 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", "derivative", "digest 0.10.7", "itertools 0.10.5", @@ -888,10 +1025,20 @@ dependencies = [ "num-traits", "paste", "rayon", - "rustc_version", + "rustc_version 0.4.1", "zeroize", ] +[[package]] +name = "ark-ff-asm" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" +dependencies = [ + "quote", + "syn 1.0.109", +] + [[package]] name = "ark-ff-asm" version = "0.4.2" @@ -902,6 +1049,18 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "ark-ff-macros" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" +dependencies = [ + "num-bigint", + "num-traits", + "quote", + "syn 1.0.109", +] + [[package]] name = "ark-ff-macros" version = "0.4.2" @@ -921,13 +1080,23 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", "derivative", "hashbrown 0.13.2", ] +[[package]] +name = "ark-serialize" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" +dependencies = [ + "ark-std 0.3.0", + "digest 0.9.0", +] + [[package]] name = "ark-serialize" version = "0.4.2" @@ -935,7 +1104,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ "ark-serialize-derive", - "ark-std", + "ark-std 0.4.0", "digest 0.10.7", "num-bigint", ] @@ -951,6 +1120,16 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "ark-std" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" +dependencies = [ + "num-traits", + "rand", +] + [[package]] name = "ark-std" version = "0.4.0" @@ -980,6 +1159,15 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +[[package]] +name = "ascii-canvas" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" +dependencies = [ + "term", +] + [[package]] name = "async-broadcast" version = "0.7.2" @@ -1053,12 +1241,32 @@ dependencies = [ "tungstenite 0.21.0", ] +[[package]] +name = "atomic" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" +dependencies = [ + "bytemuck", +] + [[package]] name = "atomic-waker" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" +[[package]] +name = "auto_impl" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "autocfg" version = "1.4.0" @@ -1276,6 +1484,21 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + [[package]] name = "bitcoin" version = "0.31.2" @@ -1371,6 +1594,18 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + [[package]] name = "blake2" version = "0.10.6" @@ -1390,7 +1625,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq", + "constant_time_eq 0.3.1", ] [[package]] @@ -1437,12 +1672,24 @@ dependencies = [ "serde", ] +[[package]] +name = "build_const" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7" + [[package]] name = "bumpalo" version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +[[package]] +name = "byte-slice-cast" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" + [[package]] name = "byte-unit" version = "4.0.19" @@ -1453,6 +1700,12 @@ dependencies = [ "utf8-width", ] +[[package]] +name = "bytemuck" +version = "1.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" + [[package]] name = "byteorder" version = "1.5.0" @@ -1468,12 +1721,34 @@ dependencies = [ "serde", ] +[[package]] +name = "bzip2" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" +dependencies = [ + "bzip2-sys", + "libc", +] + +[[package]] +name = "bzip2-sys" +version = "0.1.13+1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" +dependencies = [ + "cc", + "pkg-config", +] + [[package]] name = "cc" version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" dependencies = [ + "jobserver", + "libc", "shlex", ] @@ -1483,6 +1758,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "chrono" version = "0.4.39" @@ -1498,6 +1779,16 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + [[package]] name = "clap" version = "4.5.24" @@ -1585,6 +1876,12 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "constant_time_eq" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" + [[package]] name = "constant_time_eq" version = "0.3.1" @@ -1761,8 +2058,8 @@ checksum = "134e765161d60228cc27635032d2a466542ca83fd6c87f3c87f4963c0bd51008" dependencies = [ "ark-bls12-381", "ark-ec", - "ark-ff", - "ark-serialize", + "ark-ff 0.4.2", + "ark-serialize 0.4.2", "cosmwasm-core", "curve25519-dalek", "digest 0.10.7", @@ -1933,7 +2230,7 @@ dependencies = [ "curve25519-dalek-derive", "digest 0.10.7", "fiat-crypto", - "rustc_version", + "rustc_version 0.4.1", "subtle", "zeroize", ] @@ -2042,6 +2339,27 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "cw-orch" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3302a05c496bac5e909513851106be432f9349fe6ac50acf6efc6c56a3bc9ee4" +dependencies = [ + "anyhow", + "cosmwasm-std", + "cw-orch-contract-derive", + "cw-orch-core", + "cw-orch-fns-derive", + "cw-orch-mock", + "cw-orch-traits 0.24.1", + "cw-utils", + "hex", + "log", + "schemars", + "serde", + "thiserror 1.0.69", +] + [[package]] name = "cw-orch" version = "0.27.0" @@ -2092,7 +2410,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "cw-utils", - "dirs", + "dirs 5.0.1", "log", "serde", "serde_json", @@ -2119,7 +2437,7 @@ dependencies = [ "cw-orch-core", "cw-orch-networks", "cw-orch-traits 0.25.0", - "dirs", + "dirs 5.0.1", "ed25519-dalek", "eyre", "file-lock", @@ -2142,7 +2460,7 @@ dependencies = [ "sha2 0.10.8", "thiserror 1.0.69", "tokio", - "toml", + "toml 0.8.19", "tonic", "uid", ] @@ -2442,7 +2760,7 @@ dependencies = [ "cw1-whitelist", "cw2", "schemars", - "semver", + "semver 1.0.24", "serde", "thiserror 1.0.69", ] @@ -2474,7 +2792,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "schemars", - "semver", + "semver 1.0.24", "serde", "thiserror 1.0.69", ] @@ -2504,7 +2822,7 @@ dependencies = [ "cw2", "cw20", "schemars", - "semver", + "semver 1.0.24", "serde", "thiserror 1.0.69", ] @@ -2523,7 +2841,7 @@ dependencies = [ "cw2", "cw20", "schemars", - "semver", + "semver 1.0.24", "serde", "thiserror 1.0.69", ] @@ -2756,6 +3074,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive_arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -2827,7 +3156,7 @@ dependencies = [ "convert_case 0.4.0", "proc-macro2", "quote", - "rustc_version", + "rustc_version 0.4.1", "syn 2.0.95", ] @@ -2837,7 +3166,16 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -2853,14 +3191,26 @@ dependencies = [ ] [[package]] -name = "destructure_traitobject" -version = "0.2.0" +name = "derive_more-impl" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7" - -[[package]] -name = "dialoguer" -version = "0.11.0" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", + "unicode-xid", +] + +[[package]] +name = "destructure_traitobject" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7" + +[[package]] +name = "dialoguer" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" dependencies = [ @@ -2920,7 +3270,16 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ - "dirs-sys", + "dirs-sys 0.4.1", +] + +[[package]] +name = "dirs" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" +dependencies = [ + "dirs-sys 0.5.0", ] [[package]] @@ -2941,10 +3300,22 @@ checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" dependencies = [ "libc", "option-ext", - "redox_users", + "redox_users 0.4.6", "windows-sys 0.48.0", ] +[[package]] +name = "dirs-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" +dependencies = [ + "libc", + "option-ext", + "redox_users 0.5.0", + "windows-sys 0.59.0", +] + [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -2952,7 +3323,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" dependencies = [ "libc", - "redox_users", + "redox_users 0.4.6", "winapi", ] @@ -3093,6 +3464,15 @@ dependencies = [ "zeroize", ] +[[package]] +name = "ena" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" +dependencies = [ + "log", +] + [[package]] name = "encode_unicode" version = "1.0.0" @@ -3108,6 +3488,17 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enumn" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "env_filter" version = "0.1.3" @@ -3160,6 +3551,132 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "ethabi" +version = "18.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" +dependencies = [ + "ethereum-types", + "hex", + "once_cell", + "regex", + "serde", + "serde_json", + "sha3", + "thiserror 1.0.69", + "uint", +] + +[[package]] +name = "ethbloom" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +dependencies = [ + "crunchy", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "scale-info", + "tiny-keccak", +] + +[[package]] +name = "ethereum-types" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +dependencies = [ + "ethbloom", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "primitive-types", + "scale-info", + "uint", +] + +[[package]] +name = "ethers-core" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" +dependencies = [ + "arrayvec", + "bytes", + "chrono", + "const-hex", + "elliptic-curve", + "ethabi", + "generic-array", + "k256", + "num_enum", + "open-fastrlp", + "rand", + "rlp", + "serde", + "serde_json", + "strum 0.26.3", + "tempfile", + "thiserror 1.0.69", + "tiny-keccak", + "unicode-xid", +] + +[[package]] +name = "ethers-etherscan" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" +dependencies = [ + "chrono", + "ethers-core", + "reqwest 0.11.27", + "semver 1.0.24", + "serde", + "serde_json", + "thiserror 1.0.69", + "tracing", +] + +[[package]] +name = "ethers-solc" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" +dependencies = [ + "cfg-if", + "const-hex", + "dirs 5.0.1", + "dunce", + "ethers-core", + "futures-util", + "glob", + "home", + "md-5", + "num_cpus", + "once_cell", + "path-slash", + "rayon", + "regex", + "semver 1.0.24", + "serde", + "serde_json", + "sha2 0.10.8", + "solang-parser", + "svm-rs 0.3.5", + "svm-rs-builds 0.2.3", + "thiserror 1.0.69", + "tiny-keccak", + "tokio", + "tracing", + "walkdir", + "yansi 0.5.1", +] + [[package]] name = "event-listener" version = "5.4.0" @@ -3183,18 +3700,18 @@ dependencies = [ [[package]] name = "evm-note" -version = "0.1.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1c1e91eb85ae973ea12887356b37a1c363fd4092087c1d235d1e118cebb20c" +checksum = "f2a0ebe6fa972f336da5deee219e4dad5f74f7ccf6161e95dba014c61fdd2ace" dependencies = [ "alloy-sol-types", "cosmwasm-schema", "cosmwasm-std", - "cw-orch 0.25.1", + "cw-orch 0.26.0", "cw-storage-plus", "cw-utils", "cw2", - "polytone-evm", + "polytone-evm 0.3.0", "thiserror 1.0.69", ] @@ -3214,6 +3731,28 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +[[package]] +name = "fastrlp" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + +[[package]] +name = "fastrlp" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + [[package]] name = "ff" version = "0.13.0" @@ -3230,6 +3769,20 @@ version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" +[[package]] +name = "figment" +version = "0.10.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" +dependencies = [ + "atomic", + "pear", + "serde", + "toml 0.8.19", + "uncased", + "version_check", +] + [[package]] name = "file-lock" version = "2.1.11" @@ -3246,9 +3799,18 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ + "byteorder", + "rand", + "rustc-hex", "static_assertions", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.35" @@ -3284,6 +3846,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + [[package]] name = "foreign-types" version = "0.3.2" @@ -3308,6 +3876,159 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "foundry-compilers" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4754b3f3bb924202b29bd7f0584ea1446018926342884c86029a7d56ef1a22c1" +dependencies = [ + "alloy-json-abi", + "alloy-primitives 0.8.23", + "auto_impl", + "derivative", + "dirs 5.0.1", + "dyn-clone", + "foundry-compilers-artifacts", + "foundry-compilers-core", + "home", + "itertools 0.13.0", + "md-5", + "once_cell", + "path-slash", + "rayon", + "semver 1.0.24", + "serde", + "serde_json", + "sha2 0.10.8", + "solang-parser", + "svm-rs 0.5.13", + "svm-rs-builds 0.5.13", + "thiserror 1.0.69", + "tracing", + "winnow 0.6.22", + "yansi 1.0.1", +] + +[[package]] +name = "foundry-compilers-artifacts" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6289da0f17fdb5a0454020dce595502b0abd2a56c15a36d4f6c05bd6c4ff864" +dependencies = [ + "foundry-compilers-artifacts-solc", + "foundry-compilers-artifacts-vyper", +] + +[[package]] +name = "foundry-compilers-artifacts-solc" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf322ab7b726f2bafe9a7e6fb67db02801b35584a2b1d122b4feb52d8e9e7f" +dependencies = [ + "alloy-json-abi", + "alloy-primitives 0.8.23", + "foundry-compilers-core", + "md-5", + "path-slash", + "rayon", + "semver 1.0.24", + "serde", + "serde_json", + "serde_repr", + "thiserror 1.0.69", + "tracing", + "walkdir", + "yansi 1.0.1", +] + +[[package]] +name = "foundry-compilers-artifacts-vyper" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec47f94c7833adfe8049c819d9e31a60c3f440a68cf5baf34c318413d3eb0700" +dependencies = [ + "alloy-json-abi", + "alloy-primitives 0.8.23", + "foundry-compilers-artifacts-solc", + "foundry-compilers-core", + "path-slash", + "semver 1.0.24", + "serde", +] + +[[package]] +name = "foundry-compilers-core" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61971b34545e8ea01502df9d076e811ad3926f27d31adf2641e0c931ca646933" +dependencies = [ + "alloy-primitives 0.8.23", + "cfg-if", + "dunce", + "once_cell", + "path-slash", + "regex", + "semver 1.0.24", + "serde", + "serde_json", + "svm-rs 0.5.13", + "thiserror 1.0.69", + "tokio", + "walkdir", +] + +[[package]] +name = "foundry-config" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a64a9bdad47eb4d950523b8ff14e675db8f2226a2aef79063d9344449b3abd5" +dependencies = [ + "Inflector", + "dirs-next", + "ethers-core", + "ethers-etherscan", + "ethers-solc", + "eyre", + "figment", + "globset", + "number_prefix", + "once_cell", + "open-fastrlp", + "path-slash", + "regex", + "reqwest 0.11.27", + "revm-primitives", + "semver 1.0.24", + "serde", + "serde_json", + "serde_regex", + "thiserror 1.0.69", + "toml 0.7.8", + "toml_edit 0.19.15", + "tracing", + "walkdir", +] + +[[package]] +name = "fs2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "fs4" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c29c30684418547d476f0b48e84f4821639119c483b1eccd566c8cd0cd05f521" +dependencies = [ + "rustix", + "windows-sys 0.52.0", +] + [[package]] name = "function_name" version = "0.3.0" @@ -3323,6 +4044,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "673464e1e314dd67a0fd9544abc99e8eb28d0c7e3b69b033bcff9b2d00b87333" +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "futures" version = "0.3.31" @@ -3461,6 +4188,12 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +[[package]] +name = "glob" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" + [[package]] name = "globset" version = "0.4.15" @@ -3559,6 +4292,10 @@ name = "hashbrown" version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "foldhash", + "serde", +] [[package]] name = "hashlink" @@ -3614,6 +4351,12 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + [[package]] name = "hermit-abi" version = "0.4.0" @@ -3625,6 +4368,9 @@ name = "hex" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] [[package]] name = "hex-conservative" @@ -3851,6 +4597,7 @@ dependencies = [ "tokio", "tokio-rustls 0.26.1", "tower-service", + "webpki-roots 0.26.8", ] [[package]] @@ -4021,13 +4768,13 @@ dependencies = [ "retry", "ripemd", "secp256k1 0.28.2", - "semver", + "semver 1.0.24", "serde", "serde_derive", "serde_json", "sha2 0.10.8", "signature", - "strum", + "strum 0.25.0", "subtle-encoding", "tendermint 0.40.1", "tendermint-light-client", @@ -4040,7 +4787,7 @@ dependencies = [ "tiny-keccak", "tokio", "tokio-stream", - "toml", + "toml 0.8.19", "tonic", "tracing", "tracing-subscriber", @@ -4260,6 +5007,24 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + [[package]] name = "impl-serde" version = "0.4.0" @@ -4269,6 +5034,17 @@ dependencies = [ "serde", ] +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "indenter" version = "0.3.3" @@ -4293,6 +5069,7 @@ checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown 0.15.2", + "serde", ] [[package]] @@ -4305,6 +5082,21 @@ dependencies = [ "serde", ] +[[package]] +name = "inlinable_string" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" + +[[package]] +name = "inout" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" +dependencies = [ + "generic-array", +] + [[package]] name = "insta" version = "1.42.0" @@ -4339,7 +5131,7 @@ version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" dependencies = [ - "hermit-abi", + "hermit-abi 0.4.0", "libc", "windows-sys 0.52.0", ] @@ -4359,6 +5151,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.13.0" @@ -4374,6 +5175,15 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +[[package]] +name = "jobserver" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" +dependencies = [ + "libc", +] + [[package]] name = "js-sys" version = "0.3.76" @@ -4431,6 +5241,7 @@ dependencies = [ "cfg-if", "ecdsa", "elliptic-curve", + "once_cell", "sha2 0.10.8", ] @@ -4456,6 +5267,16 @@ dependencies = [ "cpufeatures", ] +[[package]] +name = "keccak-asm" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" +dependencies = [ + "digest 0.10.7", + "sha3-asm", +] + [[package]] name = "kube" version = "0.93.1" @@ -4567,6 +5388,36 @@ dependencies = [ "tracing", ] +[[package]] +name = "lalrpop" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" +dependencies = [ + "ascii-canvas", + "bit-set", + "ena", + "itertools 0.11.0", + "lalrpop-util", + "petgraph", + "regex", + "regex-syntax 0.8.5", + "string_cache", + "term", + "tiny-keccak", + "unicode-xid", + "walkdir", +] + +[[package]] +name = "lalrpop-util" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" +dependencies = [ + "regex-automata 0.4.9", +] + [[package]] name = "lazy_static" version = "1.5.0" @@ -4635,6 +5486,12 @@ dependencies = [ "scopeguard", ] +[[package]] +name = "lockfree-object-pool" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" + [[package]] name = "log" version = "0.4.22" @@ -4712,6 +5569,16 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + [[package]] name = "memchr" version = "2.7.4" @@ -4756,7 +5623,7 @@ dependencies = [ "loom", "parking_lot", "portable-atomic", - "rustc_version", + "rustc_version 0.4.1", "smallvec", "tagptr", "thiserror 1.0.69", @@ -4780,6 +5647,12 @@ dependencies = [ "tempfile", ] +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -4889,6 +5762,43 @@ dependencies = [ "libm", ] +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi 0.3.9", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "number_prefix" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + [[package]] name = "object" version = "0.36.7" @@ -4910,6 +5820,31 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "open-fastrlp" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", + "ethereum-types", + "open-fastrlp-derive", +] + +[[package]] +name = "open-fastrlp-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" +dependencies = [ + "bytes", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "openssl" version = "0.10.68" @@ -5036,13 +5971,39 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" name = "p256" version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "serdect", + "sha2 0.10.8", +] + +[[package]] +name = "parity-scale-codec" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +dependencies = [ + "arrayvec", + "bitvec", + "byte-slice-cast", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "serdect", - "sha2 0.10.8", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -5074,12 +6035,29 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "password-hash" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" +dependencies = [ + "base64ct", + "rand_core", + "subtle", +] + [[package]] name = "paste" version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "path-slash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" + [[package]] name = "pbkdf2" version = "0.11.0" @@ -5087,6 +6065,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" dependencies = [ "digest 0.10.7", + "hmac", + "password-hash", + "sha2 0.10.8", ] [[package]] @@ -5099,6 +6080,29 @@ dependencies = [ "hmac", ] +[[package]] +name = "pear" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" +dependencies = [ + "inlinable_string", + "pear_codegen", + "yansi 1.0.1", +] + +[[package]] +name = "pear_codegen" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" +dependencies = [ + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.95", +] + [[package]] name = "peg" version = "0.8.4" @@ -5196,6 +6200,58 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.7.0", +] + +[[package]] +name = "phf" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +dependencies = [ + "phf_macros", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +dependencies = [ + "phf_shared", + "rand", +] + +[[package]] +name = "phf_macros" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +dependencies = [ + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher", +] + [[package]] name = "pin-project" version = "1.1.8" @@ -5270,6 +6326,23 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "polytone-evm" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd8851821a4310ae804737d083659cc900e226006068d67b35eaa6ae2fe36b7c" +dependencies = [ + "alloy", + "alloy-sol-types", + "cosmwasm-schema", + "cosmwasm-std", + "cw-asset", + "cw-storage-plus", + "foundry-compilers", + "foundry-config", + "thiserror 1.0.69", +] + [[package]] name = "portable-atomic" version = "1.10.0" @@ -5291,6 +6364,12 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + [[package]] name = "primeorder" version = "0.13.6" @@ -5308,10 +6387,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", + "impl-codec", + "impl-rlp", "impl-serde", + "scale-info", "uint", ] +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit 0.22.22", +] + [[package]] name = "proc-macro-error" version = "1.0.4" @@ -5345,6 +6436,19 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", + "version_check", + "yansi 1.0.1", +] + [[package]] name = "prometheus" version = "0.13.4" @@ -5366,11 +6470,17 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ + "bit-set", + "bit-vec", "bitflags 2.6.0", + "lazy_static", "num-traits", "rand", "rand_chacha", "rand_xorshift", + "regex-syntax 0.8.5", + "rusty-fork", + "tempfile", "unarray", ] @@ -5412,6 +6522,64 @@ version = "2.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quinn" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.1.1", + "rustls 0.23.20", + "socket2", + "thiserror 2.0.10", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" +dependencies = [ + "bytes", + "getrandom", + "rand", + "ring", + "rustc-hash 2.1.1", + "rustls 0.23.20", + "rustls-pki-types", + "slab", + "thiserror 2.0.10", + "tinyvec", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-udp" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.59.0", +] + [[package]] name = "quote" version = "1.0.38" @@ -5421,6 +6589,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "rand" version = "0.8.5" @@ -5430,6 +6604,7 @@ dependencies = [ "libc", "rand_chacha", "rand_core", + "serde", ] [[package]] @@ -5500,6 +6675,17 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "redox_users" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b" +dependencies = [ + "getrandom", + "libredox", + "thiserror 2.0.10", +] + [[package]] name = "regex" version = "1.11.1" @@ -5582,6 +6768,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots 0.25.4", "winreg", ] @@ -5594,6 +6781,7 @@ dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", + "futures-channel", "futures-core", "futures-util", "h2 0.4.7", @@ -5612,7 +6800,11 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "quinn", + "rustls 0.23.20", + "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", + "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", @@ -5620,12 +6812,15 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", + "tokio-rustls 0.26.1", + "tokio-socks", "tower 0.5.2", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots 0.26.8", "windows-registry", ] @@ -5635,6 +6830,22 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" +[[package]] +name = "revm-primitives" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51187b852d9e458816a2e19c81f1dd6c924077e1a8fccd16e4f044f865f299d7" +dependencies = [ + "alloy-primitives 0.4.2", + "alloy-rlp", + "auto_impl", + "bitflags 2.6.0", + "bitvec", + "enumn", + "hashbrown 0.14.5", + "hex", +] + [[package]] name = "rfc6979" version = "0.4.0" @@ -5669,6 +6880,28 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rlp-derive", + "rustc-hex", +] + +[[package]] +name = "rlp-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "rmp" version = "0.8.14" @@ -5720,7 +6953,7 @@ dependencies = [ "futures", "futures-timer", "rstest_macros", - "rustc_version", + "rustc_version 0.4.1", ] [[package]] @@ -5732,7 +6965,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "rustc_version", + "rustc_version 0.4.1", "syn 1.0.109", "unicode-ident", ] @@ -5743,8 +6976,20 @@ version = "1.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" dependencies = [ + "alloy-rlp", + "ark-ff 0.3.0", + "ark-ff 0.4.2", + "bytes", + "fastrlp 0.3.1", + "fastrlp 0.4.0", + "num-bigint", + "num-integer", + "num-traits", + "parity-scale-codec", + "primitive-types", "proptest", "rand", + "rlp", "ruint-macro", "serde", "valuable", @@ -5804,13 +7049,37 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hash" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +dependencies = [ + "rand", +] + +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + +[[package]] +name = "rustc_version" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +dependencies = [ + "semver 0.11.0", +] + [[package]] name = "rustc_version" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver", + "semver 1.0.24", ] [[package]] @@ -5927,6 +7196,9 @@ name = "rustls-pki-types" version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" +dependencies = [ + "web-time", +] [[package]] name = "rustls-webpki" @@ -5955,6 +7227,18 @@ version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +[[package]] +name = "rusty-fork" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +dependencies = [ + "fnv", + "quick-error", + "tempfile", + "wait-timeout", +] + [[package]] name = "ryu" version = "1.0.18" @@ -5980,6 +7264,30 @@ dependencies = [ "regex", ] +[[package]] +name = "scale-info" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" +dependencies = [ + "cfg-if", + "derive_more 1.0.0", + "parity-scale-codec", + "scale-info-derive", +] + +[[package]] +name = "scale-info-derive" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "scc" version = "2.3.0" @@ -6151,13 +7459,31 @@ dependencies = [ "libc", ] +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser", +] + [[package]] name = "semver" version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +dependencies = [ + "serde", +] + +[[package]] +name = "semver-parser" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2" dependencies = [ - "serde", + "pest", ] [[package]] @@ -6260,6 +7586,16 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_regex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf" +dependencies = [ + "regex", + "serde", +] + [[package]] name = "serde_repr" version = "0.1.19" @@ -6385,6 +7721,16 @@ dependencies = [ "keccak", ] +[[package]] +name = "sha3-asm" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" +dependencies = [ + "cc", + "cfg-if", +] + [[package]] name = "sharded-slab" version = "0.1.7" @@ -6425,12 +7771,24 @@ dependencies = [ "rand_core", ] +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + [[package]] name = "similar" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +[[package]] +name = "siphasher" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" + [[package]] name = "slab" version = "0.4.9" @@ -6456,6 +7814,20 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "solang-parser" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" +dependencies = [ + "itertools 0.11.0", + "lalrpop", + "lalrpop-util", + "phf", + "thiserror 1.0.69", + "unicode-xid", +] + [[package]] name = "speculoos" version = "0.11.0" @@ -6493,6 +7865,18 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "string_cache" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "938d512196766101d333398efde81bc1f37b00cb42c2f8350e5df639f040bbbe" +dependencies = [ + "new_debug_unreachable", + "parking_lot", + "phf_shared", + "precomputed-hash", +] + [[package]] name = "strsim" version = "0.10.0" @@ -6511,7 +7895,16 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" dependencies = [ - "strum_macros", + "strum_macros 0.25.3", +] + +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", ] [[package]] @@ -6527,6 +7920,19 @@ dependencies = [ "syn 2.0.95", ] +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.95", +] + [[package]] name = "subtle" version = "2.6.1" @@ -6548,6 +7954,72 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" +[[package]] +name = "svm-rs" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" +dependencies = [ + "dirs 5.0.1", + "fs2", + "hex", + "once_cell", + "reqwest 0.11.27", + "semver 1.0.24", + "serde", + "serde_json", + "sha2 0.10.8", + "thiserror 1.0.69", + "url", + "zip 0.6.6", +] + +[[package]] +name = "svm-rs" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a30a58b94c1ddc5f07a428d16e58e8f4c7cee9e67130cda12ed148f5ef98fff" +dependencies = [ + "const-hex", + "dirs 6.0.0", + "fs4", + "reqwest 0.12.12", + "semver 1.0.24", + "serde", + "serde_json", + "sha2 0.10.8", + "tempfile", + "thiserror 2.0.10", + "url", + "zip 2.3.0", +] + +[[package]] +name = "svm-rs-builds" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa64b5e8eecd3a8af7cfc311e29db31a268a62d5953233d3e8243ec77a71c4e3" +dependencies = [ + "build_const", + "hex", + "semver 1.0.24", + "serde_json", + "svm-rs 0.3.5", +] + +[[package]] +name = "svm-rs-builds" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebddc0ea9fd9fb61d0de9585a99c58f87e8c14b8811726a57cc5f5b1a029585e" +dependencies = [ + "build_const", + "const-hex", + "semver 1.0.24", + "serde_json", + "svm-rs 0.5.13", +] + [[package]] name = "syn" version = "1.0.109" @@ -6656,6 +8128,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + [[package]] name = "tempfile" version = "3.15.0" @@ -6740,7 +8218,7 @@ dependencies = [ "serde", "serde_json", "tendermint 0.39.1", - "toml", + "toml 0.8.19", "url", ] @@ -6754,7 +8232,7 @@ dependencies = [ "serde", "serde_json", "tendermint 0.40.1", - "toml", + "toml 0.8.19", "url", ] @@ -6880,7 +8358,7 @@ dependencies = [ "pin-project", "rand", "reqwest 0.11.27", - "semver", + "semver 1.0.24", "serde", "serde_bytes", "serde_json", @@ -6914,7 +8392,7 @@ dependencies = [ "pin-project", "rand", "reqwest 0.11.27", - "semver", + "semver 1.0.24", "serde", "serde_bytes", "serde_json", @@ -6932,6 +8410,17 @@ dependencies = [ "walkdir", ] +[[package]] +name = "term" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" +dependencies = [ + "dirs-next", + "rustversion", + "winapi", +] + [[package]] name = "termcolor" version = "1.4.1" @@ -7042,7 +8531,7 @@ dependencies = [ "once_cell", "pbkdf2 0.11.0", "rand", - "rustc-hash", + "rustc-hash 1.1.0", "sha2 0.10.8", "thiserror 1.0.69", "unicode-normalization", @@ -7154,6 +8643,18 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-socks" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d4770b8024672c1101b3f6733eab95b18007dbe0847a8afe341fcf79e06043f" +dependencies = [ + "either", + "futures-util", + "thiserror 1.0.69", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.17" @@ -7191,6 +8692,19 @@ dependencies = [ "tokio", ] +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "indexmap 2.7.0", + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + [[package]] name = "toml" version = "0.8.19" @@ -7200,7 +8714,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit", + "toml_edit 0.22.22", ] [[package]] @@ -7212,6 +8726,19 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.7.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.5.40", +] + [[package]] name = "toml_edit" version = "0.22.22" @@ -7222,7 +8749,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow", + "winnow 0.6.22", ] [[package]] @@ -7489,6 +9016,15 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" +[[package]] +name = "uncased" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" +dependencies = [ + "version_check", +] + [[package]] name = "unicode-ident" version = "1.0.14" @@ -7617,6 +9153,15 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "wait-timeout" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" +dependencies = [ + "libc", +] + [[package]] name = "walkdir" version = "2.5.0" @@ -7719,6 +9264,31 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" + +[[package]] +name = "webpki-roots" +version = "0.26.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "winapi" version = "0.3.9" @@ -7982,6 +9552,15 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + [[package]] name = "winnow" version = "0.6.22" @@ -7991,6 +9570,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e97b544156e9bebe1a0ffbc03484fc1ffe3100cbce3ffb17eac35f7cdd7ab36" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -8078,7 +9666,7 @@ dependencies = [ "reqwest 0.12.12", "ripemd", "sec1", - "semver", + "semver 1.0.24", "serde", "serde_json", "sha2 0.10.8", @@ -8113,6 +9701,15 @@ version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + [[package]] name = "xion-account" version = "0.1.1" @@ -8162,6 +9759,18 @@ dependencies = [ "hashlink", ] +[[package]] +name = "yansi" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + [[package]] name = "yoke" version = "0.7.5" @@ -8269,3 +9878,83 @@ dependencies = [ "quote", "syn 2.0.95", ] + +[[package]] +name = "zip" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" +dependencies = [ + "aes", + "byteorder", + "bzip2", + "constant_time_eq 0.1.5", + "crc32fast", + "crossbeam-utils", + "flate2", + "hmac", + "pbkdf2 0.11.0", + "sha1", + "time", + "zstd", +] + +[[package]] +name = "zip" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84e9a772a54b54236b9b744aaaf8d7be01b4d6e99725523cb82cb32d1c81b1d7" +dependencies = [ + "arbitrary", + "crc32fast", + "crossbeam-utils", + "displaydoc", + "flate2", + "indexmap 2.7.0", + "memchr", + "thiserror 2.0.10", + "zopfli", +] + +[[package]] +name = "zopfli" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946" +dependencies = [ + "bumpalo", + "crc32fast", + "lockfree-object-pool", + "log", + "once_cell", + "simd-adler32", +] + +[[package]] +name = "zstd" +version = "0.11.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "5.0.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +dependencies = [ + "libc", + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.14+zstd.1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/framework/contracts/native/ica-client/Cargo.toml b/framework/contracts/native/ica-client/Cargo.toml index 0a47e8bad..5cc806961 100644 --- a/framework/contracts/native/ica-client/Cargo.toml +++ b/framework/contracts/native/ica-client/Cargo.toml @@ -30,8 +30,8 @@ cw2 = { workspace = true } semver = { workspace = true } thiserror = { workspace = true } -evm-note = { version = "0.1.0", features = ["library"] } -polytone-evm = "0.1.0" +evm-note = { version = "0.3.0", features = ["library"] } +polytone-evm = "0.3.0" [target.'cfg(not(target_arch = "wasm32"))'.dependencies] workspace-hack = { version = "0.1", path = "../../../workspace-hack" } From 1104603ad4eff00713e1cc578f1b5fdcd04f4e25 Mon Sep 17 00:00:00 2001 From: Buckram Date: Fri, 18 Apr 2025 17:30:52 +0300 Subject: [PATCH 02/10] update everything --- framework/Cargo.lock | 2271 +++++------------ .../contracts/native/ica-client/Cargo.toml | 4 +- framework/packages/abstract-ica/Cargo.toml | 2 +- framework/rust-toolchain.toml | 2 + integrations/Cargo.lock | 105 +- interchain/Cargo.lock | 109 +- interchain/scripts/state.json | 24 + modules/Cargo.lock | 105 +- 8 files changed, 831 insertions(+), 1791 deletions(-) create mode 100644 framework/rust-toolchain.toml diff --git a/framework/Cargo.lock b/framework/Cargo.lock index 5af4499a6..8ce119dd2 100644 --- a/framework/Cargo.lock +++ b/framework/Cargo.lock @@ -41,7 +41,7 @@ dependencies = [ "cw2", "cw20", "rstest", - "semver 1.0.24", + "semver", "serial_test", "thiserror 1.0.69", "workspace-hack", @@ -98,7 +98,7 @@ dependencies = [ "cw2", "cw20", "rstest", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -155,7 +155,7 @@ dependencies = [ "cw20-base", "env_logger 0.11.6", "rand", - "semver 1.0.24", + "semver", "serde", "thiserror 1.0.69", "workspace-hack", @@ -177,7 +177,7 @@ dependencies = [ "hex", "itertools 0.13.0", "log", - "prost", + "prost 0.13.4", "schemars", "serde", "serde_json", @@ -223,7 +223,7 @@ dependencies = [ "cw-orch 0.27.0", "dotenv", "env_logger 0.11.6", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -249,8 +249,8 @@ dependencies = [ "cw-utils", "cw2", "ibc-proto 0.47.1", - "prost", - "semver 1.0.24", + "prost 0.13.4", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -275,7 +275,7 @@ dependencies = [ "cw-storage-plus", "cw-utils", "cw2", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -294,7 +294,7 @@ dependencies = [ "cw-ownable", "cw20-base", "map-macro", - "polytone-evm 0.1.0", + "polytone-evm", "rstest", "workspace-hack", ] @@ -314,8 +314,8 @@ dependencies = [ "cw-ownable", "cw2", "evm-note", - "polytone-evm 0.3.0", - "semver 1.0.24", + "polytone-evm", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -336,7 +336,7 @@ dependencies = [ "cosmwasm-std", "cw-orch 0.27.0", "cw2", - "semver 1.0.24", + "semver", "workspace-hack", ] @@ -374,7 +374,7 @@ dependencies = [ "log", "rust-embed", "schemars", - "semver 1.0.24", + "semver", "serde", "serde_json", "thiserror 1.0.69", @@ -408,7 +408,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-ownable", "cw2", - "semver 1.0.24", + "semver", "serde-cw-value", "thiserror 1.0.69", "workspace-hack", @@ -509,7 +509,7 @@ dependencies = [ "cw-ownable", "cw-storage-plus", "cw2", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -560,7 +560,7 @@ dependencies = [ "cw-utils", "dotenv", "env_logger 0.11.6", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -582,7 +582,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-storage-plus", "cw2", - "semver 1.0.24", + "semver", "thiserror 1.0.69", "workspace-hack", ] @@ -610,7 +610,7 @@ dependencies = [ "function_name", "rstest", "schemars", - "semver 1.0.24", + "semver", "serde", "sha2 0.10.8", "thiserror 1.0.69", @@ -648,17 +648,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - [[package]] name = "ahash" version = "0.8.11" @@ -689,66 +678,20 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.2.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ "alloy-core", ] [[package]] name = "alloy-core" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" -dependencies = [ - "alloy-primitives 0.7.7", - "alloy-sol-types", -] - -[[package]] -name = "alloy-json-abi" version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec80745c33797e8baf547a8cfeb850e60d837fe9b9e67b3f579c1fcd26f527e9" -dependencies = [ - "alloy-primitives 0.8.23", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-primitives" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" -dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if", - "const-hex", - "derive_more 0.99.18", - "hex-literal", - "itoa", - "ruint", - "tiny-keccak", -] - -[[package]] -name = "alloy-primitives" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" +checksum = "ca1380cc3c81b83d5234865779494970c83b5893b423c59cdd68c3cd1ed0b671" dependencies = [ - "bytes", - "cfg-if", - "const-hex", - "derive_more 0.99.18", - "hex-literal", - "itoa", - "ruint", - "tiny-keccak", + "alloy-primitives", ] [[package]] @@ -757,59 +700,25 @@ version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eacedba97e65cdc7ab592f2b22ef5d3ab8d60b2056bc3a6e6363577e8270ec6f" dependencies = [ - "alloy-rlp", "bytes", "cfg-if", "const-hex", "derive_more 2.0.1", - "foldhash", - "getrandom", - "hashbrown 0.15.2", - "indexmap 2.7.0", "itoa", - "k256", - "keccak-asm", "paste", - "proptest", - "rand", "ruint", - "rustc-hash 2.1.1", - "serde", - "sha3", "tiny-keccak", ] -[[package]] -name = "alloy-rlp" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" -dependencies = [ - "alloy-rlp-derive", - "arrayvec", - "bytes", -] - -[[package]] -name = "alloy-rlp-derive" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.95", -] - [[package]] name = "alloy-sol-macro" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.95", @@ -817,15 +726,15 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", "indexmap 2.7.0", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.95", @@ -835,9 +744,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", @@ -848,23 +757,13 @@ dependencies = [ "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488a747fdcefeec5c1ed5aa9e08becd775106777fdeae2a35730729fc8a95910" -dependencies = [ - "serde", - "winnow 0.7.4", -] - [[package]] name = "alloy-sol-types" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ - "alloy-primitives 0.7.7", + "alloy-primitives", "alloy-sol-macro", "const-hex", ] @@ -945,15 +844,6 @@ version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" -[[package]] -name = "arbitrary" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -dependencies = [ - "derive_arbitrary", -] - [[package]] name = "arc-swap" version = "1.7.1" @@ -967,9 +857,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488" dependencies = [ "ark-ec", - "ark-ff 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", + "ark-ff", + "ark-serialize", + "ark-std", ] [[package]] @@ -978,10 +868,10 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" dependencies = [ - "ark-ff 0.4.2", + "ark-ff", "ark-poly", - "ark-serialize 0.4.2", - "ark-std 0.4.0", + "ark-serialize", + "ark-std", "derivative", "hashbrown 0.13.2", "itertools 0.10.5", @@ -990,34 +880,16 @@ dependencies = [ "zeroize", ] -[[package]] -name = "ark-ff" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" -dependencies = [ - "ark-ff-asm 0.3.0", - "ark-ff-macros 0.3.0", - "ark-serialize 0.3.0", - "ark-std 0.3.0", - "derivative", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.3.3", - "zeroize", -] - [[package]] name = "ark-ff" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" dependencies = [ - "ark-ff-asm 0.4.2", - "ark-ff-macros 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", + "ark-ff-asm", + "ark-ff-macros", + "ark-serialize", + "ark-std", "derivative", "digest 0.10.7", "itertools 0.10.5", @@ -1025,20 +897,10 @@ dependencies = [ "num-traits", "paste", "rayon", - "rustc_version 0.4.1", + "rustc_version", "zeroize", ] -[[package]] -name = "ark-ff-asm" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" -dependencies = [ - "quote", - "syn 1.0.109", -] - [[package]] name = "ark-ff-asm" version = "0.4.2" @@ -1049,18 +911,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "ark-ff-macros" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" -dependencies = [ - "num-bigint", - "num-traits", - "quote", - "syn 1.0.109", -] - [[package]] name = "ark-ff-macros" version = "0.4.2" @@ -1080,23 +930,13 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" dependencies = [ - "ark-ff 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", + "ark-ff", + "ark-serialize", + "ark-std", "derivative", "hashbrown 0.13.2", ] -[[package]] -name = "ark-serialize" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" -dependencies = [ - "ark-std 0.3.0", - "digest 0.9.0", -] - [[package]] name = "ark-serialize" version = "0.4.2" @@ -1104,7 +944,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ "ark-serialize-derive", - "ark-std 0.4.0", + "ark-std", "digest 0.10.7", "num-bigint", ] @@ -1120,16 +960,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "ark-std" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" -dependencies = [ - "num-traits", - "rand", -] - [[package]] name = "ark-std" version = "0.4.0" @@ -1159,15 +989,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -[[package]] -name = "ascii-canvas" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" -dependencies = [ - "term", -] - [[package]] name = "async-broadcast" version = "0.7.2" @@ -1241,32 +1062,12 @@ dependencies = [ "tungstenite 0.21.0", ] -[[package]] -name = "atomic" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" -dependencies = [ - "bytemuck", -] - [[package]] name = "atomic-waker" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" -[[package]] -name = "auto_impl" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.95", -] - [[package]] name = "autocfg" version = "1.4.0" @@ -1435,6 +1236,16 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +[[package]] +name = "bcs" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b6598a2f5d564fb7855dc6b06fd1c38cff5a72bd8b863a4d021938497b440a" +dependencies = [ + "serde", + "thiserror 1.0.69", +] + [[package]] name = "bech32" version = "0.9.1" @@ -1459,7 +1270,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" dependencies = [ - "bs58", + "bs58 0.5.1", "hmac", "k256", "once_cell", @@ -1484,21 +1295,6 @@ dependencies = [ "unicode-normalization", ] -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - [[package]] name = "bitcoin" version = "0.31.2" @@ -1615,6 +1411,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "blake2b_simd" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +dependencies = [ + "arrayref", + "arrayvec", + "constant_time_eq", +] + [[package]] name = "blake3" version = "1.5.5" @@ -1625,7 +1432,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq 0.3.1", + "constant_time_eq", ] [[package]] @@ -1652,6 +1459,12 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e31ea183f6ee62ac8b8a8cf7feddd766317adfb13ff469de57ce033efd6a790" +[[package]] +name = "bs58" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" + [[package]] name = "bs58" version = "0.5.1" @@ -1672,24 +1485,12 @@ dependencies = [ "serde", ] -[[package]] -name = "build_const" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7" - [[package]] name = "bumpalo" version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" -[[package]] -name = "byte-slice-cast" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" - [[package]] name = "byte-unit" version = "4.0.19" @@ -1700,12 +1501,6 @@ dependencies = [ "utf8-width", ] -[[package]] -name = "bytemuck" -version = "1.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" - [[package]] name = "byteorder" version = "1.5.0" @@ -1722,34 +1517,21 @@ dependencies = [ ] [[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" +name = "cc" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" +checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" dependencies = [ - "cc", - "pkg-config", + "shlex", ] [[package]] -name = "cc" -version = "1.2.7" +name = "cfg-expr" +version = "0.15.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" dependencies = [ - "jobserver", - "libc", - "shlex", + "smallvec", ] [[package]] @@ -1758,12 +1540,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - [[package]] name = "chrono" version = "0.4.39" @@ -1779,16 +1555,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "cipher" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", -] - [[package]] name = "clap" version = "4.5.24" @@ -1835,6 +1601,12 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1844,6 +1616,14 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "consensus-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "serde_json", +] + [[package]] name = "console" version = "0.15.10" @@ -1877,10 +1657,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] -name = "constant_time_eq" -version = "0.1.5" +name = "const-random" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359" +dependencies = [ + "const-random-macro", +] + +[[package]] +name = "const-random-macro" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" +dependencies = [ + "getrandom", + "once_cell", + "tiny-keccak", +] [[package]] name = "constant_time_eq" @@ -1899,12 +1693,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - [[package]] name = "convert_case" version = "0.6.0" @@ -1945,7 +1733,7 @@ name = "cosmos-sdk-proto" version = "0.24.0-pre" source = "git+https://github.com/CyberHoward/cosmos-rust.git?branch=patch-1#2350dd516aaeb64907a7d6d13782c24483221bb1" dependencies = [ - "prost", + "prost 0.13.4", "tendermint-proto 0.39.1", ] @@ -1955,7 +1743,7 @@ version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d0afc4daf81936e6ef5a2cf76f00c913ba5bc385d58ae1e09644e25d16b0381" dependencies = [ - "prost", + "prost 0.13.4", "tendermint-proto 0.39.1", "tonic", ] @@ -1966,7 +1754,7 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8ce7f4797cdf5cd18be6555ff3f0a8d37023c2d60f3b2708895d601b85c1c46" dependencies = [ - "prost", + "prost 0.13.4", "tendermint-proto 0.39.1", ] @@ -1977,7 +1765,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "462e1f6a8e005acc8835d32d60cbd7973ed65ea2a8d8473830e675f050956427" dependencies = [ "informalsystems-pbjson", - "prost", + "prost 0.13.4", "serde", "tendermint-proto 0.40.1", "tonic", @@ -2058,8 +1846,8 @@ checksum = "134e765161d60228cc27635032d2a466542ca83fd6c87f3c87f4963c0bd51008" dependencies = [ "ark-bls12-381", "ark-ec", - "ark-ff 0.4.2", - "ark-serialize 0.4.2", + "ark-ff", + "ark-serialize", "cosmwasm-core", "curve25519-dalek", "digest 0.10.7", @@ -2129,7 +1917,7 @@ dependencies = [ "serde", "serde-json-wasm", "sha2 0.10.8", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 1.0.69", ] @@ -2230,7 +2018,7 @@ dependencies = [ "curve25519-dalek-derive", "digest 0.10.7", "fiat-crypto", - "rustc_version 0.4.1", + "rustc_version", "subtle", "zeroize", ] @@ -2341,33 +2129,12 @@ dependencies = [ [[package]] name = "cw-orch" -version = "0.26.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3302a05c496bac5e909513851106be432f9349fe6ac50acf6efc6c56a3bc9ee4" +checksum = "8970af7113824ab8d82f0a0d12f92b41d85410f3b7651425989ffa55d517708b" dependencies = [ "anyhow", - "cosmwasm-std", - "cw-orch-contract-derive", - "cw-orch-core", - "cw-orch-fns-derive", - "cw-orch-mock", - "cw-orch-traits 0.24.1", - "cw-utils", - "hex", - "log", - "schemars", - "serde", - "thiserror 1.0.69", -] - -[[package]] -name = "cw-orch" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8970af7113824ab8d82f0a0d12f92b41d85410f3b7651425989ffa55d517708b" -dependencies = [ - "anyhow", - "cosmrs 0.19.0", + "cosmrs 0.19.0", "cosmwasm-std", "cw-orch-contract-derive", "cw-orch-core", @@ -2393,7 +2160,7 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ - "convert_case 0.6.0", + "convert_case", "quote", "syn 2.0.95", ] @@ -2410,7 +2177,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "cw-utils", - "dirs 5.0.1", + "dirs", "log", "serde", "serde_json", @@ -2437,7 +2204,7 @@ dependencies = [ "cw-orch-core", "cw-orch-networks", "cw-orch-traits 0.25.0", - "dirs 5.0.1", + "dirs", "ed25519-dalek", "eyre", "file-lock", @@ -2448,8 +2215,8 @@ dependencies = [ "libc-print", "log", "once_cell", - "prost", - "prost-types", + "prost 0.13.4", + "prost-types 0.13.4", "rand_core", "reqwest 0.12.12", "ring", @@ -2460,7 +2227,7 @@ dependencies = [ "sha2 0.10.8", "thiserror 1.0.69", "tokio", - "toml 0.8.19", + "toml", "tonic", "uid", ] @@ -2471,7 +2238,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "194e944e6bcb51a53f99e2b0a510ecc8919605b9a83d93641748cf1b163315f6" dependencies = [ - "convert_case 0.6.0", + "convert_case", "proc-macro2", "quote", "syn 2.0.95", @@ -2520,7 +2287,7 @@ dependencies = [ "futures", "ibc-relayer-types", "log", - "prost", + "prost 0.13.4", "serde", "serde_json", "thiserror 1.0.69", @@ -2633,8 +2400,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "563311d320c9bdbb2287892a70d54102381a2265c75b65086236c7d85cd7dd87" dependencies = [ "cw-orch-core", - "prost", - "prost-types", + "prost 0.13.4", + "prost-types 0.13.4", ] [[package]] @@ -2644,7 +2411,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ccb1670cc49a7a10c425ba1072cb607eb00d8085f97692877b9bdb00d14dd3d" dependencies = [ "cw-orch-core", - "prost-types", + "prost-types 0.13.4", ] [[package]] @@ -2760,7 +2527,7 @@ dependencies = [ "cw1-whitelist", "cw2", "schemars", - "semver 1.0.24", + "semver", "serde", "thiserror 1.0.69", ] @@ -2792,7 +2559,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "schemars", - "semver 1.0.24", + "semver", "serde", "thiserror 1.0.69", ] @@ -2822,7 +2589,7 @@ dependencies = [ "cw2", "cw20", "schemars", - "semver 1.0.24", + "semver", "serde", "thiserror 1.0.69", ] @@ -2841,7 +2608,7 @@ dependencies = [ "cw2", "cw20", "schemars", - "semver 1.0.24", + "semver", "serde", "thiserror 1.0.69", ] @@ -3075,10 +2842,10 @@ dependencies = [ ] [[package]] -name = "derive_arbitrary" -version = "1.4.1" +name = "derive-syn-parse" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" dependencies = [ "proc-macro2", "quote", @@ -3153,10 +2920,8 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case 0.4.0", "proc-macro2", "quote", - "rustc_version 0.4.1", "syn 2.0.95", ] @@ -3270,16 +3035,7 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ - "dirs-sys 0.4.1", -] - -[[package]] -name = "dirs" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" -dependencies = [ - "dirs-sys 0.5.0", + "dirs-sys", ] [[package]] @@ -3300,22 +3056,10 @@ checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" dependencies = [ "libc", "option-ext", - "redox_users 0.4.6", + "redox_users", "windows-sys 0.48.0", ] -[[package]] -name = "dirs-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" -dependencies = [ - "libc", - "option-ext", - "redox_users 0.5.0", - "windows-sys 0.59.0", -] - [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -3323,7 +3067,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" dependencies = [ "libc", - "redox_users 0.4.6", + "redox_users", "winapi", ] @@ -3338,6 +3082,33 @@ dependencies = [ "syn 2.0.95", ] +[[package]] +name = "docify" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a772b62b1837c8f060432ddcc10b17aae1453ef17617a99bc07789252d2a5896" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e6be249b0a462a14784a99b19bf35a667bb5e09de611738bb7362fa4c95ff7" +dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.95", + "termcolor", + "toml", + "walkdir", +] + [[package]] name = "dotenv" version = "0.15.0" @@ -3464,15 +3235,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "ena" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" -dependencies = [ - "log", -] - [[package]] name = "encode_unicode" version = "1.0.0" @@ -3489,10 +3251,10 @@ dependencies = [ ] [[package]] -name = "enumn" -version = "0.1.14" +name = "enumorph" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" dependencies = [ "proc-macro2", "quote", @@ -3551,132 +3313,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "ethabi" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" -dependencies = [ - "ethereum-types", - "hex", - "once_cell", - "regex", - "serde", - "serde_json", - "sha3", - "thiserror 1.0.69", - "uint", -] - -[[package]] -name = "ethbloom" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" -dependencies = [ - "crunchy", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "tiny-keccak", -] - -[[package]] -name = "ethereum-types" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" -dependencies = [ - "ethbloom", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "primitive-types", - "scale-info", - "uint", -] - -[[package]] -name = "ethers-core" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" -dependencies = [ - "arrayvec", - "bytes", - "chrono", - "const-hex", - "elliptic-curve", - "ethabi", - "generic-array", - "k256", - "num_enum", - "open-fastrlp", - "rand", - "rlp", - "serde", - "serde_json", - "strum 0.26.3", - "tempfile", - "thiserror 1.0.69", - "tiny-keccak", - "unicode-xid", -] - -[[package]] -name = "ethers-etherscan" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" -dependencies = [ - "chrono", - "ethers-core", - "reqwest 0.11.27", - "semver 1.0.24", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", -] - -[[package]] -name = "ethers-solc" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" -dependencies = [ - "cfg-if", - "const-hex", - "dirs 5.0.1", - "dunce", - "ethers-core", - "futures-util", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver 1.0.24", - "serde", - "serde_json", - "sha2 0.10.8", - "solang-parser", - "svm-rs 0.3.5", - "svm-rs-builds 0.2.3", - "thiserror 1.0.69", - "tiny-keccak", - "tokio", - "tracing", - "walkdir", - "yansi 0.5.1", -] - [[package]] name = "event-listener" version = "5.4.0" @@ -3700,21 +3336,36 @@ dependencies = [ [[package]] name = "evm-note" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2a0ebe6fa972f336da5deee219e4dad5f74f7ccf6161e95dba014c61fdd2ace" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" dependencies = [ "alloy-sol-types", "cosmwasm-schema", "cosmwasm-std", - "cw-orch 0.26.0", + "cw-orch 0.27.0", "cw-storage-plus", "cw-utils", "cw2", - "polytone-evm 0.3.0", + "ibc-union-spec", + "polytone-evm", "thiserror 1.0.69", ] +[[package]] +name = "expander" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2c470c71d91ecbd179935b24170459e926382eaaa86b590b78814e180d8a8e2" +dependencies = [ + "blake2", + "file-guard", + "fs-err", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "eyre" version = "0.6.12" @@ -3731,28 +3382,6 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" -[[package]] -name = "fastrlp" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" -dependencies = [ - "arrayvec", - "auto_impl", - "bytes", -] - -[[package]] -name = "fastrlp" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4" -dependencies = [ - "arrayvec", - "auto_impl", - "bytes", -] - [[package]] name = "ff" version = "0.13.0" @@ -3770,17 +3399,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] -name = "figment" -version = "0.10.19" +name = "file-guard" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" +checksum = "21ef72acf95ec3d7dbf61275be556299490a245f017cf084bd23b4f68cf9407c" dependencies = [ - "atomic", - "pear", - "serde", - "toml 0.8.19", - "uncased", - "version_check", + "libc", + "winapi", ] [[package]] @@ -3799,10 +3424,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "byteorder", - "rand", - "rustc-hex", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3846,12 +3468,6 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -[[package]] -name = "foldhash" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" - [[package]] name = "foreign-types" version = "0.3.2" @@ -3877,170 +3493,71 @@ dependencies = [ ] [[package]] -name = "foundry-compilers" -version = "0.11.6" +name = "frame-support-procedural" +version = "30.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4754b3f3bb924202b29bd7f0584ea1446018926342884c86029a7d56ef1a22c1" +checksum = "8da784d943f2a945be923ab081a7c0837355b38045c50945d7ec1a138e2f3c52" dependencies = [ - "alloy-json-abi", - "alloy-primitives 0.8.23", - "auto_impl", - "derivative", - "dirs 5.0.1", - "dyn-clone", - "foundry-compilers-artifacts", - "foundry-compilers-core", - "home", - "itertools 0.13.0", - "md-5", - "once_cell", - "path-slash", - "rayon", - "semver 1.0.24", - "serde", - "serde_json", - "sha2 0.10.8", - "solang-parser", - "svm-rs 0.5.13", - "svm-rs-builds 0.5.13", - "thiserror 1.0.69", - "tracing", - "winnow 0.6.22", - "yansi 1.0.1", + "Inflector", + "cfg-expr", + "derive-syn-parse", + "docify", + "expander", + "frame-support-procedural-tools", + "itertools 0.11.0", + "macro_magic", + "proc-macro-warning", + "proc-macro2", + "quote", + "sp-crypto-hashing", + "syn 2.0.95", ] [[package]] -name = "foundry-compilers-artifacts" -version = "0.11.6" +name = "frame-support-procedural-tools" +version = "13.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6289da0f17fdb5a0454020dce595502b0abd2a56c15a36d4f6c05bd6c4ff864" +checksum = "81a088fd6fda5f53ff0c17fc7551ce8bd0ead14ba742228443c8196296a7369b" dependencies = [ - "foundry-compilers-artifacts-solc", - "foundry-compilers-artifacts-vyper", + "frame-support-procedural-tools-derive", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.95", ] [[package]] -name = "foundry-compilers-artifacts-solc" -version = "0.11.6" +name = "frame-support-procedural-tools-derive" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf322ab7b726f2bafe9a7e6fb67db02801b35584a2b1d122b4feb52d8e9e7f" +checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" dependencies = [ - "alloy-json-abi", - "alloy-primitives 0.8.23", - "foundry-compilers-core", - "md-5", - "path-slash", - "rayon", - "semver 1.0.24", - "serde", - "serde_json", - "serde_repr", - "thiserror 1.0.69", - "tracing", - "walkdir", - "yansi 1.0.1", + "proc-macro2", + "quote", + "syn 2.0.95", ] [[package]] -name = "foundry-compilers-artifacts-vyper" -version = "0.11.6" +name = "fs-err" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec47f94c7833adfe8049c819d9e31a60c3f440a68cf5baf34c318413d3eb0700" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" dependencies = [ - "alloy-json-abi", - "alloy-primitives 0.8.23", - "foundry-compilers-artifacts-solc", - "foundry-compilers-core", - "path-slash", - "semver 1.0.24", - "serde", + "autocfg", ] [[package]] -name = "foundry-compilers-core" -version = "0.11.6" +name = "function_name" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61971b34545e8ea01502df9d076e811ad3926f27d31adf2641e0c931ca646933" +checksum = "b1ab577a896d09940b5fe12ec5ae71f9d8211fff62c919c03a3750a9901e98a7" dependencies = [ - "alloy-primitives 0.8.23", - "cfg-if", - "dunce", - "once_cell", - "path-slash", - "regex", - "semver 1.0.24", - "serde", - "serde_json", - "svm-rs 0.5.13", - "thiserror 1.0.69", - "tokio", - "walkdir", + "function_name-proc-macro", ] [[package]] -name = "foundry-config" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a64a9bdad47eb4d950523b8ff14e675db8f2226a2aef79063d9344449b3abd5" -dependencies = [ - "Inflector", - "dirs-next", - "ethers-core", - "ethers-etherscan", - "ethers-solc", - "eyre", - "figment", - "globset", - "number_prefix", - "once_cell", - "open-fastrlp", - "path-slash", - "regex", - "reqwest 0.11.27", - "revm-primitives", - "semver 1.0.24", - "serde", - "serde_json", - "serde_regex", - "thiserror 1.0.69", - "toml 0.7.8", - "toml_edit 0.19.15", - "tracing", - "walkdir", -] - -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "fs4" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c29c30684418547d476f0b48e84f4821639119c483b1eccd566c8cd0cd05f521" -dependencies = [ - "rustix", - "windows-sys 0.52.0", -] - -[[package]] -name = "function_name" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1ab577a896d09940b5fe12ec5ae71f9d8211fff62c919c03a3750a9901e98a7" -dependencies = [ - "function_name-proc-macro", -] - -[[package]] -name = "function_name-proc-macro" -version = "0.3.0" +name = "function_name-proc-macro" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "673464e1e314dd67a0fd9544abc99e8eb28d0c7e3b69b033bcff9b2d00b87333" @@ -4188,12 +3705,6 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" -[[package]] -name = "glob" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" - [[package]] name = "globset" version = "0.4.15" @@ -4292,10 +3803,6 @@ name = "hashbrown" version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" -dependencies = [ - "foldhash", - "serde", -] [[package]] name = "hashlink" @@ -4351,12 +3858,6 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - [[package]] name = "hermit-abi" version = "0.4.0" @@ -4368,9 +3869,6 @@ name = "hex" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -dependencies = [ - "serde", -] [[package]] name = "hex-conservative" @@ -4597,7 +4095,6 @@ dependencies = [ "tokio", "tokio-rustls 0.26.1", "tower-service", - "webpki-roots 0.26.8", ] [[package]] @@ -4703,7 +4200,7 @@ dependencies = [ "bytes", "flex-error", "ics23", - "prost", + "prost 0.13.4", "subtle-encoding", "tendermint-proto 0.38.1", ] @@ -4720,7 +4217,7 @@ dependencies = [ "flex-error", "ics23", "informalsystems-pbjson", - "prost", + "prost 0.13.4", "serde", "subtle-encoding", "tendermint-proto 0.40.1", @@ -4737,7 +4234,7 @@ dependencies = [ "async-stream", "bech32 0.9.1", "bitcoin 0.31.2", - "bs58", + "bs58 0.5.1", "byte-unit", "bytes", "crossbeam-channel", @@ -4762,19 +4259,19 @@ dependencies = [ "num-bigint", "num-rational", "once_cell", - "prost", + "prost 0.13.4", "regex", "reqwest 0.11.27", "retry", "ripemd", "secp256k1 0.28.2", - "semver 1.0.24", + "semver", "serde", "serde_derive", "serde_json", "sha2 0.10.8", "signature", - "strum 0.25.0", + "strum", "subtle-encoding", "tendermint 0.40.1", "tendermint-light-client", @@ -4787,7 +4284,7 @@ dependencies = [ "tiny-keccak", "tokio", "tokio-stream", - "toml 0.8.19", + "toml", "tonic", "tracing", "tracing-subscriber", @@ -4808,7 +4305,7 @@ dependencies = [ "itertools 0.13.0", "num-rational", "primitive-types", - "prost", + "prost 0.13.4", "regex", "serde", "serde_derive", @@ -4843,6 +4340,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "ibc-union-spec" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "enumorph", + "num-traits", + "sha3", + "thiserror 2.0.10", + "unionlabs", + "voyager-primitives", +] + [[package]] name = "ics23" version = "0.12.0" @@ -4855,7 +4365,7 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost", + "prost 0.13.4", "ripemd", "serde", "sha2 0.10.8", @@ -5007,15 +4517,6 @@ dependencies = [ "icu_properties", ] -[[package]] -name = "impl-codec" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" -dependencies = [ - "parity-scale-codec", -] - [[package]] name = "impl-rlp" version = "0.3.0" @@ -5034,17 +4535,6 @@ dependencies = [ "serde", ] -[[package]] -name = "impl-trait-for-tuples" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.95", -] - [[package]] name = "indenter" version = "0.3.3" @@ -5069,7 +4559,6 @@ checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown 0.15.2", - "serde", ] [[package]] @@ -5082,21 +4571,6 @@ dependencies = [ "serde", ] -[[package]] -name = "inlinable_string" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" - -[[package]] -name = "inout" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" -dependencies = [ - "generic-array", -] - [[package]] name = "insta" version = "1.42.0" @@ -5131,7 +4605,7 @@ version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" dependencies = [ - "hermit-abi 0.4.0", + "hermit-abi", "libc", "windows-sys 0.52.0", ] @@ -5175,15 +4649,6 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" -[[package]] -name = "jobserver" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" -dependencies = [ - "libc", -] - [[package]] name = "js-sys" version = "0.3.76" @@ -5241,8 +4706,8 @@ dependencies = [ "cfg-if", "ecdsa", "elliptic-curve", - "once_cell", "sha2 0.10.8", + "signature", ] [[package]] @@ -5267,16 +4732,6 @@ dependencies = [ "cpufeatures", ] -[[package]] -name = "keccak-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" -dependencies = [ - "digest 0.10.7", - "sha3-asm", -] - [[package]] name = "kube" version = "0.93.1" @@ -5388,36 +4843,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "lalrpop" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" -dependencies = [ - "ascii-canvas", - "bit-set", - "ena", - "itertools 0.11.0", - "lalrpop-util", - "petgraph", - "regex", - "regex-syntax 0.8.5", - "string_cache", - "term", - "tiny-keccak", - "unicode-xid", - "walkdir", -] - -[[package]] -name = "lalrpop-util" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" -dependencies = [ - "regex-automata 0.4.9", -] - [[package]] name = "lazy_static" version = "1.5.0" @@ -5486,12 +4911,6 @@ dependencies = [ "scopeguard", ] -[[package]] -name = "lockfree-object-pool" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" - [[package]] name = "log" version = "0.4.22" @@ -5548,6 +4967,64 @@ dependencies = [ "tracing-subscriber", ] +[[package]] +name = "macro_magic" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc33f9f0351468d26fbc53d9ce00a096c8522ecb42f19b50f34f2c422f76d21d" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "macro_magic_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1687dc887e42f352865a393acae7cf79d98fab6351cde1f58e9e057da89bf150" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "macro_magic_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.95", +] + +[[package]] +name = "macros" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "map-macro" version = "0.3.0" @@ -5569,16 +5046,6 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" -[[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest 0.10.7", -] - [[package]] name = "memchr" version = "2.7.4" @@ -5623,13 +5090,19 @@ dependencies = [ "loom", "parking_lot", "portable-atomic", - "rustc_version 0.4.1", + "rustc_version", "smallvec", "tagptr", "thiserror 1.0.69", "uuid", ] +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + [[package]] name = "native-tls" version = "0.2.12" @@ -5647,12 +5120,6 @@ dependencies = [ "tempfile", ] -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -5762,43 +5229,6 @@ dependencies = [ "libm", ] -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.95", -] - -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - [[package]] name = "object" version = "0.36.7" @@ -5820,31 +5250,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" -[[package]] -name = "open-fastrlp" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" -dependencies = [ - "arrayvec", - "auto_impl", - "bytes", - "ethereum-types", - "open-fastrlp-derive", -] - -[[package]] -name = "open-fastrlp-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" -dependencies = [ - "bytes", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "openssl" version = "0.10.68" @@ -5980,32 +5385,6 @@ dependencies = [ "sha2 0.10.8", ] -[[package]] -name = "parity-scale-codec" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" -dependencies = [ - "arrayvec", - "bitvec", - "byte-slice-cast", - "impl-trait-for-tuples", - "parity-scale-codec-derive", - "serde", -] - -[[package]] -name = "parity-scale-codec-derive" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "parking" version = "2.2.1" @@ -6035,17 +5414,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core", - "subtle", -] - [[package]] name = "paste" version = "1.0.15" @@ -6053,10 +5421,38 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" +name = "pbjson" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "base64 0.21.7", + "serde", +] + +[[package]] +name = "pbjson-build" +version = "0.6.2" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "heck 0.4.1", + "itertools 0.11.0", + "prost 0.12.6", + "prost-types 0.12.6", +] + +[[package]] +name = "pbjson-types" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "bytes", + "chrono", + "pbjson", + "pbjson-build", + "prost 0.12.6", + "prost-build", + "serde", +] [[package]] name = "pbkdf2" @@ -6065,9 +5461,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" dependencies = [ "digest 0.10.7", - "hmac", - "password-hash", - "sha2 0.10.8", ] [[package]] @@ -6080,29 +5473,6 @@ dependencies = [ "hmac", ] -[[package]] -name = "pear" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" -dependencies = [ - "inlinable_string", - "pear_codegen", - "yansi 1.0.1", -] - -[[package]] -name = "pear_codegen" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" -dependencies = [ - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.95", -] - [[package]] name = "peg" version = "0.8.4" @@ -6210,48 +5580,6 @@ dependencies = [ "indexmap 2.7.0", ] -[[package]] -name = "phf" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" -dependencies = [ - "phf_macros", - "phf_shared", -] - -[[package]] -name = "phf_generator" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" -dependencies = [ - "phf_shared", - "rand", -] - -[[package]] -name = "phf_macros" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" -dependencies = [ - "phf_generator", - "phf_shared", - "proc-macro2", - "quote", - "syn 2.0.95", -] - -[[package]] -name = "phf_shared" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" -dependencies = [ - "siphasher", -] - [[package]] name = "pin-project" version = "1.1.8" @@ -6313,24 +5641,8 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "polytone-evm" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4dcd5edd6e9f539fb7550db9d18d37c1e8ecdedb796e1b78d516b2cb08a862" -dependencies = [ - "alloy", - "alloy-sol-types", - "cosmwasm-schema", - "cosmwasm-std", - "cw-asset", - "cw-storage-plus", - "thiserror 1.0.69", -] - -[[package]] -name = "polytone-evm" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd8851821a4310ae804737d083659cc900e226006068d67b35eaa6ae2fe36b7c" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" dependencies = [ "alloy", "alloy-sol-types", @@ -6338,8 +5650,6 @@ dependencies = [ "cosmwasm-std", "cw-asset", "cw-storage-plus", - "foundry-compilers", - "foundry-config", "thiserror 1.0.69", ] @@ -6365,10 +5675,14 @@ dependencies = [ ] [[package]] -name = "precomputed-hash" -version = "0.1.1" +name = "prettyplease" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" +checksum = "483f8c21f64f3ea09fe0f30f5d48c3e8eefe5dac9129f0075f76593b4c1da705" +dependencies = [ + "proc-macro2", + "syn 2.0.95", +] [[package]] name = "primeorder" @@ -6387,10 +5701,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", - "impl-codec", "impl-rlp", "impl-serde", - "scale-info", "uint", ] @@ -6400,53 +5712,49 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.22.22", + "toml_edit", ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.95", ] [[package]] -name = "proc-macro2" -version = "1.0.92" +name = "proc-macro-warning" +version = "1.84.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" dependencies = [ - "unicode-ident", + "proc-macro2", + "quote", + "syn 2.0.95", ] [[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" +name = "proc-macro2" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.95", - "version_check", - "yansi 1.0.1", + "unicode-ident", ] [[package]] @@ -6470,20 +5778,24 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ - "bit-set", - "bit-vec", "bitflags 2.6.0", - "lazy_static", "num-traits", "rand", "rand_chacha", "rand_xorshift", - "regex-syntax 0.8.5", - "rusty-fork", - "tempfile", "unarray", ] +[[package]] +name = "prost" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +dependencies = [ + "bytes", + "prost-derive 0.12.6", +] + [[package]] name = "prost" version = "0.13.4" @@ -6491,93 +5803,90 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec" dependencies = [ "bytes", - "prost-derive", + "prost-derive 0.13.4", +] + +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck 0.4.1", + "itertools 0.10.5", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost 0.12.6", + "prost-types 0.12.6", + "regex", + "syn 2.0.95", + "tempfile", ] [[package]] name = "prost-derive" -version = "0.13.4" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.13.0", + "itertools 0.10.5", "proc-macro2", "quote", "syn 2.0.95", ] [[package]] -name = "prost-types" +name = "prost-derive" version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc" +checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3" dependencies = [ - "prost", + "anyhow", + "itertools 0.13.0", + "proc-macro2", + "quote", + "syn 2.0.95", ] [[package]] -name = "protobuf" -version = "2.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" - -[[package]] -name = "quick-error" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" - -[[package]] -name = "quinn" -version = "0.11.6" +name = "prost-types" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" dependencies = [ - "bytes", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash 2.1.1", - "rustls 0.23.20", - "socket2", - "thiserror 2.0.10", - "tokio", - "tracing", + "prost 0.12.6", ] [[package]] -name = "quinn-proto" -version = "0.11.9" +name = "prost-types" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" +checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc" dependencies = [ - "bytes", - "getrandom", - "rand", - "ring", - "rustc-hash 2.1.1", - "rustls 0.23.20", - "rustls-pki-types", - "slab", - "thiserror 2.0.10", - "tinyvec", - "tracing", - "web-time", + "prost 0.13.4", ] [[package]] -name = "quinn-udp" -version = "0.5.10" +name = "protobuf" +version = "2.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" +checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" + +[[package]] +name = "protos" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.59.0", + "chrono", + "pbjson-types", + "prost 0.12.6", + "serde", + "serde-utils", ] [[package]] @@ -6604,7 +5913,6 @@ dependencies = [ "libc", "rand_chacha", "rand_core", - "serde", ] [[package]] @@ -6675,17 +5983,6 @@ dependencies = [ "thiserror 1.0.69", ] -[[package]] -name = "redox_users" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b" -dependencies = [ - "getrandom", - "libredox", - "thiserror 2.0.10", -] - [[package]] name = "regex" version = "1.11.1" @@ -6768,7 +6065,6 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.25.4", "winreg", ] @@ -6781,7 +6077,6 @@ dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", - "futures-channel", "futures-core", "futures-util", "h2 0.4.7", @@ -6800,11 +6095,7 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "quinn", - "rustls 0.23.20", - "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", - "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", @@ -6812,15 +6103,12 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", - "tokio-rustls 0.26.1", - "tokio-socks", "tower 0.5.2", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.26.8", "windows-registry", ] @@ -6830,22 +6118,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" -[[package]] -name = "revm-primitives" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51187b852d9e458816a2e19c81f1dd6c924077e1a8fccd16e4f044f865f299d7" -dependencies = [ - "alloy-primitives 0.4.2", - "alloy-rlp", - "auto_impl", - "bitflags 2.6.0", - "bitvec", - "enumn", - "hashbrown 0.14.5", - "hex", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -6887,21 +6159,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" dependencies = [ "bytes", - "rlp-derive", "rustc-hex", ] -[[package]] -name = "rlp-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "rmp" version = "0.8.14" @@ -6953,7 +6213,7 @@ dependencies = [ "futures", "futures-timer", "rstest_macros", - "rustc_version 0.4.1", + "rustc_version", ] [[package]] @@ -6965,7 +6225,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "rustc_version 0.4.1", + "rustc_version", "syn 1.0.109", "unicode-ident", ] @@ -6976,20 +6236,8 @@ version = "1.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" dependencies = [ - "alloy-rlp", - "ark-ff 0.3.0", - "ark-ff 0.4.2", - "bytes", - "fastrlp 0.3.1", - "fastrlp 0.4.0", - "num-bigint", - "num-integer", - "num-traits", - "parity-scale-codec", - "primitive-types", "proptest", "rand", - "rlp", "ruint-macro", "serde", "valuable", @@ -7049,37 +6297,19 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" -[[package]] -name = "rustc-hash" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" -dependencies = [ - "rand", -] - [[package]] name = "rustc-hex" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" -[[package]] -name = "rustc_version" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" -dependencies = [ - "semver 0.11.0", -] - [[package]] name = "rustc_version" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.24", + "semver", ] [[package]] @@ -7196,9 +6426,6 @@ name = "rustls-pki-types" version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" -dependencies = [ - "web-time", -] [[package]] name = "rustls-webpki" @@ -7227,18 +6454,6 @@ version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" -[[package]] -name = "rusty-fork" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" -dependencies = [ - "fnv", - "quick-error", - "tempfile", - "wait-timeout", -] - [[package]] name = "ryu" version = "1.0.18" @@ -7264,30 +6479,6 @@ dependencies = [ "regex", ] -[[package]] -name = "scale-info" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" -dependencies = [ - "cfg-if", - "derive_more 1.0.0", - "parity-scale-codec", - "scale-info-derive", -] - -[[package]] -name = "scale-info-derive" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.95", -] - [[package]] name = "scc" version = "2.3.0" @@ -7459,15 +6650,6 @@ dependencies = [ "libc", ] -[[package]] -name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser", -] - [[package]] name = "semver" version = "1.0.24" @@ -7477,15 +6659,6 @@ dependencies = [ "serde", ] -[[package]] -name = "semver-parser" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2" -dependencies = [ - "pest", -] - [[package]] name = "serde" version = "1.0.217" @@ -7513,6 +6686,19 @@ dependencies = [ "serde", ] +[[package]] +name = "serde-utils" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bitvec", + "chrono", + "hex", + "primitive-types", + "serde", +] + [[package]] name = "serde-value" version = "0.7.0" @@ -7586,16 +6772,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_regex" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf" -dependencies = [ - "regex", - "serde", -] - [[package]] name = "serde_repr" version = "0.1.19" @@ -7721,16 +6897,6 @@ dependencies = [ "keccak", ] -[[package]] -name = "sha3-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" -dependencies = [ - "cc", - "cfg-if", -] - [[package]] name = "sharded-slab" version = "0.1.7" @@ -7771,24 +6937,12 @@ dependencies = [ "rand_core", ] -[[package]] -name = "simd-adler32" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" - [[package]] name = "similar" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" -[[package]] -name = "siphasher" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" - [[package]] name = "slab" version = "0.4.9" @@ -7815,17 +6969,26 @@ dependencies = [ ] [[package]] -name = "solang-parser" -version = "0.3.3" +name = "solidity-slot" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "sha3", + "unionlabs-primitives", +] + +[[package]] +name = "sp-crypto-hashing" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" +checksum = "bc9927a7f81334ed5b8a98a4a978c81324d12bd9713ec76b5c68fd410174c5eb" dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror 1.0.69", - "unicode-xid", + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", ] [[package]] @@ -7853,6 +7016,34 @@ dependencies = [ "der", ] +[[package]] +name = "ssz" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "derivative", + "itertools 0.10.5", + "lazy_static", + "serde", + "serde-utils", + "sha2 0.10.8", + "smallvec", + "ssz-derive", + "thiserror 2.0.10", + "typenum", + "unionlabs-primitives", +] + +[[package]] +name = "ssz-derive" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -7866,16 +7057,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] -name = "string_cache" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938d512196766101d333398efde81bc1f37b00cb42c2f8350e5df639f040bbbe" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared", - "precomputed-hash", -] +name = "static_assertions" +version = "1.1.0" +source = "git+https://github.com/nvzqz/static-assertions#a867e97a1b3c2e0c76b7a154abdf4e422b78e5f2" [[package]] name = "strsim" @@ -7895,16 +7079,7 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" dependencies = [ - "strum_macros 0.25.3", -] - -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", + "strum_macros", ] [[package]] @@ -7920,19 +7095,6 @@ dependencies = [ "syn 2.0.95", ] -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.95", -] - [[package]] name = "subtle" version = "2.6.1" @@ -7954,72 +7116,6 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" -[[package]] -name = "svm-rs" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs 5.0.1", - "fs2", - "hex", - "once_cell", - "reqwest 0.11.27", - "semver 1.0.24", - "serde", - "serde_json", - "sha2 0.10.8", - "thiserror 1.0.69", - "url", - "zip 0.6.6", -] - -[[package]] -name = "svm-rs" -version = "0.5.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a30a58b94c1ddc5f07a428d16e58e8f4c7cee9e67130cda12ed148f5ef98fff" -dependencies = [ - "const-hex", - "dirs 6.0.0", - "fs4", - "reqwest 0.12.12", - "semver 1.0.24", - "serde", - "serde_json", - "sha2 0.10.8", - "tempfile", - "thiserror 2.0.10", - "url", - "zip 2.3.0", -] - -[[package]] -name = "svm-rs-builds" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa64b5e8eecd3a8af7cfc311e29db31a268a62d5953233d3e8243ec77a71c4e3" -dependencies = [ - "build_const", - "hex", - "semver 1.0.24", - "serde_json", - "svm-rs 0.3.5", -] - -[[package]] -name = "svm-rs-builds" -version = "0.5.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebddc0ea9fd9fb61d0de9585a99c58f87e8c14b8811726a57cc5f5b1a029585e" -dependencies = [ - "build_const", - "const-hex", - "semver 1.0.24", - "serde_json", - "svm-rs 0.5.13", -] - [[package]] name = "syn" version = "1.0.109" @@ -8044,9 +7140,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" +checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" dependencies = [ "paste", "proc-macro2", @@ -8163,7 +7259,7 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost", + "prost 0.13.4", "ripemd", "serde", "serde_bytes", @@ -8193,7 +7289,7 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost", + "prost 0.13.4", "ripemd", "serde", "serde_bytes", @@ -8218,7 +7314,7 @@ dependencies = [ "serde", "serde_json", "tendermint 0.39.1", - "toml 0.8.19", + "toml", "url", ] @@ -8232,7 +7328,7 @@ dependencies = [ "serde", "serde_json", "tendermint 0.40.1", - "toml 0.8.19", + "toml", "url", ] @@ -8252,7 +7348,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.1", "tendermint-light-client-verifier", "tendermint-rpc 0.40.1", @@ -8275,7 +7371,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.1", "tendermint-light-client", "tendermint-proto 0.40.1", @@ -8305,8 +7401,8 @@ checksum = "8ed14abe3b0502a3afe21ca74ca5cdd6c7e8d326d982c26f98a394445eb31d6e" dependencies = [ "bytes", "flex-error", - "prost", - "prost-types", + "prost 0.13.4", + "prost-types 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -8321,7 +7417,7 @@ checksum = "bf3abf34ecf33125621519e9952688e7a59a98232d51538037ba21fbe526a802" dependencies = [ "bytes", "flex-error", - "prost", + "prost 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -8336,7 +7432,7 @@ checksum = "9ae9e1705aa0fa5ecb2c6aa7fb78c2313c4a31158ea5f02048bf318f849352eb" dependencies = [ "bytes", "flex-error", - "prost", + "prost 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -8358,7 +7454,7 @@ dependencies = [ "pin-project", "rand", "reqwest 0.11.27", - "semver 1.0.24", + "semver", "serde", "serde_bytes", "serde_json", @@ -8392,7 +7488,7 @@ dependencies = [ "pin-project", "rand", "reqwest 0.11.27", - "semver 1.0.24", + "semver", "serde", "serde_bytes", "serde_json", @@ -8410,17 +7506,6 @@ dependencies = [ "walkdir", ] -[[package]] -name = "term" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" -dependencies = [ - "dirs-next", - "rustversion", - "winapi", -] - [[package]] name = "termcolor" version = "1.4.1" @@ -8531,7 +7616,7 @@ dependencies = [ "once_cell", "pbkdf2 0.11.0", "rand", - "rustc-hash 1.1.0", + "rustc-hash", "sha2 0.10.8", "thiserror 1.0.69", "unicode-normalization", @@ -8643,18 +7728,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-socks" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d4770b8024672c1101b3f6733eab95b18007dbe0847a8afe341fcf79e06043f" -dependencies = [ - "either", - "futures-util", - "thiserror 1.0.69", - "tokio", -] - [[package]] name = "tokio-stream" version = "0.1.17" @@ -8692,19 +7765,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" -dependencies = [ - "indexmap 2.7.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.19.15", -] - [[package]] name = "toml" version = "0.8.19" @@ -8714,7 +7774,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.22", + "toml_edit", ] [[package]] @@ -8726,19 +7786,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.7.0", - "serde", - "serde_spanned", - "toml_datetime", - "winnow 0.5.40", -] - [[package]] name = "toml_edit" version = "0.22.22" @@ -8749,7 +7796,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.22", + "winnow", ] [[package]] @@ -8772,7 +7819,7 @@ dependencies = [ "hyper-util", "percent-encoding", "pin-project", - "prost", + "prost 0.13.4", "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", "socket2", @@ -8971,6 +8018,17 @@ dependencies = [ "utf-8", ] +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "digest 0.10.7", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "typemap-ors" version = "1.0.0" @@ -9007,7 +8065,7 @@ dependencies = [ "byteorder", "crunchy", "hex", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -9016,15 +8074,6 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "uncased" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" -dependencies = [ - "version_check", -] - [[package]] name = "unicode-ident" version = "1.0.14" @@ -9058,6 +8107,61 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unionlabs" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bcs", + "bip32", + "bs58 0.4.0", + "chrono", + "derive_more 0.99.18", + "either", + "frame-support-procedural", + "generic-array", + "hex", + "hex-literal", + "k256", + "macros", + "paste", + "primitive-types", + "prost 0.12.6", + "protos", + "ripemd", + "serde", + "serde-utils", + "serde_bytes", + "serde_json", + "sha2 0.10.8", + "sha3", + "solidity-slot", + "ssz", + "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", + "subtle-encoding", + "thiserror 2.0.10", + "typenum", + "unionlabs-primitives", + "wasmparser", +] + +[[package]] +name = "unionlabs-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "generic-array", + "hex", + "primitive-types", + "serde", + "serde_bytes", + "thiserror 2.0.10", + "typenum", + "uint", +] + [[package]] name = "unsafe-any-ors" version = "1.0.0" @@ -9154,12 +8258,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] -name = "wait-timeout" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" +name = "voyager-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" dependencies = [ - "libc", + "consensus-primitives", + "macros", + "serde_json", + "unionlabs", ] [[package]] @@ -9255,40 +8361,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" [[package]] -name = "web-sys" -version = "0.3.76" +name = "wasmparser" +version = "0.113.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" +checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" dependencies = [ - "js-sys", - "wasm-bindgen", + "indexmap 2.7.0", + "semver", ] [[package]] -name = "web-time" -version = "1.1.0" +name = "web-sys" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" dependencies = [ "js-sys", "wasm-bindgen", ] -[[package]] -name = "webpki-roots" -version = "0.25.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" - -[[package]] -name = "webpki-roots" -version = "0.26.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "winapi" version = "0.3.9" @@ -9552,15 +8643,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - [[package]] name = "winnow" version = "0.6.22" @@ -9570,15 +8652,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "winnow" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e97b544156e9bebe1a0ffbc03484fc1ffe3100cbce3ffb17eac35f7cdd7ab36" -dependencies = [ - "memchr", -] - [[package]] name = "winreg" version = "0.50.0" @@ -9602,7 +8675,7 @@ dependencies = [ "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", "bitflags 2.6.0", - "bs58", + "bs58 0.5.1", "byteorder", "bytes", "chrono", @@ -9655,7 +8728,7 @@ dependencies = [ "parking_lot", "ppv-lite86", "primeorder", - "prost", + "prost 0.13.4", "rand", "rand_chacha", "rand_core", @@ -9666,7 +8739,7 @@ dependencies = [ "reqwest 0.12.12", "ripemd", "sec1", - "semver 1.0.24", + "semver", "serde", "serde_json", "sha2 0.10.8", @@ -9743,7 +8816,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5950da92cdb6e0fdebe4513a1defd73b6c4af7d1fa72ae5f14780451c535bc2" dependencies = [ "informalsystems-pbjson", - "prost", + "prost 0.13.4", "serde", "tendermint-proto 0.40.1", ] @@ -9759,18 +8832,6 @@ dependencies = [ "hashlink", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - [[package]] name = "yoke" version = "0.7.5" @@ -9878,83 +8939,3 @@ dependencies = [ "quote", "syn 2.0.95", ] - -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "aes", - "byteorder", - "bzip2", - "constant_time_eq 0.1.5", - "crc32fast", - "crossbeam-utils", - "flate2", - "hmac", - "pbkdf2 0.11.0", - "sha1", - "time", - "zstd", -] - -[[package]] -name = "zip" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84e9a772a54b54236b9b744aaaf8d7be01b4d6e99725523cb82cb32d1c81b1d7" -dependencies = [ - "arbitrary", - "crc32fast", - "crossbeam-utils", - "displaydoc", - "flate2", - "indexmap 2.7.0", - "memchr", - "thiserror 2.0.10", - "zopfli", -] - -[[package]] -name = "zopfli" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946" -dependencies = [ - "bumpalo", - "crc32fast", - "lockfree-object-pool", - "log", - "once_cell", - "simd-adler32", -] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.14+zstd.1.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" -dependencies = [ - "cc", - "pkg-config", -] diff --git a/framework/contracts/native/ica-client/Cargo.toml b/framework/contracts/native/ica-client/Cargo.toml index 5cc806961..137c675fd 100644 --- a/framework/contracts/native/ica-client/Cargo.toml +++ b/framework/contracts/native/ica-client/Cargo.toml @@ -30,8 +30,8 @@ cw2 = { workspace = true } semver = { workspace = true } thiserror = { workspace = true } -evm-note = { version = "0.3.0", features = ["library"] } -polytone-evm = "0.3.0" +evm-note = { version = "0.4.0", git = "ssh://git@github.com/AbstractSDK/evm-ibc.git", features = ["library"] } +polytone-evm = { version = "0.4.0", git = "ssh://git@github.com/AbstractSDK/evm-ibc.git" } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] workspace-hack = { version = "0.1", path = "../../../workspace-hack" } diff --git a/framework/packages/abstract-ica/Cargo.toml b/framework/packages/abstract-ica/Cargo.toml index c22e123e0..4cff6f648 100644 --- a/framework/packages/abstract-ica/Cargo.toml +++ b/framework/packages/abstract-ica/Cargo.toml @@ -22,7 +22,7 @@ abstract-sdk = { workspace = true } cw-orch = { workspace = true } # EVM -polytone-evm = { version = "0.1.0" } +polytone-evm = { version = "0.4.0", git = "ssh://git@github.com/AbstractSDK/evm-ibc.git" } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] workspace-hack = { version = "0.1", path = "../../workspace-hack" } diff --git a/framework/rust-toolchain.toml b/framework/rust-toolchain.toml new file mode 100644 index 000000000..271800cb2 --- /dev/null +++ b/framework/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +channel = "nightly" \ No newline at end of file diff --git a/integrations/Cargo.lock b/integrations/Cargo.lock index fe1b7772e..28713d2b0 100644 --- a/integrations/Cargo.lock +++ b/integrations/Cargo.lock @@ -445,48 +445,47 @@ checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9" [[package]] name = "alloy" -version = "0.2.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ "alloy-core", ] [[package]] name = "alloy-core" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" +checksum = "9d8bcce99ad10fe02640cfaec1c6bc809b837c783c1d52906aa5af66e2a196f6" dependencies = [ "alloy-primitives", - "alloy-sol-types", ] [[package]] name = "alloy-primitives" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" +checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" dependencies = [ "bytes", "cfg-if", "const-hex", - "derive_more 0.99.18", - "hex-literal", + "derive_more 2.0.1", "itoa", + "paste", "ruint", "tiny-keccak", ] [[package]] name = "alloy-sol-macro" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -494,15 +493,15 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", "indexmap 2.6.0", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -512,9 +511,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", @@ -527,9 +526,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ "alloy-primitives", "alloy-sol-macro", @@ -1356,12 +1355,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - [[package]] name = "convert_case" version = "0.6.0" @@ -1804,7 +1797,7 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ - "convert_case 0.6.0", + "convert_case", "quote", "syn 2.0.90", ] @@ -1882,7 +1875,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "194e944e6bcb51a53f99e2b0a510ecc8919605b9a83d93641748cf1b163315f6" dependencies = [ - "convert_case 0.6.0", + "convert_case", "proc-macro2", "quote", "syn 2.0.90", @@ -2499,10 +2492,8 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case 0.4.0", "proc-macro2", "quote", - "rustc_version", "syn 2.0.90", ] @@ -2512,7 +2503,16 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -2527,6 +2527,18 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", + "unicode-xid", +] + [[package]] name = "destructure_traitobject" version = "0.2.0" @@ -3255,12 +3267,6 @@ dependencies = [ "arrayvec", ] -[[package]] -name = "hex-literal" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" - [[package]] name = "hex_lit" version = "0.1.1" @@ -5005,9 +5011,8 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "polytone-evm" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4dcd5edd6e9f539fb7550db9d18d37c1e8ecdedb796e1b78d516b2cb08a862" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" dependencies = [ "alloy", "alloy-sol-types", @@ -5055,27 +5060,25 @@ dependencies = [ ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.90", ] [[package]] @@ -6334,9 +6337,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" +checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" dependencies = [ "paste", "proc-macro2", diff --git a/interchain/Cargo.lock b/interchain/Cargo.lock index 445fc00fe..0dd09a184 100644 --- a/interchain/Cargo.lock +++ b/interchain/Cargo.lock @@ -853,48 +853,47 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.2.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ "alloy-core", ] [[package]] name = "alloy-core" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" +checksum = "9d8bcce99ad10fe02640cfaec1c6bc809b837c783c1d52906aa5af66e2a196f6" dependencies = [ "alloy-primitives", - "alloy-sol-types", ] [[package]] name = "alloy-primitives" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" +checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" dependencies = [ "bytes", "cfg-if", "const-hex", - "derive_more 0.99.18", - "hex-literal", + "derive_more 2.0.1", "itoa", + "paste", "ruint", "tiny-keccak", ] [[package]] name = "alloy-sol-macro" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -902,15 +901,15 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", "indexmap 2.7.0", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -920,9 +919,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", @@ -935,9 +934,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ "alloy-primitives", "alloy-sol-macro", @@ -1924,12 +1923,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - [[package]] name = "convert_case" version = "0.6.0" @@ -2607,7 +2600,7 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ - "convert_case 0.6.0", + "convert_case", "quote", "syn 2.0.90", ] @@ -2778,7 +2771,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "194e944e6bcb51a53f99e2b0a510ecc8919605b9a83d93641748cf1b163315f6" dependencies = [ - "convert_case 0.6.0", + "convert_case", "proc-macro2", "quote", "syn 2.0.90", @@ -3541,10 +3534,8 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case 0.4.0", "proc-macro2", "quote", - "rustc_version", "syn 2.0.90", ] @@ -3554,7 +3545,16 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -3569,6 +3569,18 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", + "unicode-xid", +] + [[package]] name = "destructure_traitobject" version = "0.2.0" @@ -4424,12 +4436,6 @@ dependencies = [ "arrayvec", ] -[[package]] -name = "hex-literal" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" - [[package]] name = "hex_lit" version = "0.1.1" @@ -6168,9 +6174,8 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "polytone-evm" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4dcd5edd6e9f539fb7550db9d18d37c1e8ecdedb796e1b78d516b2cb08a862" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" dependencies = [ "alloy", "alloy-sol-types", @@ -6241,6 +6246,28 @@ dependencies = [ "version_check", ] +[[package]] +name = "proc-macro-error-attr2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "proc-macro-error2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +dependencies = [ + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "proc-macro2" version = "1.0.92" @@ -7684,9 +7711,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" +checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" dependencies = [ "paste", "proc-macro2", diff --git a/interchain/scripts/state.json b/interchain/scripts/state.json index 6dc834473..f2b1bdb9a 100644 --- a/interchain/scripts/state.json +++ b/interchain/scripts/state.json @@ -82,5 +82,29 @@ "abstract:registry": "xion1j33edjnk9cqkuw83fvz3f646unxpkcjkru0znjhznr0dzvpzyw7q4yz2eu" }, "version": "0.26.0" + }, + "union-testnet-10": { + "code_ids": { + "abstract:account": 73, + "abstract:ans-host": 70, + "abstract:evm-note": 79, + "abstract:ibc-client": 74, + "abstract:ibc-host": 75, + "abstract:module-factory": 72, + "abstract:registry": 71, + "cw:blob": 69, + "test:ibc-callbacks": 78 + }, + "default": { + "abstract:account-local-0": "union1udz204u47ld8lc3ekmgc4wuss7kv2rcwv84sxm38jcv7ufrz4qzs3vrqu3", + "abstract:ans-host": "union1wx0qjtlz799pfxl73y2f4dv28nukztpmq2ztavk60v534tat9cdsgj44nw", + "abstract:evm-note": "union1uz8gd9z30thd8d8vxrch5m7s6ryeamfuxmh759tq53ww76lzj8dqkp97q5", + "abstract:ibc-client": "union1pplxw9myj7tskvku0h2r5jzwwyyusseavzcndr7cqwen78dgku5q3gm2qr", + "abstract:ibc-host": "union1v4zdknr2js7cngh4ut67uutdexcxlv2dnnuhp926c08m50aukqzs2f8eyx", + "abstract:module-factory": "union1vnj802lyyupfaez73w7axfs3xveraxen370vhcnumaufj29r5rxqf4t8dl", + "abstract:registry": "union1cag6cwygef6fuddgq2l44py7crpscufrza4mt3rum2axueemenmq6jqp05", + "test:ibc-callbacks": "union1vdrmaamhznn4ejvjwc9g9fx6cruaj36naaqtm4s40xeen07lgjsqnpmc0k", + "union:ibc-union": "union1hnuj8f6d3wy3fcprt55vddv7v2650t6uudnvd2hukqrteeam8wjqvcmecf" + } } } \ No newline at end of file diff --git a/modules/Cargo.lock b/modules/Cargo.lock index 6b0a300b6..081d920ca 100644 --- a/modules/Cargo.lock +++ b/modules/Cargo.lock @@ -759,48 +759,47 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.2.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ "alloy-core", ] [[package]] name = "alloy-core" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" +checksum = "9d8bcce99ad10fe02640cfaec1c6bc809b837c783c1d52906aa5af66e2a196f6" dependencies = [ "alloy-primitives", - "alloy-sol-types", ] [[package]] name = "alloy-primitives" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" +checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" dependencies = [ "bytes", "cfg-if", "const-hex", - "derive_more 0.99.18", - "hex-literal", + "derive_more 2.0.1", "itoa", + "paste", "ruint", "tiny-keccak", ] [[package]] name = "alloy-sol-macro" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -808,15 +807,15 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", "indexmap 2.7.0", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.90", @@ -826,9 +825,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", @@ -841,9 +840,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.7.7" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ "alloy-primitives", "alloy-sol-macro", @@ -1855,12 +1854,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - [[package]] name = "convert_case" version = "0.6.0" @@ -2352,7 +2345,7 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ - "convert_case 0.6.0", + "convert_case", "quote", "syn 2.0.90", ] @@ -2430,7 +2423,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "194e944e6bcb51a53f99e2b0a510ecc8919605b9a83d93641748cf1b163315f6" dependencies = [ - "convert_case 0.6.0", + "convert_case", "proc-macro2", "quote", "syn 2.0.90", @@ -3146,10 +3139,8 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case 0.4.0", "proc-macro2", "quote", - "rustc_version", "syn 2.0.90", ] @@ -3159,7 +3150,16 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -3174,6 +3174,18 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", + "unicode-xid", +] + [[package]] name = "destructure_traitobject" version = "0.2.0" @@ -3955,12 +3967,6 @@ dependencies = [ "arrayvec", ] -[[package]] -name = "hex-literal" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" - [[package]] name = "hex_lit" version = "0.1.1" @@ -5919,9 +5925,8 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "polytone-evm" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4dcd5edd6e9f539fb7550db9d18d37c1e8ecdedb796e1b78d516b2cb08a862" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" dependencies = [ "alloy", "alloy-sol-types", @@ -5979,27 +5984,25 @@ dependencies = [ ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.90", ] [[package]] @@ -7293,9 +7296,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.7.7" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" +checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" dependencies = [ "paste", "proc-macro2", From 371a6a1d6a8f5d27915cf51ba05ee128330d207b Mon Sep 17 00:00:00 2001 From: Buckram Date: Mon, 21 Apr 2025 12:43:50 +0300 Subject: [PATCH 03/10] manual build --- framework/artifacts/abstract_ica_client.wasm | Bin 382688 -> 485552 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/framework/artifacts/abstract_ica_client.wasm b/framework/artifacts/abstract_ica_client.wasm index ee3a33cbe33bd233ba5489f5f494ccd25f9155a9..0e72e8412f55e9b04d99b3e01d311a47c8e72ab2 100644 GIT binary patch literal 485552 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

8VW=hF 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 diff --git a/interchain/scripts/src/bin/deploy_ica.rs b/interchain/scripts/src/bin/deploy_ica.rs index c03cdac3c..f468ec6b0 100644 --- a/interchain/scripts/src/bin/deploy_ica.rs +++ b/interchain/scripts/src/bin/deploy_ica.rs @@ -1,5 +1,7 @@ +use abstract_ica_client::msg::ExecuteMsgFns; use abstract_interface::{ica_client::IcaClient, Abstract, AccountI, RegistryExecFns}; use abstract_std::{ + ethereum::ETHEREUM_SEPOLIA, objects::{gov_type::GovernanceDetails, module::ModuleInfo}, ICA_CLIENT, }; @@ -30,11 +32,15 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { let chain = DaemonBuilder::new(network.clone()).build()?; let abs_deployment = Abstract::load_from(chain.clone())?; - let evm_note = Contract::new(EVM_NOTE_ID, chain.clone()); - let evm_note_addr = evm_note.address().expect("No evm note address"); + // Version check + // TODO: automate this + let evm_note_addr = "xion14fc3m9zaxt23jph5h3rxv9wps260jwhjqkkqye6k37w0yzyut0aqeh8t8c"; + let expected_evm_note_version = "0.4.0"; let evm_note_cw2 = chain .wasm_querier() - .item_query(&evm_note_addr, cw2::CONTRACT)?; + .item_query(&Addr::unchecked(evm_note_addr), cw2::CONTRACT)?; + assert_eq!(evm_note_cw2.version, expected_evm_note_version); + let ica_client = IcaClient::new(chain.clone()); ica_client.upload_if_needed(); ica_client.instantiate( @@ -45,10 +51,7 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { Some(&chain.sender_addr()), &[], )?; - // TODO: remove it and make it multichain - abs_deployment.registry.register_natives(vec![ - (&evm_note, evm_note_cw2.version), - ])?; + ica_client.register_infrastructure(ETHEREUM_SEPOLIA.parse().unwrap(), evm_note_addr); abs_deployment.registry.register_services(vec![( ica_client.as_instance(), abstract_ica_client::contract::CONTRACT_VERSION.to_owned(), @@ -67,19 +70,13 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { // network_ids: Vec, // } -pub const UNION_NET: NetworkInfo = NetworkInfo { - chain_name: "union", - pub_address_prefix: "union", - coin_type: 118, -}; - -pub const UNION_TESTNET_10: ChainInfo = ChainInfo { +pub const XION_TESTNET_2: ChainInfo = ChainInfo { kind: ChainKind::Testnet, - chain_id: "union-testnet-10", - gas_denom: "muno", - gas_price: 1.0, - grpc_urls: &["https://grpc.rpc-node.union-testnet-10.union.build:443"], - network_info: UNION_NET, + chain_id: "xion-testnet-2", + gas_denom: "uxion", + gas_price: 0.001, + grpc_urls: &["https://grpc.xion-testnet-2.burnt.com:443"], + network_info: networks::xion::XION_NETWORK, lcd_url: None, fcd_url: None, }; @@ -92,7 +89,7 @@ fn main() { // let args = Arguments::parse(); - let networks = vec![UNION_TESTNET_10.into()]; + let networks = vec![XION_TESTNET_2.into()]; if let Err(ref err) = full_deploy(networks) { log::error!("{}", err); diff --git a/interchain/scripts/state.json b/interchain/scripts/state.json index 47248133d..ce2d27ea1 100644 --- a/interchain/scripts/state.json +++ b/interchain/scripts/state.json @@ -115,6 +115,7 @@ "abstract:ans-host": 4, "abstract:ibc-client": 8, "abstract:ibc-host": 9, + "abstract:ica-client": 1129, "abstract:module-factory": 6, "abstract:registry": 5, "cw:blob": 3 @@ -125,6 +126,7 @@ "abstract:ans-host": "xion1wx0qjtlz799pfxl73y2f4dv28nukztpmq2ztavk60v534tat9cdskfcdvu", "abstract:ibc-client": "xion1qeyjez6a9dwlghf9d6cy44fxmsajztw257586akk6xn6k88x0gus0hs2jp", "abstract:ibc-host": "xion1jfgr0vgunezkhfmdy7krr4upu6yjhx224nxtjptll2ylkkqhyzeshq0c0s", + "abstract:ica-client": "xion1zj9zvdtcah7r3jdf3egge7gnaklraug6twcd4ajus68vhqly6njsx079xh", "abstract:module-factory": "xion1vnj802lyyupfaez73w7axfs3xveraxen370vhcnumaufj29r5rxqhwxljd", "abstract:registry": "xion1cag6cwygef6fuddgq2l44py7crpscufrza4mt3rum2axueemenmqyfdesx" } From 93c16cf8e61562ba2ad02365af80e5c27bb31051 Mon Sep 17 00:00:00 2001 From: Buckram Date: Thu, 22 May 2025 13:31:55 +0300 Subject: [PATCH 10/10] union deployment ica --- interchain/scripts/src/bin/deploy_ica.rs | 22 +++++++++++++--------- interchain/scripts/state.json | 4 ++-- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/interchain/scripts/src/bin/deploy_ica.rs b/interchain/scripts/src/bin/deploy_ica.rs index f468ec6b0..66170a494 100644 --- a/interchain/scripts/src/bin/deploy_ica.rs +++ b/interchain/scripts/src/bin/deploy_ica.rs @@ -34,7 +34,7 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { // Version check // TODO: automate this - let evm_note_addr = "xion14fc3m9zaxt23jph5h3rxv9wps260jwhjqkkqye6k37w0yzyut0aqeh8t8c"; + let evm_note_addr = "union1uz8gd9z30thd8d8vxrch5m7s6ryeamfuxmh759tq53ww76lzj8dqkp97q5"; let expected_evm_note_version = "0.4.0"; let evm_note_cw2 = chain .wasm_querier() @@ -70,17 +70,21 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { // network_ids: Vec, // } -pub const XION_TESTNET_2: ChainInfo = ChainInfo { +pub const UNION_NET: NetworkInfo = NetworkInfo { + chain_name: "union", + pub_address_prefix: "union", + coin_type: 118, +}; +pub const UNION_TESTNET_10: ChainInfo = ChainInfo { kind: ChainKind::Testnet, - chain_id: "xion-testnet-2", - gas_denom: "uxion", - gas_price: 0.001, - grpc_urls: &["https://grpc.xion-testnet-2.burnt.com:443"], - network_info: networks::xion::XION_NETWORK, + chain_id: "union-testnet-10", + gas_denom: "muno", + gas_price: 1.0, + grpc_urls: &["https://grpc.rpc-node.union-testnet-10.union.build:443"], + network_info: UNION_NET, lcd_url: None, fcd_url: None, }; - fn main() { dotenv().ok(); env_logger::init(); @@ -89,7 +93,7 @@ fn main() { // let args = Arguments::parse(); - let networks = vec![XION_TESTNET_2.into()]; + let networks = vec![UNION_TESTNET_10.into()]; if let Err(ref err) = full_deploy(networks) { log::error!("{}", err); diff --git a/interchain/scripts/state.json b/interchain/scripts/state.json index ce2d27ea1..107d28738 100644 --- a/interchain/scripts/state.json +++ b/interchain/scripts/state.json @@ -69,7 +69,7 @@ "abstract:evm-note": 79, "abstract:ibc-client": 74, "abstract:ibc-host": 75, - "abstract:ica-client": 80, + "abstract:ica-client": 105, "abstract:module-factory": 72, "abstract:registry": 71, "cw:blob": 69, @@ -81,7 +81,7 @@ "abstract:evm-note": "union1uz8gd9z30thd8d8vxrch5m7s6ryeamfuxmh759tq53ww76lzj8dqkp97q5", "abstract:ibc-client": "union1pplxw9myj7tskvku0h2r5jzwwyyusseavzcndr7cqwen78dgku5q3gm2qr", "abstract:ibc-host": "union1v4zdknr2js7cngh4ut67uutdexcxlv2dnnuhp926c08m50aukqzs2f8eyx", - "abstract:ica-client": "union1lt5dwzyqz3da08v8nsjx5a8qdlrdlqvgrd3svs55hzzcdgh43zyqaaejh7", + "abstract:ica-client": "union1xq78p9vedrfm8mrme40ch35j6yxtp0kqfzjh99mn2nswkz66dxhsct3vkw", "abstract:module-factory": "union1vnj802lyyupfaez73w7axfs3xveraxen370vhcnumaufj29r5rxqf4t8dl", "abstract:registry": "union1cag6cwygef6fuddgq2l44py7crpscufrza4mt3rum2axueemenmq6jqp05", "test:ibc-callbacks": "union1vdrmaamhznn4ejvjwc9g9fx6cruaj36naaqtm4s40xeen07lgjsqnpmc0k",

8VW=hF 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 literal 382688 zcmdSC3%p%bb??7k`*F_R`<#{JBsqBiYi~k5X`w`mNs2tO&XtEBwbEYu|I^lc0U;Gm z5J`*{`&SYmU{q|QwU%1iQcDG^Xxh?Bt=6MOMT<3Bw5Vv&%f01R+QutZ+j`6W{>Gf^ zvG+L#0!DlPLC;!yuK5^qj4{U?W6Uw<3@&>4OT!=t!q0~5E{yi<3G^r2b78zk@A}J+ zkk^D)9t}NshDvYR4}P`W3vX@zR%Uf|T^(E)RM|+g>fE#Pzwe^A+27z3PICFTLopD}eXQ$(NFdf6ZnTCH609 zCJ7uf-flMf^L~B73CXFy^HUKFIlZa=dsG6@qqC!@e{m~~YUpB<|05JW( zX4qZP4FhWG!4|54`af_OHC0;w=&0}+&`_wKy;jgll14Kc>x_-j6zz|XjgLo-FlfA`W``%Kw{6(m$1T1!{JTH+Gqyh1lU*;wp#I8 zC{6QMhWGGagPN8#*Tj3meDB`*ptC2)Z~x*)?0Hbn)`z0y&6jR}>C1M#DhfK6UGehW z7hSRYGL5OdVQc$U+b@0vuh)bPu6PN#m(|mDy+p<8 ziHHzdd)Y1$SC%<1e%Z@k`U?oy3!Z+#GnV@BV@rKFW$_QsxM0)bAD(`})A=xd!37AK zi!RuH#U*jrx!{6Jw_kMS1uwqn<=f+E?C;>_JnVctd`I}!_}Am#h;NR6ExswfCH|fG z?eXu%x5gWP_{68p{Lqj5Ui^;uw)pn=XD_?-)A7%r{HmLym%R8je-T}L^-uib|M%+o z==1T1qmM*)N6-I%fBL6?=0E@E|K|lSIR7Vq@}2SThCh4RTf$!ne&Ylc=+k?m!nUHpRyA7g^%&yo1$Neej~au`a*I~ z^d8bL{gdb~qmM?Pj6M;4I{Gpd{&I9@@}BVH(Y?{fA~p2I=o9hJel>djC*!Y0ABsL3 zJsN)_J`^2_J|F#A^ttG_xABevc-yeT2{vUw* z&G_5#gM529{=4{V@k8-{i~l+P3f~@!zZ?JW_}}CI9{*eXFY&*U|MT&+$-d+h@eRp! z$!{gEP4*{mNM4`(c5*0wcXCJaJIULVyOY02KAPN>d@T8R@~LF}{hyfnQgSoHY|rsQ zp6(blHUwEX69t2KCTjPSEIcVl&Pujr{0y?>Y`vuizH?qr##YoBTwe~VYIFIFN;nJV2K?QjNLe( z6>{JCMsmmLU&LJiQo{R`5Gf&Y34f}DmJ&jjFt3Cz37xD#4+dd=&ECCxuR4c*1zBTb z)ZP*$9bUuDbhnYGa~p!rM-dqRVc7ZSeE_^DcCrXktT^&+d?^VV>PEI>kU-=lpPC!A zvMBv1)H^9y-;c6nCYtWY!nj_i1`UTC5k1MGQ-hR8ygBM-ElPLi2F?6|>w&HT$)9UfH*43 zE1X67fxiX9ildsqw2gW}K%57gqv=ILe}}ibY#>7IldCyey1D-WliwUDNc>Ykalu#%(H^AEXX@^(Db-D2ARfZAab{PKme6!FdQ_5>a|3qbtsf+jC`>jcKsOX z0(d1sfU_<^S|bvqRZ5VS=-pZ%K^7_CC5Q?*3G&^2;JP&`LAsJ4V~*h^)f!@Wq=Xp0 zA%;(c--6+Jof@<%hHqqv7`|Z)?-;pbmB9Bc5fKE7n_Iqj{Pf(M7&r5~;%43|Zf-el zUaElg&J|GalKc)EW9nT}$;XIMvoQ|NgVr7TnI-8*OvdR)f1EMUp6mBq--+7DAvxVoY_Rh>HHfReH?y|--pml_-E4x=bUMjDDL~p;Fa7mUrOP7c^g=Qv z`DgXLne}LUG>fP{u0mZkU+^R;o+rnJ=0H42n&-)J@no~&$#Fr|CIe6x*8b;c}Vf(88cxc@{s1qGbZvhD)NkJz_iI=B4aFLD4WQr*CL!V z@fvxut{@$nf4c>we*Wzmq@DLAVav;w7J!><0oHcES;`iE!sH@G!-&D}Bx`!v(tsf# zMzbzkmMUPxa0Nt+hE1}jj#R2iOJhtE2{UOZfFx`|x{wQw^{bsXb|ah+>2!fwfH@i1 z1I21b-gsqtcgzqbIjx3WsP0Uk8g!|JFU+KXK&~cpP2-$oPfP(}cfHlh5DxS8bN!BE zQ%&h1Y%mxD70l&h)hyc{AP`6udTLYccsbRMJ4p(4y=W4HF?g5-P%vEQ{G={+*G%F# zipf@;P8>(6Hzn)!G$Ciqw1D1|zIIa3U8`=j!D%P`ps8pOaAP#3Nr^eo^NXc19ZP7z z)uEd+jd4Q9IE=;-#%UD*fdc{5a*XqpN^$$YfpH*Z;$^m22v&76+x^hDcKTry(h3=4)m zkJK9_)4mif_L;16G?lK#i$*VV9b=G24uKw~L3I$s4>b6Ztmyq35@UHv4+MHMpMfe8 z9sFshza43QInc5XcnI05VFdQ(7S7RMsezR0On?)U6Vto1+;XrkXbLgYT4*y2&ME z?lFzzX)t$7n{|C-Fr{xpPwh5Lly8i>0%?pqWSlBG1-eDkhAE*!%OR05iPFZL%LoQiV<@VE_Q=Lh3T_Dt0LJsL!|CJsyF*i{o13Y1JpT@9(45z7d}DNLI9R_WxR@Ux^-4a& zj{Owm9t?L3#^}*l9zHAF&12c-=t>@7@Ny-d8eGcb)XmW)?%Rd#+l$<<^LhLethzaR zA#db5j|Upk^1gTt!kNZJ8fY7|2aWU{8d~sBFzAYF6SadBHJZ*dDjoB|cl}oW&d+}& zKnY))XL*wD3kNX;&@wfb#97xkN4i`mH$eyXHe}ZV9z^ChcVv* z3=N$2phuNb=`>!L^81raEMoWp%mt7lZzJpGVR}3CvEk6oh|1##XsXVels<}ldlmRJB zb?M%N3~S~+hjd0uRW|D;wVLS6eDHijB)tZ%ev>XYv(DMQDB6=XPYeQ7|KKOc(aIkS zclKN0C!8~pa8eNFXYQn5t^By1{T`1CR8uc+?#?E6S7MCv*UVeP7ARMED z<9cNIuaPZ3UgETq^}w9TU2CA{@rtdWIAT+HvTrqo!ten?fiK9;)2)uK`z9zL32T?_f_fs<9Ug zRbwwuC~TR~^z6laXYA|cjcdfo9_y4(N0SvZq6^pnYYm~z^S?*i;|{P^ULQEVXAW&} zG0gWX=s134cJepyW1}0HtwPfgC840<8+AtPKf$D#{|0%zlV&3SwW^jxnon&M(s?o2 zFq*(!4NZO&f-MYJ8-?n&98a3P>*%r$EJU4?xAHOt#k34z+$faQfJovIz%Me13Vy+? z74^D2n7lA}O%CK~zbU-8r8HnX7a9X8PGv}>Z~_{6tlGAt9(K-o);O(4&+8c==bIvuFOwv0(NFZ44fF!yXFSYS9M4y4sL(YDmT{pzC8tSZ^QFk80`K5b zF&?1T-8m4@$x<{l!@^&pRgL8jIHec-2+z?Aw*>!5eVL*!;q!aaB9Uk$*gOruRL8bem(8$9JSLP_yJ zj-kwnEzlJmMjTrhw$FF(j#l=b&sq@c) zfExj>(DU~RP!#S{HVZ;5Ik(ynG?w+1rbM>N@PBTP!ObyzVGXoXa z`?DJIXT_C2%N)S+0NFIs$lBnoyNo8BW7u?ZEKM~ivnT(w+QiQx%jR|rY&BH4*Lut` zLXi32aRaHUw1oEIc}n8VKI+h_i8{0(9E(71Y(YGbLsGtME%UX#yGWi+=hbYPBTc@D za+y!dKBZT)?R-U}1%#0Pa`R!RocYsSIm!A~{zjpxA?Ic*|N8IoZfi5UxKR7C4Yu zGFVA}`(d`yci$SBGES4#frEsZP;g{Z-dh%CQ{aFGwDf`3WGX}L)Ox3RaT44C!eE&G zez?GoGnJKoDw@zRbbcxUoff=u4)fRqk`%>yS-xS%V41Xi`iJvOlPK(1IL}aVyz`8X zildO#mS)bgHoXHvTX5oIu~6fD;x(`9^2#T^+yUi%;=>G#HZaP-lO+ScO*F-cc+?qK zP1G5O^hATrd%$7_{lm*>x*~Aw`w=N^_Xp2cTQOATEbnQa$$QMuu zp3ajNJlGpH-bN&q2_EM>T~zRVTT-?&B6u`aBCxfX7gUb;wsek`_s-f6hIe|K#uuUh zrSBTekXlh9rEonn!Zf7Y&gWsHr#)0&%nns3sN?aH1ffgubQ^%^XK7vI)FKOh*#%joATnRC1nbL6gm% zVn@?dZ2_|5r>Qnen@rX68&JZHn57E%1xOXp9No^pX`;t1K$defn4V%@8qhpJH)?ie z9n1PrL!sqDIg5zD>u8wd*Q=}JJ~l@QzifT?u{lb3s}h=u&FN&!%Sl~NTb`{f1{$Q( zKwIes8l)=`FQCvh>X8rF{iJx!tL2n9Oa;=s+J}j+d9sXrAdf_5OO7j;JHw(fb9g~5 z7)T4!kPxG3#l+jmCPrk(>TIIu5{@BtY2pZFN5`-E{a-3jH5AQ*Z@eic8Iq+aMrcP6 zd;}k)6!>_Ova}G0by><1%|c;{BV|;Wj+e9HHzZ#sz7MmZny3rYnik_GC8r*|$K3N% z_35P!t<4$*wDq16dbMEIz(+OO(Xq0lAN&J4%3?=3Yb>f+XnLcPC9R`HGz*$Q)u1=Q zIq9FrT_g_`Xf$GjrAm>LcQ{2}%;6M9Y`qe*>xU{qBOfWEWs2cSV6Wj6bzVUsS&GBI zSGUdRW}5XJ=i#Ja6|2WEgohcCxhd858PlyzMigy4-00SLRtZqmsO|ZRB>+RDWJ*~r z^Q>|!qpP&W%_2`i0+nlx-c>GrJ(Ux*N>T%6MyF(c*;iA?a%-&uk$e% zdKzA1`CpiG<{@*=5Lp(;H-dY`?29p3r_-)E=e2o}R>YpgJ1b(-mK4uuanjblWPq`J zh0#u9m=9W*#70`3-l+ww^rWEe8cm%)r(7>g<+thLx1s!|9RrCaGe1(?4uk3RpF@6P zD)ltv+gMvXy5|0%v53qO-UWp{L~db>aUd*5t`96k&)LG77I8yzheRdZ87rV5WHE?G zfKx8a_c^ZxUYSfQwIObe^i6Pf{%5qdo*&5g#uDDNXIcno3z;qm-`m z2`;m#mfoTHq1PM^E*Bgu!KgAYy)J*md5UAcN-t8x1H;NgT0v`ITl#@eL*DXQ%*%xEp;_PZn&W`q!uSEXG>r;U;*3kP_#Aw!d=%fd=&uM1 z{qX~ff)L=3En$lFg^~r4fnN3~41kIY*@Iv+p@~Dn1Y5(YI}HbYEKqHI>6gUJ3`QsF z%*pC#FACa7i97kDci>O`D*jaW_MkkgzNRGsKv6PrCX6()Rj}^U`%U#D@kgjfOZv>+NQerp$oSqzPHa^;;t#;nt3T)^?Qsi6jh5(md3D!%pZMyXZV7U<#@6LHZy*2y4M9MJKun_h4SO9%1b`cRxfG`x&vBxhr&h ziE=~e&|1E)oG73fx1g*{!C9MwWx^GLO#|KGip-2*uLAZ0ie_SdMCvF$5d97x2AsvB zc&MzqYSZBs^yd$W&BR>pO$Xvq?tgWpD-Ieu)(P;akeE^=zEm@5n0K{<;g0NR)e5C?6rVG0J*r$s+Coq}NjbEaTu$%XC~ zgWMc~3Tdj6a1c5LBg2FL&Uc|;oJ_rt=XEF;(^@TVGu;-eY*GSTEQz!a17dahUXx-? zt(jdayeQ}dJ%P{~V%sd7U2<|vp*TLlmgRnCOMI^M4Xwi2vfK-t_Hpi(c&ohyFW3^C zNo`1S7Us^>!kjg-RSR?U(XIN-Nb%Cj++K-Dn^g&-AP7y<#o8hSfC!QOAwiHl_l0LM zob2_+(8+$5J`xwy)$O~5lJqknff}H`%fq6yCUf)m!%x(4V<>fNF8{)xmg}@aX?|b* z_r2ARNl2>|5?in$F2U7H^=+z0lOO;>tF?5HMH<>xh?R+aD3;$(AQw9bw7`;==q0&l1+Y4u?T5^fNmmFg_iMIz+yaiS!NUaMT!mDkiLU4&Mc2k8883>4Y0&L z^h_lfJ76kkeq4t1&+zw}={W z(S}2LB=9E>76)aQo#2)bSL7$CcZACcJu4j75M#$EP(7L#RijnlR2ryn0dg)rk5z5O zze%P9IWfh;3c{g?mxK9KoLmaTWK4>n^gllk&7~J+<1^9TXaF9cpQB4F{ls$7K~LT$nsbU@)fQr_-;HuQe3)UhFA_m9Flc*!nf;wH@R`0|lc1GMC z8&8_!WBhBN&$*(g4$7xoEU4w(9l56Ho(tC*e~trToQSM8yJ*|35beG!C`H14{Fg2& zgT4J%+4&=2@_YT9w6Br$1xdud!k!ib8=&PW78Vn92T#{hcTRlf>0w#LPpZ|}w}zaK zFfH`RO6@)uW_3Up82c~9%YU^O!)m8<6+8QkWFjzQkeQzc(d9ex?iCuIsNKmn43IFr z1SFxVg^X*YV`O?ic|oBoDV@PYpJxZkeoD+5AJB zpQ&EA^2&gVqyp@QC(v%%IG{@HCQ_H<7l$NpNBQ5pdC8761x$PoHfk#tAY;sbP5 zF5*SH+;D@rMg$CZ!x?jzC&L>IQ>YH;u%${}RE{>FW({nVxM8GSwI#mP<{9aC6y8+P z2qMhzmF896qg0chdX#&N9!bj%S|)-aa?x^IV|@`^UNwqKGChpy!K7s5qN)fXQfHT~ z)TX-7pZH5(ijVotmQpzU3@OrU_Y326k$o<23A?ymj|2{5FNrbn-?kmY9XcOHw@&We zBh;3WUpC z)iS*h&Q5hSc%*uZOVc${Gz~YhE2*;lj9u&vZ_}G9=_DedGHnPtZ)ikgZdZ$9qg)i1 zWEsv#xNCr=rJ1Cgz99l>7%ArsTF!k+db`h-I(b3I<+V_#HIKIK*hC*_F(JsslYii& z^GqCOR<`mx`C(oUV(@bcT{QWTvS#|+nNo6uXQRlkL8oqb^F~DJ$ z-^^f~Nq-_jO&~K46I_IZnV#5}7r#IR!Nl2wv}$7Oq%SvSW0`nXH!Ee>1&#FI@g1r< z?;Mt8qztB-g=QjX9EbUsCEI2Yr<#SP^us*1;-<~^44ej1TaVKC!A?OYa zZmB2R?wb5$)0L$t2v07pQgAauVc!6`N?R8r{P8vd1hcZyHZWwN zewaS#($y)`z&ro8I-K^$C=d?HFeJKh67IocKuDdU8z<$cSq1(KWhPQkBFV|nmMdSY zAfSSWIooTi_ZU+DX8Z4vhKN{6Mf3Z&^P7HYo*r>N0M(k?KdQnL9=El3X@mFL?{YFyX$1xPWdne zej;r(OVqaJ(os7&q+$KEjjkOW?H1UxQ~|#=w?IrIf4gwfR+xh1mEnhX+1|Fv3%Y0x z0wN^+l}tTM7bcp)y^A75@kR68JDe z7Z3y8nWh3_VVI%quoN^I_I=s>ua4JF1Zen<M~E{D6g*`TW`669fEA1Ah`y5OJ%|pdkhqyXUF*9eQCfa|SCJ@M zN5{`H!8(6^Fym%*r>0F9+ttgbD# z`@>=QD3M@btq}5SV6DzpnDWaMyV`-pj#<-OG&YNjjNjGB(%*-O%$Inw{=hh+frgLRlo+XE1<#4flXp8f0)tNe~)(y{vMOW zZdQU$tK6DJB(|l{BXTvT3}Pp?;j5b1HnYgYwii)eY_oR(u?UD~3oTa=jhyxzjYLv>430Ys$W~=p_tm(v zk!a&(=};d(5`jr2*e_=MTd##r726WtJ9O+yT7{T{Fme)`Scu+KcoovH?Vo7VMXXEa) zC2T=qcwEb~7IRpy#iRywT98KXN7IVMb*Cv7n@|AMG)0Uca3jvBX`a~a|Jz_$<;Vd9 zXpN}bQbJ|Jtn!QWgfY1u(QZ9W@D(feqR1*%65UKgEvVMtrj9NlCX?d$8c3|TIXbZR z!vckt&K%_kQJ@<8Y#|D^1f`WT?DjJDYSIZxJL(CAUTawvdsUuFVXK`W)vWkx9n`9Z zNr0_%JJNue*IE_Y_bU+ms{t^f^egzPYYla-n{-FfZ1P4r77)=*7LGy8D2+S)nN47b zGuh`(1i0`fWQB=ADPu?hC&6Q!G?u&a1jmo(2}Xu=2MNSORLB#|*zEG=UlX_wnzLsSa7R7CL#;372~M;yQX!-81p9apMLwykr6(Bqu)q_XpiYT0B3wa) zflX_wH}_`(;IbdV{{rZ2n1N|^CLA+tK%{m3_$%xs>+;jzcqVX=F{W}2d(OOyXv_74|JT#R=EVk z&}UXtOE6`bn6H%XFx&Y`)ET^|ei|>PUitf5B@oQ1R3q=I2a4ue^4BVO(c^$Uy%t8C zk@=xFBZo7-GB+qT$vllMi%sf$;N)o4o$r~P z{Zu?Lt66y7O~tWUyKPOytlyp*yc*)-ioS|po&j0bDc_k4V@ZwJB5JPS$+}g4g@AyO zF!ajx*;qC|dr;$?Q@PB`WiiKj)E^(7sx>vZPCQ!^cA^LaY3wtsEjkb!OEOik@%;|z zyP5@AvW*mKC~zzY8wZHYMwx65JaCOt>VA(3=t%Eq5X4 zHYrThzMd!rTMLX@f>|>g_SZ=nn6BFS<_)xy45=j3ioQ^%Oml=LGHGRlx=xBF%ND}%f*~3RkN*4gk?`c+2Z5$Utf_9`P zX=HU0RrU^!HikOQNEU`yg5}QclKFZ@f?)slake$7Q`v1)C{(#FkV2P<14XPIM$xfEE-pwpypf zA<@O3g_=t10RufAMqUxN$l~c*WN~cKUrS9jTsYO63Oz2ATT+4kMg$MmIs`oNm9D?m z!lse_Udb$^sbC={_%ehE<1LCu5{b1I;`69N6|n3!6bi6bYim)q#_CZ|2@IHa`uz~f zM!DXU-p9>>DQ#wft*8Ud0ur95dCPFSmZ3AP>?I9plc3gzAeH2mlphmO{s>ZqoH4p_^N?))a|#c#nPxVW zIF-J@a*8HJ7dk5*h=@Nu%?XJ%_~s1`+e)s(lx~;`B$E*ZekQuI>>MO#kQwH6vH_ND zgvj>Q>YxIxfm*nxG#3qZ{V=m*W3;=^QA$Pk73plgA+#e6mIfWgw&<>w_m~y{N-cP@ zNe)w=`rtSP<+8hqto00j7l9e{Lm&203js-p3$Sm2pHNeNnI!;nP6qF&VeUGQxzOWR z5kz-sRe@)<0vzY}o3XR9k`1P5ZQBwbWRlgUQt)ty*Wrn9g{Ye`uWsa{bgWpKEGnSG z;gtGZ==4_ML82S?szyLO5K5Sg=h4}0&QRolrql-|%R0rB$`GT)TNasmzh1~Zn|hV6 zHubt7gGHuZt*_Md0>u1bRHGxAYFluQwvaG0v&gKiC0>8=arC7tVQ7*iz(tcRL#3c| z#w!Lfe_4fonMp$!^uj?k_weZx~?j;O2z0PDn>HIwl$>I6*m!7{g5cv zD7{2`LvRJ+r$zs8GJ6Pqn9y3N1CVhxl?g1Ns_34HbYz=}f=7lVF0I7pE#05<)E^U( zYHX+{i0W+`RXCr=c<{Xr$2Lt}h2%1dXDw|nf)Pw|N$?B1wKCe@2Pj5kCxt}a!b4Gr zA0T3#Px`fFgfxCvh4d9k520;z1Bw&y2pOB%OCrC_`d#vmw~8TYBolw8Ccd|86ADCu zncQNhh+;B(h#=5hgL*-?5pk~D25`+SVgT1Rr9kKIl>T=_+fGbiJ0%H8YQ~XzZq^s- zlu13AtSCuHETmLa-{Hh|C*$UM6HVI`uCG00!igc*gw8yoiR0E#(Lr6!Vt{9nE|sAG zWtE@(Ow7|JqFgDYR9)^3B58rDr!WB6RAjB1NUgWLZGawlSn`gkqAPJ1=MN(wW37h` z3NaZgnjcq_*)IcPY8amCEi#$E2-Ja}hYURAXCaCU!6@y=%<0^V#R{P62wvYcakQo? zgJr84xV_vYA!8Ug%GUA>O`-$`DNsTziGK@lY^p#K$~Xmp^XmLmADN#cI;TgHJonn! zh(f@MzKiaOwFQf`(y&$FJYN1hI%nNxB!vMCUp-spKt)@VI)pf+og1Y|!ahM!!a~}0 zT8Ql%ybsXYyc!p=S6$;w+0wqV(wG7H?MAyhklb;N>P2YG}i6C38V0{cIpX6g=nl{370#^-Z{^EKfFauVQ6x#s$ul z)*B1}?fLEIC&?EO#}WAB06DLY37gIQjm0mF2HW1-tk4bhyZO`ImVvPsP-8Q%D|wdP z&OPmkg5P?NNR0=@WQQC+Kl zNHJD>?wB3FdN4hk?UzwCeVcXIdM5TnKii-b?I-Sf2BcLx%W_5zpk|hu#i}C_wL&N4 z@SlM*H|Xk^Umeg2qI`AJLaf%WQdiwMJUu`&#`&Sdm1zfu~TVO z6&fJx9Uw|`@SqDf%+2MpxSg^3hPuT!zahH`lB7VB_XsrP^UQof@cr>?}`B{qn-OVZym#c5}ut<}8ju zF^4NorYs0YXN3vdf@^4~N!~G+Nz~$mE>Vl&$@Lb78)BTyVJMSmg(YL=iHI&M4_QsJ zf|e_qs6Hyj$^oX%ZSsrFm2A{HE>2ZdHf}==5nZhVC;VUzL7s8AY+-CcQ3{!Ip@n13 z2jZLYT1zgX)l#!%Wlk;o>tGO=@=K44dNuU{3Tg`A z&v$~k6gTCN&LI-klm|yc&2w(kFmHa-a8)A(Dx>IZQ+eD(By=)OIhX2#*C3eo$a{XLJu-vCv(7nglepi9U(VV#;hOsACR%le{eMW?wyjhW z!6}2r%O(8D8>1Jo$yLqhgx8qqo~GN`&9yZy}vouWpxZ6R}tsl6>{ztvD< z$w{hU!f?s}-R8HoR@+c&x`1+_3xEaX&@LIRnA@jGspDRK#MLjC@`eClag(9dCj18Th^K#``L9INZQ7`&WWVL2b!nN3@u)5 z5<|=8%)St|plytq>C16(UN4sc#88BZ1(Q0UB*l>Oianj9A{2cnW2cVDk|B5st49lZ z$R~d^NT1DKlI}!KM?^r|`Ijt%6ELxfNuO-0M`|*|$*zxyY)bZ}Ij$=N=&E9JDR`QR zplFsSK`*PM-BGict1Uo2Sm z*;-aVM{~J4x8YzZ>LRy?kHJ}QQ}EV*OY*Z~lTZLlsgDIE#WOZ7LCiSty9r$e#~O+~ zCk!l1@6#^9Z$|vo83h9(n~7zHMHJ#p4$rS$hcL^n8WZJUZ9weCoa(nIk_1DAaEaDr zto_*44S5yY?*rmH4~J|cK-2W`DMsHAmd>Zeoq<*D?uxO#A{%sk0)7J9020X;z*eVO zN$7M-bU6*OSLh}+oNZ>8K2LJIMbC$Sd7jq;K54IiUM16>(^v>ZBIrSEt=Z7o5;%sp-${#JIu^-fkBo5{&`4%w!g zPxZsdxOm}Tx3RX%egSvjFgM$FSaku5>^kk{D0}08g2s3O3py^HxUig)TgHlX{2&5W zoQ$DbyrQ2?_wC4)A_d+oUSYuE73T7;8aNfy5<(;yJP21ty~ z2Y)JBw`W{ysF~f!v#_(#HVHVSn`GOuw`Iplw!tiR-g4WCH)qWyZk-3wY4eMzUhd#r zn4yn@8}`iNVrzq33T|sd;ufsF_4;|OZ`sxcRI&1EC#y#+4kN(3Rkcj+G`{M~j#Ltna$Y19Go)If_GD890m)#SGH2os5Q{ zCB?@KV(CheGofn^uNxh#c4V!=3J`+TK&~2g)%qaASX-sSD##EMMFG|BP9z?5#x21s>329W22gg`M6lfD{%bZOMi~pBkn`Iif6*8&0m*V!*)4q}8yZ8O8#kpA=iT zIL4rgV=P%j${sS%E5Qs9p+Ey@BuzqEim}{knxg*&4o&|sV#GRzZ#^!<aN4P_$5@{H{hf2jm^~;r2KZ#jOg0!J0%VCe{(*Ffxt4PtdOUK0y1#!eMb} zhsU`=TQGl=e?ic4hu%@g?cW!l_=x)=XnlaN^}r=U6r26xpTm1F!|ddT2GnEe0)VQY#r# zW~n3hMpBS#!zt>a*{wf7wNg7FOSLk7BB>@~;e;%Nkvnvv^2|sYVfWr4;pROvPpT^; zo*5HviyNvEaK(S6(OP{^pJ^|{oH-l4+Rzm~%C`s2p;I#_A@a?M(89yY^=&~c9@ck+yz0gft~)Wi~o z;ce=vfJI?MI-08Scs(tkHN)`TD%_&**17cEPqy%r#qm(fi{SW(q5h+y%gjH8Ia?Bl zV^Ky4gv-|x=q{D)vS;9E`(M<=Q6f+Q?J$8@3ON!24HYi&bcAOAP~nog41yyWK|_U0 z>Ovtuf*y~$LuKz4jnI8`GH=mvNnIxJQR?C%^wj+`9sKnDkWy-53FnZg}*1x1wqgPQ5p;Ix=c-B~!)qN~>1pmy(S?Jx{vtULGz z?o>p&g;S{srR&@=(zQ*20jADXU1M|>UGwx1zt^Faj;yr;73Rb(Es7VL8mHh0!L1x-7`3;_V<2GoswY`WuMmMUNe;M{obOD@>LYpvfLap?Q4NCxY*0PC*<4|W!g z-2}&7KQ7#*@NBtVqwq6_ILfodNnz_*IA@Ci>>dckPDzL#l))V!q9Ri!9O+1NtSx&_V3D?kqyJl^oTM6k720zq44z#o_6zOUGV`qbY zpZ{n4f587Y@c$E>kO_+e3(dup9c!CRj|I2`fA;>*-*LG2vtX$9^QZK)p0IatLY4XI z*9@}rvg4|R7w+uE{JQ5ifAi~a{Z6xgJn#PBp8m11NStNIza~2_8@%w2*9-vhXQ-cF zuL1mHvkm+D8?yd+y)f(dvrcyW?3p)YgV}KZzWx9Z!u|bYN#k)mE4H0_vwH_txKC9z z*srEmAwlsw$LZ7FK|edzQp5fUEDlw0_xsVd{7iQ3XUD#3Ft}|8%_cv&j+o*3z%GaC z64yJcvtZ8LdB>oCLsc**afea?GOLoa{tbP_;MG#B>r42mq1!JgtTKvkd_HsVEm~d4VMN;t2zMksvkn4^pE4*k*d}gMH8tz z472P6?NNxG2SfoRP>%Ql$DjI?X2)7amqWVtjIl1MTbYR1i;)eeY7-w2cv+pQ>BD@_ zp2inWH;9ARWIv?r>EKv#6lKok>knne;wvRkk*&?gX4yVt@?>`TmT0e{e*b|1_G+Gt z_ucMs36F!1DE8<=-iTwoTu>1Hr49NP@_(xe^8FT`v+N=xe93K(Bch3TB`ZWIlS*k< z3sqlfKZsP448D|fe4K-0cs|Ipo8GRhRLB?bYLQWD8_{sPs>?Q86Ut#tKl=BAPOU4+ zTI6Xh5;=ae(l;?Rq<`toG0XR|4J5H`Qku+|^#skv=t5on!S$tF_(A4F3S5eb4Ps!1 zL~k$8e>DAEV!_@xhuGdg6l=e$$BSHKnT1Bet=tfY_jw>KWiXjf@6M-RF<6lY=Q5gC zz{#LJ%{fD1Xd)_I&_vXNJl2~ zO>DA7GH_9s6o>T|)$e+XM;jf64%4|~=x}aP)kYKj3Xul+&0j~5ZvkuXWnQ>ZKW>2~ z+`TKtEH?_vj!lGk&MsEen&YQSjM|Xa5r@=Gyk4mDx2E(*+iPKr^nFPOP^rew3kf-} zxxDRVAksMN#qQ9JMQ6iy0h9*Hu@%u5*z3D_*7K6i0^Xdi2$x1$Ahxj)_}K!HmvY7j}T3KJ65>HfIwLmuFya(0C47yx-R5*_9x+lKLlEvteqhY z>+HyrR}Sch)JOgh&#~jV1{M|;bD5I*Fb2;=?sw)yH!*7CG7!tT{ON73G0@-)LlDk!<0+tLpw{}o+uiL# zO*Z}_#|d9sjctW??KT`Pa^O0>J}IzcR}{yroo@b`AFbdH-Si`7NZ+ZzU}r$USqtkE z((C`Z+No-?ic0QudtCpcsAt$X<8kN%(jVX_%~~8OL9n`zT=3Otyy>jjW@IX zro`FW>$VW_Qw01V9^g9zZQ93P61Paeng`M{49n1P2Itum4(O97OrZ0c*@S)>8K6>vf8#x;2 zl@GK4|G-zicktywE$X}HDAdOkP}aBiZ@*{wI(=ByZCebw6HHT zItGBo7&1T;0}^B^|NHOE2l;A~Cd?Dd*t-XC_T`#?;meBJmyUL_M}_1%@Ik>{lU!n3 zC%MG7M=H4x3=zY`h7+P4_*8l;iHvSZ$h*pR;0#H~svV84#oDp+yI8thTvj4FB9K+I zh>2Ug`o>Q&FjTp~VEogo{GL12T{HvkSwSv1Fo2IT>q{{7<{FovKG8(Bz;MF*6yDg> zB+J7KZlVL1GSXt$Fj!u{JN&Nc9`1!;72~&jmUz9%~Xqf+l ze$MEtz8f$bJ^CsE>}3DZBd=ucf|B>N0oOGdhnyTWJS z&qC9>gtWmheWqxH6=*YFVf$eT>Q-C(4zba6-R|2U--qW=$EOKVL0&&<0PRhfrIcn9 zx<0o_C1~dfVyz7&|j% z`Axfxe7X%P^0z^m@hJz`&^E}^IzKq7o$&-zI|HnJ?^OGNG2yl+=+3tPe|0B+g6`x; zr8|H6pQ7X4Wq^l*;yy6E5D2tjkaGTzb5Zph(Kh#AW)^fdiC;-a;qY9B!F(dlvK(Jx z{^fu}-`6VqKj|g;Yc!|hMwfwO&zNvc>t*^h*&11(Q>5r?o5qh|fL#?;dns^Brh6DNc?3!9c z#>!dMcZ-&At3}qt?H5iX{yPQ;4b-`SK2{79rDZPM+x&5AxcxWWe@BEcr8F_%|Zvl*k#K-2|J;c zj{9=dhP2dT!2Q3D>;J2433vED4t(2sJiZStF|WcCX^XLGaqlC}v4%RQkb!o;MIY@% zMrKg8p+4&KU3lr$^;+_BfzB;&I)N@>38s*z66wqRv2moAZduZ1g0am(gS;?-&LW=) zg3TbOsKT-;62ZLut6(s3oz?|FMFkJPr&!%-AU>h^gD|Zfq>b;Vuh0N`n$gotjdUwc zE4Uz|o5lsajE!=^dRx-EeE}DQRH&E>Dx3u(#)dqT1%@0CIL{^ai+SjF& zquE*|dAlWfMbst9J5`yteZ2%h^#9jt~1n)X`1l@)O$b-9eXW@!$9eB!CAjy!SJOZT43MW+2s4KvT zpV8Xp20JvZk$)+WqPNa-U&PAQB6ysd6S zhXZnm6E5jN!)U;Hh$J+$xgo4D5>Cr_(IV9rR#XteVF{)vuH)QdifeK>yj{dt=u3wCp zP+bPl=k|iNgv%Z)baTkq?g3$md~7^-9d8Ww=dWXkZ@nD!hWW32;@0KQ$>ZH1d2QAq zB8k6zld`*3HAvCT+w_;&YntUf_*k{AmGbnfQMQ)BppNt8E>D*B%}oz@pv_IM8cTdl zfmxZf);g9QE36VrBqXkNu6y=#5J6R~8nFyccDJY?Zz>Bs!V2dy0UkKeT9iZ=tLn{s zi=AsS&NsP{Apis`P+p2LxBX^3M=VCh*ddh({rJgVis|FoEqzpPbuFabW!ZN90 ze1+IKEPIGW>c<7c!i@{2X_w^B^)kgJ-+!y0f!*7Knu~pvG++xkY6Bpuo+zwflSj=| zw!zIH!|-&F5GGl5rjqb5sPK?v1H*&DD-c{~am%gtU=+QSskkvdz?huUIs;j*syN6b z)0cl4$)w}z?YksX+YPE>0;wcZ(@Cb08N&@Ri zbv!2P_hM_CP$i(MJ3gcWE4!`eRToVaZ6H-5Yef&!T`h7s?x^h6XvK8x z#8pyG30FL~e}bE4HOpM3@WI5+ep^GJtL9?P>820IiwIs5VU7mr*dfHA!VFSOY96oi^b*2} zixKY|iRTN&LfKF(3JGHs&YNO^FtJaDD=#qYv-&#a`XhKoivoauPBK4jG3yBtg8z)(1MM*(C#Zp;KH-m| zm#mpkK;bsRx+7G(jOfMF3OvX*onQrsKM$0HW&$gT1j44B4C5W{EZD{>d)^i}P;a_d zDCG^7?2-?8Apb`;f#*XxOs z!?@lY#w{$kOBpaOCt=p}80T4F+`Mbc$y3Mp@)3;dtHU@st#bK7ON=ic!MH14VcZqh znZ<_jY#9+K@^`u##9qtf7h3MnNAx#TTc)^ZLV>weTeYvEuMTZ_WX^NjDtH(djji~J zkIi_hE(cVH#mdIcu`{1|6y}rjP0}>fTg-gYoK`u9u!{{*vCO9zvDOE(oR1^Mqu@eb zui+gh+m+SpUhO2q=HNmNRME>FAT!aXnp2f;r&!=;0cr8nMz2$3QPpk&ys*NTg;8Dq zT1*tXp1|Vj%9g&Sc4aDSy|WyQEB68o>AWySlEUO2wB`oxU_|BYC}mwnb~ra@)+X|3YpJ# zrJ$53gzu1%EdgH2)wZ#+=v2BhOobxyyikVZ%db=@F`uh7{YQ=vmkwu9>RuNsFFN20 za|HrN1#mX;_5>Q2%i^^yySZa=3fPk~*Cgb7FZ@RTrshH&xM34t_3Lo~k9fkl-j``vgc7Sr5m z-Xdj;R^ZiTIz1CSQ&(m2hVa++3Oi`HOQ?PyuX`WkqsEKw{sn`4SX=JQYVNAMwXls# znio@>whUK8^|C|m5(bd$y2MWIa>N#&%*9o(DU;!_79?@(wIH*N#ipKlj2vdyIx+|^ zc1r_dvu0;U*bQ)EB=yFZG*8#_aFN)=iTB`K$ZmHwm?zI1Jf5o}8A9fVD-&vtVXFvl zTPBBz%pnWQg0U3GRj5XIQcM};IiwnKbD4|-yE#gF`7*=qLCyB2P3mjp3}CrnU8DT3cV0uPD~m`NDFL6zF9-Sfb5? z9u#eL$ST*mt*DQvr!1{YJzYtat`|e<>2a>yWX`Zp2{AaOK>uVmxlwnPPG^(&eG1eQ z3b8Q)gJ~8}g8V369_KpooCI#QbVFV7K3VFCsd8?Cf`uACY1YydUmH+mRYKto$PSiz z&L+4k(>50NFY$0UKtyiKWBPMwZ!?RX(~nOcauY1)&(rT*78oCep!<&N=cPDRVO0;_ zKtiVqtMa#*xeU00S^F351B;;&tpkhJ(9BOHwc@3CnnaQoaBWCanHsu(@4R-OR}Fnd z3FB2m59{}s&j4m9^Qe-(=lHE3STxdEPY}Ly7G3(@gR3?<+`RP~aHH@yX%Q~zb|rkHnjFp zqzO`#B7r(M2=Z$}UHPZV^IJdn;UImlR_DX~PTq4=AhkfooVs?T_a+p_9cymE;7P*u zH>TYGAOP#!9YzrWoDQi3ffzF58dARkQawUr6rn%|TO?pvNCiO-smX1^D*EFtkOfww z0;`O{9YVxx`a+PK%qIK$>`5@J3Xfb%Y z0Wmb=ND8DhrdSDRQ^3SYF+M>{TYTEaCw3{w3bqTtRGrofuo}I8T8_u`Jbqe}olpEu z82$L3rtXh9z~Kyy4G7+){>#nAE+e-ISjyuU`16a!I1O7e83!)b``*QwAFv%BmxyyR zXphaxt!zA9t>DjxBkovXqpp_i;=@t@bn;;%Acc>x%^MG(kbq5Exb(?4xd%H(Q z#CUdk`oD1QSZ&bRu075_gk9FizZppz9*kM6siIK75e+7v6?~BF@;pBp4Tx%(w_hg( zhoeE~)ZhdD+au9n<>u(F5Qk0y3kPj11;C><0JI9wV6znfoD_WBB8_P6ci*f*L?bk@rqsbs-I@@2*mB=hZ`Y zOO?vHeXiqL$;+B~QNw{MFV=mLy01zl*s(~(lrL()Br8(6+p2(!o6w3>EaCzNO#C7h z^EH=$8W=wQd)n@@4mz!7kG(#q*Wa<%`}F!-_R3gj=WnxDSh$_P z$zJi)we#28>#cgd-d=Cg>%ZTs)`$ja=ij#1y?Xs$_PU$5f3&wtdHXwidl7FB*xPx$ zLB;3s0H^2j_?)Fbn>Wr48;5BKy6sAY-3h ze7y|=R6Z|34jEf>gK_Y$;@O$Ep(5=Zj7#P7p1ecR*#mTZ0JTJpt<$cG}EDw#4L(yC|FB-%3j{|tF^5`4;DH{ z8rT?oC^rm&sdEa+^sKx|bLFz~=M1N26+gt#2O_P|TTn9JKfVHge=ft%br{IVsU;r;a4Z+`MKe|g)D zU--jEgX`6*lK$ZpbK z>j$&SF-xA)XM3;9&R|@)kF$@3*ITJsm72}YAj7iP@i{v)%lYCepov@+wvf->&QjMxXgGi9k?yEIufq{2&o=y*VB@F=}O03yGI{eQRPO^RyGyEY# z;s-xXAK~C1L*O7=+_;bMqVE*%54di2hmK(k2yrThy+9Zl_HGc@2j+Pe&&a7?(4WP( zE|6oO%U_r5&;T9Ric4GmM21f?kP;2x2-3^(X69Gz94u!_N5(4M2H0{GS-WFZ6Tv~d z!PkQ7??cbD)jO7f@0HGpP4^u=v(3@NdNScXs;9e{@~}^O&_D0z$;W$RWWXbM(s{o> zrsL^1LRQuq`J*7Ck>3{=4o|ze{9g9;KN96Dp++NLc`7O`<6nou5RtFir1t($dJHuq zX8w*$@@A@K0^W|r*+^Rt>DMuvBf+6C+Xwv9;5p8Ltk`&9QjLEXQRd;8X+(j)#P1UY zKP?CET2uQtz^$+b*4pyKB=eBhTi2SVsNH5og1oaxfU5}DSA4#XsiWe|Z5CRq=#v5L z)b9V7xQaI} z#KDFgd#On(+9Ucq;-iC5y^F_z5NM=?%kX>_&;5{FLRO#f~%yTc_kK?&*M_=c{aldPSYj%oyXLF^2B5({K_sa&6 ztd<#!5OrGXHkdOyO`KG=5QQ!Vp(>1NtqIJ`EdP;T50aJbXdr|Nr0!9bVgCMvZFxUZ zkqGeNm@$${A|=_6Sk}XlT>8PF#h}srCl9v*j;QZ2F+>ID>qJFyJ{CeE&Y#zlJd6mA z5X8N*Il9LuvB$|i9ptHx010XDjx$wz5Z({P`>PdubU49C;Q2_R?$1OICw=a1A89*& zs%=}V1bL`yLLX?J%J02(9_N?d(Kd$882Plm5HMPP=>Q}K&?|)xgO!M}jX;CmvAW;W zz3yPk4v@7@a)ur?I`h=`RQ?V#O{XzUlaqpj@qm5(TBo9-yJDuJ<4Z%3h&M2GjFHnQ zQ;`z{=v=eqao{%_1&ZH-?J&B)0kul*21h8T)8fUlal6#FZ2T@J1X;0a{9u$l4JI>| z7DqC)sEu_{&Q!!obgIbloZ;u*RE~zW7>#EStY?{1(2JY+WX!jh!t?x)Ozxk|bDoi? z&0NwvS_rC^mR_{C4FSVmH}_&2w*UlY`;c~1At-w8i*20X_n;4|>vx6_)KQ)_9J`_C zjz3)Nv|(`Gr9MoO^?+c94lmO%!r~Q2EMrTqSdO28J5o5dBZc|R81+XA!-cj;hBC;q zoUP?7SzsXL&=rvG7#ADdI0rh;@4f}jwKJjDBRy<`BDiP**t8}S+GU&NC5&aS{@Se-tfEX;d3f z>qmgBciE5kJ>%p zJk9X%FNcQ1bwa7!YAnLm=7#0AapuH=yWkc%WDRqHCY*r9z z>rYUqbFZMSpOgIOCVfUvI94df5uB4u=gM=E3Hex13p5!`D*`~X36x*<=$6AufK6x% zu6lqo3?aM%nt);`nHzoWGvRM-G9ogx6PWEtI{w<6QrZ^`rR++QkWoQ^zD>Mq@}3kF zHVH^|rI^M1SC)xb$3pX~BsE}qZc64m-wZLep{HnEeh;pI^cRp^2r`Nwh7zYdh%?TV~cQ+$6*1d zpn|CILUjOy76~VE3Tp>tli!LratQ(;*r=?$5yiAI2(|>r8C-H1v(Tdq$88C4f6_bs znA~C@(nNa;F;)yA4Yeu7wM`LznVl?rHx1t{=aB*pDEekSG|%R!66nb9`M7Tui5U|7 zzB86JmCxf*cvgO*Z9tdu9b+C(iva98;?uG8RY1nr7x^JeaJ%{#Xl&89PxEN>GZ=KP ze%d+R85+)7qdk_yI{jYuG;P^_8k^Gf`C-4EMpKWOeJNY8I97%A!vDkG+dx}(mUW(c z?{m(*=iYPgt#j)um8uHa=cIretw_;^R2ibwz6~Vl;1FG`p0ta#COwO_CR3GWl9-j1 zHG`yp3I>T%XvDM~B{or_K$F&V8%BD0Rn&;sL_v&-P&l#02HVU6M;Ni0-~a!-`{UfY zl@zp%=p?mr_da{S`~7&{=Y5{%eZJllT=bMxx()tgf@y*Y*4MsM(XzP0S#GEs_sEJ)Ly`ro7f0?tXc$TTYW zHBG_Odd&}ZLb8w%@NnhwE=6?4H`-ElzrpH*F*1+Os-OPYFK0-hd-1MAyL2*Fq8TW< zbi9Q9$UGr269o;#T69^Y39rHV)M~yy(oA8f^RWfmjnN0?YOc|IXbr`+LK8=4 z85D{N3F3hx1}K^kw0bo}0ptmGWhX>1y#dx)I^$anxq$J~b|VyHy`VhOEFUoFh!^#S zpn~CTO7utjRtsLZB%57%xP6XhP)^T$eb`^0&aIS?RKHwQfBC%|Q0nU4KemyLe@=!P zpZMS*xHJp|TugCkttQQT(hu~s28~ex36Fx7wq8C2g=fR#osh9K$gg@(nN4(kc9H-w&GI>L}mzoipdKw&dKwuDfyd}>vJC^mCZ zukgq6>Aoa{Oeeyli^_HzkNRMCU#(3%s)Gec(5&jf3J8H<3)KM!>3GY3;g~o%cLRKP zsO8yL@6+I$2+}OVJ>n-@AROugBiwFO_07p|Wd~sLj-ikcpaf z=6?6t=Dx}&6TN#ZpX@Vs|6LDw%z*1zk~#!PSjV!#om3?EacSgeNtXl zd?A%Nso$ZWt2HZ9>*;e)LwAtI%Ze|Bt_NM+_zk_~-6fjMi>Xs;o6A6NilHP*TokvI z!@cWx1m0SyBJZJ4#2i#f^fTj=Xu74Woa~A1`F()^qwDG&bxg;Q zC7o>jBCIj}@7niH2P9>^ypKF27v(RKhl^Z4zhbhe2lq;}Th;?*wBW&KRANOBkS!d& zuv-0%pJ5{6n9ZJ4Ke)V08Gz1DBGb-xAH{L1NlIRjl-xN9o4Uoi7eY#2DDjL=dqkeg zao#e$8+2sMo82)REt+$MSJPGitpg1u5uJ)v6$4DY{YibffRg8LySHjWqu8Ri|3+;p zx!LXjN$RQi`&oPHVZM(K86>jYPs2b2&8PX4>a?L{8hm^l?0EKxzz~9GEzx$iI$wcA zYhn8A60Ni}wM4roBwEs~i_##`YNtgvYC*A)Xxm3fv_bL56#gwqw2C2}k!WcEdGAka?F!wk$% zbaXqU4;`{lxGY%*OJj0#>s2R^VHHrMPJmD>1nE(P#5|-D()EvjSJDJF4;I>)F;*oV z1PKmVYlUC5R{&Uhr359_@^cDNA?$0l4Zhi-0*=z;fFXUMWJcxrL9eukR6ucI zL+vD&Cc+W`Fjh~O151`;;`v&JcuIG% zWIM7`VCMqrsgvFuWjS{!352HyC6r3MJ|VvY;4>@0cx!?jZ$akUASioPl>cr= z5~+4$OTocCb|+^_b$=_oJvhmDuQJl(rIDE5w_#-!lYx=p_lAubU%2tz78b%%W4Xt> zrvHBZ63<1VCp$iZ7abu2+qgi-E>@6R?_SC5cOxU}dM{VI4uU4aDFE5vTG5eREiE87 zA{p?Rq=<*1DH@w(P+?RsYTv}BLisXgq{%5cFB7u3GfAGT1y%;w|&$UCEkuMhRGhx7Z9-c)H6tJC*wXyY`+{4EswI6v3;dA?|* z#gS5e16noe9MX&}R(*NSJ-`!9^8LCp?E7>U&S}g=L919j5B)o8i?0cR?EuoIq=c2zV5cGE?Si?%tUn$Ro{E#)*VFH}qxsKEYX_HOo zmPLT)=qeB}0bUIPys8GwrXB9q2ArEJiU7BdAX_fnE0GNEc^7PY7vN3AcG+~+vlnwG zRgiMOC`XTVTvjU0%VVz{pGY5RGwQ&$wy235G+qVv)I(L3qOej>nM&hzl-AiOs5DY< zmr8$&yrx8@QA3GHKaUTCAV05BC9NHXAOj~>iyDKTn-DL^4+3~ew8HWX%isC z$Ex>fajDaC@p-uY;ox?yt$%>pL065~E0iK^voOvwemctomel zCJtt0SSZ_)Qf_$VGD-%N7{$9qa`^s15xH~@)+~`jMVE*ibm-55$OVb}6h9KEHW5gF z1A&Bx`dc|ml_rd&XbFOdd-9Dm%{<%?MDJD5CurgI{9;(IjBZ_*2w~7MI&cp&QWK@> zZcPu%2!)eXoDf38Tgd_%5*RepBv7h3ZO}{t2@2Rm0>Qb41WJAfjLoWv`7sHU1-m7I z%+ zB#@?65lZ!g(6 ziR(!m77?7Q=8jcA-qO9f>fZK;DUw!KO$0>%z4Va!kv--Wh~5xD$=UUSgaBH>k_g~@ z=#0fkY655(BN0INc`gW`_LtEdbdP~R1=+Sqn{WCjG6?+=O^@LO8DzK(TR96EL=wGn z8TFya;3J6)KFqaxTv8I(hq><8un=?yq7~#XLl%9Pq%%x_A}k^3B45Z6tS2hR{SY8} zvY-t^dK@G|7>5|tFf7HE&!N!f!*7Zad{arVO`l)TKk*3LzAuunc>h2w;vz9o`aoZ3 zB}7U4AldN^$y*w-icVqMu*UdwKHXKTUwhd8@0D`RZ=Qfh^57ml$mocEoRT-@1$D&& z+6HyrKVYrzsYA@A`96LP(KpYD{3OuKZ`UfzVLhjE#maP^{oFa7CiN1WA7Usy&m1fRZpRIKRm8ae=UytBw%YzN8-05c(w7P`kg-H3SzafEb4rK$tgp zl5}CLRxK!GD4r!n+(?SJx%Pli?0Hhei5p5%E2n7*c5C64h0!yfvF0{E<2TC$gj`19 zgi2`U$a!|)$%N|NzEnIh%V9k9YnxDgylq4sK=+afHJLV-LGD_TwF$LRIMtG@6;7?# z8j>vXV*99(WTkNWlOF=QzebPgj%}!tX&C_$prpUGdNb0K4OI!B=rfUO$YmClk_}bq zAz3{LzSMg=T5~S7k$8l?_!&lVn3Ra}jN+EvPnsRF6Vj zYzsBP3~Q(#c{b%#AaW#&sY8guRvJ&SlEz0HB6GYBdnr3tw&b@>Y+=~ac)DY}uiUSm zjh+1Y@7Tb=@K7s=BcpscSYG1U^q`*_G{~4)c~Hdj68@yG4uW?44(pdeC&i76cA>Z> z=%gNKOw863Z6qr$P?SMRDvNzw;UILE8>EA=autey_<;?)JYd@%4`O6Iky#h{dB#L5 z?^x+uutRkf91meI!$THrr_xg6XRXB+Mp7GKWw2#Lq!t&CYYn!^MypLiIZ7467VP-i zyN-nSlU@9e8{1+qrp0irSQLM9WDoIe<@PCorw~D~6D<|YEoA+~-?~524#ID$oicsa z#!TD(?b{v>2Qm$^WTBT^N0pJB^sPN#HpB^^b^h*kvL!r zOs#3MhRgPAfn*Y#bh3}ws){q6=5MxHp2(%~eqLiKNX#ZbUah?vglD7-y>}E(t0sTWBDTHhqC@@mRz$o~?3;;a zfvzsSdO}p!BrlGZ-~19g%q|hjGo62_?yJ$algCy~k%AyEWkl|e@AUlm9%=oJ`7~da zPw>2L`z%GfH!a4|(JVjG5YUK#pn;%lRp+PCSt8uG=xm|R7Va!%ajIq_xyeA6I^Pc= zDq_NPdasNx_M3lBx%cAYMro9uqY#^n3oLeT_4!7lgg`xWI4uMs0HJUvL4p%62<)LJ)gDSmSbHAbamYIJ#+6`s zqRa`$P;iX{o4&wvsq{XrC?PQ9w5|Zo(L`Jy_ivgfI5A?56sE5vw%ZYAAEHx=@>Z}A zEs(*9L++Az%C1aP&tQ0rhngda{5sDXs>Vy{xN+hddZ-s*zW1uri@x_IxHtY*f5`juaCk2`zZOK1| z1efx~3CU^mQ}uJd{_H%?*RM{axWnDop96l(JdH>}<+vvv)__@3i9V}@d(_AQ=i3rzhV4@6%t8LXG`#>qJ=41(!t$i8f z)j9!zgt-e2*pg*Vwm-oJ%=I!9<^s!vxd8?y7mZ^Va~Fg`=mG(4jk!WhFHvExYcS@j zhQM65wzHTEpUDJAg{JxgV{X&rf!QYeY7!`_N$4x5;An~=kA)|a8dw%pDx5`6!5!_weH`&Gnqi9%!BpFMT zK62amCxL{>_qMd>1)0SXRr}y|xXAE(EkL)+NcOnlmnJB-AD7bv<_=_7F z$^@hEK&+eG4Fk!h9|G6}#FGD(Q~#v*x%HN5?}gcW3S8wVQoXm(Y=+=Ko2vD);{6IF zbxVhfhjowSfkW1yB!kJjbw&1gkZVQw=|q974{{ZqM>PRVV-yw()gLQM7erXD@&2Tq zIY@!j?vcd{T8(RbU1WQ!24V3tx#4UQuJJrcx&~@xvZT-CS<*EOH#z;F8q;2LD1?JP z3Q9snebLmS(0yjt%)eY@2M+c~nfN-mh7bBf?npWW0{aPH2FU_ZVkP;tbqI^0h7(8; zeG>s(N)=0oAa?|?)jEXvFj38`C$@&ot8y*ds9fFjNmT741R)nj)SR#W;vOJ7p-568 zEJizn>S1PD4Ta>e7<%DB^?$)J9KuZX;g6jVNDkS5*ejh%(SF()SefCXIk8a2>5Ix# zBLgVdqdHFX>YZ37YaIy)ng^;f`!fn#*cem@*tU{hC%g~Gq()R=2R88@Hs>0rusxsG1~~P z5c7|OPZ}@-Por~bp!5IcWyYeafy{bKM z@x4WZiw|-uT$F!54)cMD5N>97P?4)BT#tCKRI6-bJaeF1{xa{Bq;OvDG-k9~!vZIha*=S}MM>WGS9^ zA(5)7BFB->cC}+3PIsHnY#R9PX5hO+^pV(((7c=Tay|M5S#cE8Ah0ctpYQ%7ks1C% zw%zG~A{6|zAX!ODUUh`wGzFK*heMZ<3h^U&G9zn<0u>n{fr=Cy4$6f(P!TGW0u>o* zV$Oc%Kt&6w?0wZAbLl*o9HQt<^dwrg;Lz9t0!obVxKWYid6QJ36j68wt zz>g#eAhD(n@GQv_OIox=YrCL~mNZG{w50Lmbgzo&RSz=9_GYF*gvKO0NFajD&&m#d zZP@`fWD#XXb{M9Lg;hD|fG}j)VSC69WW`IegU{0t-wHr!9g8|Mm-QpWR~LpnZLc1c z?C@NQB-x=C?QB7(-(gxn;u9)9Lu&X}&<%}hMr!!#=`>l%x^(*Osy*oR+gozQXP?7)d&L!Xq@w5j28J6mM1iK^#frZI>_swpg9I_NRtyR zj=z&DOMu>d@P94V?kHYMkECNEN;XX-WJ6w+V5QuzJsGJ|CCafRSpQC9Uq;EJm=?jv zIyv8I>5>?vPcoSHtJAM<#1>SD{BRZ5YuS-~OqaeBkTtZ|EiovL*La_D?m&wdAv-J+ z5;keAU{PCI9i*i+-*$QtUZfmnHe3zH`?V|3KW$$%FlbNE!JzT|ThPyAZzS5FNQZg@ zArfw|7aEhL4)Re~#)kZQrwo#PX^IjkZT$76Q~*=2>J&5PW8su8>L715j(OUNl$T`F z273kE1jjXV%zVybqzAF9(e;x@>jC)U7||WgZvu*5*tk> zRiPbZ!e0NE@FX?8VB*~ zSuIzR^d@|nK3iH9k=o~&r^%@@78GDX0yb1kr*oy7xr$zumla32@czYIB9`T7JUA4W zwK5l_yF#riBfUI)dgFTwd1yy!(nPbAnUgh@K#E3OU3mqgdOKhyzr2*kQmF_o6EqAy z+k1oMFkm?hsvV-HgX#l}mU_TMM1^gmy)f}aQ4b>T#AL)<@t6tmTY0~~1l^+(hywF0xcUCyHN4#a39 z|5)S}E~x%!|1n@aPf->V9H$N$0G*_h<04kYOL757*t(x#_bDxnd3}bF{JJxM%B4QR z2&pIzfaQBBp9h}*nDlx~dHYWtBi&we0xaLGwNS*|iJ0~y%oBP^j#O>h@`s9^c0G_MSri`vcD(_+X>*Pof+_}A~7jW)Ho%b3z&1a=!uE+ zWhi4=I*P{fg6vGfG^Md(xuj`$vp=);S*Ig+;7H|U5L2`6Hj8K$Xty8k-5|LjP73Uv zji*Ui<1NkW`vg+Stu~J(h@MN!LSYA+&P*^Z`vll6V0rsySn~O&y~T=nVR*97ChVXK zVdiWVFw}xa9!m`ap8%`Y>jxSa!5w!A;@lF%A1A<`OFzUFd|;pO50PSKK-UrN(Vgx$ zZJzEpSW%en{$!aPMCe3)1T42KJRbpj7G$9Mb|%nTxG(5p&=Y(dS~>od_)<`dnG+Th z0TE*P%owC=K5mw^kAT%Nh!Px_Zc!uezig)UCJnkIVrR3b3{ybQ=7L^eYaFlWoHU(f z19;;ISXPku5~I?(M|6q96X&-&JP}U?%jL0wp=5Ietb?g)kq>PlLXHdjWJRAkFTG`2 zJwTQf97n(!Hm41n_B9{4Gx|o7aHt|8BseBp4Iu=vlC?-D*3k>O$~wlq>g!xNj? zz;LYJwX2Gn8%gOnY6%ceoYA^OGy7}cXSI{J;zZ2cb}39o0N9psZ@;i2h@H#6X^sBQ ziF_JmOR{Vusg7MtmM_&CJ*Gnm?NwwU=of08R(ou?N>xgox zZK^fPGTIQV-_O{S&;+$H&n-0_q;I{fI2adc6hHc?Bo~Z6dVW0@s(U3D9$ts+#W&Y- zc|EmpE7^-;h)~=dJudF-2M7G%5S4x7uWhq@UPWO5181Y2%Zd}a zQUVT#O6o0wASBq2NPVt1H_-^{$_$X4S6V`#J#^P#tK?p;Hz}2X2S9hzHlR2vn;Bs}(}U{5b<<0}Q$Av^*k?Bi zzuFV8uHWKS8Lw`bd6kw#KPKABBz9IB%XBCzv?xK<_5s~VlHme<)>6L%_FdsaMfdLT zqhUPyvYx42dMsXmmg)P=!Pa;Ou|Fu94@RK<*YhfWVg3p(K=5VyrCmn9`X+5J{7?tv z^6QWpoUE-v4)Xzo0j*&~Q&n4PrMkA)@Bqw4T2ZC9>fzE9BSqBkud2=_sTROL&L$xVoc)H$dz5P3AP6-0o-pZ2?8{kBSH!JReUN zw3p#-=VT~hj3xl}G=J%IDRxDuRGI5?T;?)3KXM*&!4*7&NEdGccPWy=- zoRyC_wpCHW^%vQQJ55Z9FAjuJOo9yx|6jdt{GTbE**(bc zQx30m`6-3w@aL%O$j_`mIl7w)+^`@q_Y%9lAb^?x&CwKYTKGJ~4(?QJWgum;*iOYk zKzCN9(lt6kA&;2a8r>wEpgRsEIua1Q!bpVV-Xal`srl9{GT+G9LYod|@kyi>JM64!e|SE@P#$y6956C#0RDslr;*4F|Ep)(L^ zZ3dB!9^V>~4jPeIBa#j~h*UO+bl~e8k?1+fNzsZ!<9lKWP0|_>1d+TKv_HJ^ZZQcCNDt4xRDK=3}D zyE&*}pXO+HVaS1vx?*S+>cc_xx-b&;(%Rz57h%tt*fY<3boW5JZT3?%>%CP*t?Ka~ zMyC5lx~O6&-^P!JPqGWKJEQ#hc>_C7dMjs3Sge&;K!&%ahe5ZPL^-LugBH#d$SPY| z;>2^+eAvzemKx%QwD|Fc(PPnbf>gPx(a4cLMs-^9E%dE6rCRH}c~oGePe{z_LFF-^ z4>SWBUy>b#B65fgeJY<_K4<)96pZoE=j4oQ5&QleO(r`C$E4iP87=T?)(&x9_x#&N zyM-EsACkm+@JOjYC#$gbHat3Utm!@p#ZF@JY;76f36eXWQ|q`w*3-kC(f&)dl#(S)*&vpL1EbBZ&uI;=duB$KNd7kCM4_$0zHNAey?y`M8bI&y6MR>(y4*JdWj zuK17gf+p;j8L2VgNTx7ns>FPTG}^Pvvm4c{LO7A7qoJGH+Y=%_=`q4-GC>jMu6uDT zs~SF$t83ceEBLaB(azarOqOTWWibX7z9hRsYO_IJ^!fvq6<^;JO^Lk7owEAyds!uO zI@OuuZ9DCuc|y~S21l9Enk{tB3GKp=hv*wUaV6}+#BT*|o?gs5Hq=oYa;aS&*w>s< zrgxJxbJTJojlSv9d;d?mB;A;f)7{)9bmLohX(PJyl4VWj<~|XkMW67*qP<9p1g)SuP?ogf<@~mC6 zobAPZbw|~AK<@OyD!+AF5@xrnEU(^29=2U}NiC~AH%<=l<6}SbyWeniRopt+#S~n~ zqC*bcA%T-DYn0Kk0_199Y8b5^qSxPpE(N-^t31FB;QrylmUS&ydbULB8%`b&=I&JK zevIE$YSZuTFO4YmtjKThER~WT$d;`0Ab!(@7G}gyQD?Xpp68t}S}p3qmw(TV$^}P? zT%eDBr`#LWu*)WwFV9pbID1iAM}!OjAx~OoqEuNsNfwQ_OL4tlb#4z&SX*~{7$EAJ zn27N&dH3bAsCHG>t2LFa)w8kyN&8_W)C5JWLr;gKfsLYek{^WEz?cIoguvk6zw-n9 z5SsOXW!?I8no=+#_0|NWvJ;-fpTeeWf>(v1$&I(Co=OI*ejunMlCnI5rR7YhFFI+| zM=1FGdythi-+kJZFYRCzOTBbyBE ziI}$4q1qRLZitjRDv1IOoyA}@SI$LVGnJYxgt)AVYR-T{y#_=s9Y#W|R9i1W0+Ilq zLX!-RwyXe1^iCW3;-xiQ-2yl1JsRG+8z*Yo93}<#Be8>~AB(i~)cyDZ{QyU2`|)Jz zhh8$EMqt%IdWxiZQo?-89<)QQt&I1!rP)XEn32}?>ueC7P;LE06`pcvj_W?nEtXC_ zeUh1aaiE2SkBf^3^2tFyhD3R&I%pBU7nzL@@kGdeJKOZy!IbFZgQT+L4JfdAfKo-q z7ihM%dzNTWCEoTQ65eb9xtZ_y=t+#v=#{*)*^Ft%>`pTfVB6R5b%?KENM|5Df~TU) zbNPGCq6diEyFZV<0^-@1!ktrT&Q7QbYGBr83&Gc!J5}Bhlmhc>A<1;o5RPX+!eLgOZu!iJAzNBlFi8Ge1%@FPw#tK;_xK?2OC@SXR3kvOWe_q1$At(;0{ zJ+a}NYD@m{hIDzu_zDg_MT|gAdM*7kXfz)KA(H(k6JM6Lmj_6)&4V>PKp<=$;E%~b zO>SKG^|Gz#u6I=S7H>(&3Is^7vbe>Ll|?%jGDSFGMN5I-7Z%CVlvc54WWVkUK#I>uM|Z_&8tmO4QtgKy|!I#hk3MC@5WOqNmo2C z_mr;PfQdq_Lz>(UH|?ts+<6u2UlZwxPhv0q*ayW}t;igh5|Vv1=};e&4xic{2c_lT zvO`WG^Aw%y7A50@8f2|U(c}sv|B?Ct8v%k1~m?WwDbjksQR}o(c)oj^pG4b0~D0O&zHZr zeWwi5WEwV5St9smiStVtoZx*aga_CiLQv##L?q1aH~RH~Tz=@fdo+hIwV(LeA+~V- z1i?(73~5y4$jQCaIz!7!ayZy23fBrTP59>ps2B8F+9^a6V9dLI#c8wkdl3SjeBNVu zh`(stjMFcj&hMMb$EGf+CO!`gPEn5xhsfzt1BdX25R}y4blImLlhBXw@ENvq%CO zKWAL52U6ONnMg6tl2e+s>)VqAM=~P3-qfyfa+RX$JkUJ^I<}P&$m3e;g}q$FUh)Du zq_a7c!bNJIJ(q-+Hb3DDVsUf!(&jg?PR`1pnD`)|M;P7{e#&S2z+T$%fjj}`YDwuM zI-}?_KM7&*$x9b#XPr)=TBJ|=*^kN6(4SnyP6CZ0RfxN$la~<6IgU{PjGv?FaQCoY@ z$k5fX$#WTpJ++^uAuRLIB))d14^100UdD_MW5(eWX~v~#o0;ul%(f$=mdX;!&uq_C z_eg=HV0~uWpEOgM$5iUfE{#TB_nOLjNLsNmmGd4AzuT!~sO?myft>9FPi1_dshqDq z^FF#X(itG!H&cn8;n-wvtb{rB$!2a(rcSc+1H-vGqEKG#N||41BK?}K#SnHKua3O> zoDSI%5;E0$(LJnP*}sEno>QP*a>&0>?RzC^ns-YE^)&0`Imj>h&WX{YcNMwm@nZ$pdc^=!YjCx@*MDcGQn04{j}K3rSafE zT<}-qCcG1*u{Fk^Sjq`Azw5U)NCHvilL`M%Yr;@pr8zh>y;v&8`OG@Ux%pA`CV#`e zzWToSx|mF{KvZ|fbHabWzkQBG{g!x+(03~Ch;1fu1cLZ<1VnWP@^t)IAFVPd5 zRDaLr>VG#?@A_1?ygJslsF~;nZ0$|GdnhKUJazl&>s8e7R`ojSzO=2}q2e-=BTY9o zpZw4!fPA6>NZA3%mf*m8E6M!gYF-3;sk)ERLku75V|tb-o=qlOyqrvsO7%{?uo`KC zg6?tft2zuiJ*u0J|4eO+@!4>qSQY{uv=M92b^)KkeId)0$PrV8rSbb&%i@?ymI;Di zs5O~_eY}k##jTx#Xx)((XaudpVe!tKiM0#)9?jy~m23+|iJJ4U@;c0f1F}+>2|IDf zf`n~9vnP(yH?ZQ`Fq65;x+^US9VJ5>i%!D#BoTZ#p_*bPaZ>~j>zI*ztO+9_Ca`&JGL&x^q=;^Zp zbmC==z>Um&5u=9d9jNvkpB@nSU~YhqVnpf8)!;i{x;-B!2A4~H@iT)@TM9T)3%8j(W~W+Q}JR<1{eFt$&g zBnX2p>LX+4SvLvUpoK7H1Yyv{+tYxsx2~INVV848%^=U_XZ(&qD}@)S$Y(n1>|2@* z6vAjuR~a?DfIgx*r7pj=<}|q%+N#(D5U-|+#p!a0nzZktY5T%sj#J1i#rAnX<*kRI zt7cX@k7&w;dpaI5Z2}d*O6V)>4Ng0mDufdom| zJ6-`oPWuE$OBNd4+4?s~=)R`k+MjCAO+A@POdzSq{e*3)wi~Ou^r!mc2dW2`EdHL#!!vVzC92|dUnL09 zfrk!aLtQ^qSD%lo%Z~Ns@34h~xuAzN`vP|;1uSnU^A}|Ncz!m&e&~&5{>|B7y?o=z zlk3Ab0!td(KVh$Yaj%^0!js9WY&>Rs)haNiF&R@a@2K>K>Fzj?`e7q!>@blg_t@`Pp+i~)E_V7f&x)0;T>`&F_egKU=jlp+^_L}XSI0pd*3f2~X#Rr#dy8$zKqj5`w%1o-ROMgrjtyEze zVp#D9MG)Ai0w{)w0Tb#WT#NFo_r4Q+UY%^0ZCsJ;UJDe08rN$W)Is!NGQP_r;wFAg za9CIzEi=l2$SHd6aL&N+*eH1M6F%yG3d>L#^B;~dFT-z| zGu95lr)XD^B-|N1lmRHYrVo({Oo*%@3EyJb_SaRnIFDy_u*Iz6D~{C4ln!J-V@er> z>k!P->Thv2^)H0C_q}~>;}Kyk8pu2f3uWX;i(I<`NFWR& znr`WlX1}II$iEB4YlTXC8cM{R4c3+6e!aKOK|z{o{(!LHg8r0D^>narBy2JQBcw8D zha}d(7LQ4Azlt@&N@DG3{kosr(z`)gFQ^AP01q78%etQdxC!f-E6Ff7_jFH4LfwJ8 z4UqNpnTkLwy1=fxC?Z4`TezE*!ys8z-kgo7U2zyJDVWGjjC@W=26oOxgoD_6P4BgT zVuaDK&a~iTonyhp63^Qt@r;ppdgDWNqKmoeufSPXnm%N$=mGOzIXOyQy4pVBXc)W< zCGgD!Wf=XuB@_9Ng=7+fNJlck^|9PSG7)(Tp@eObR?Un|g2Z4pFR20|uD*cVXUHgR zGf4swnPeluS2xhn5OzRJ*`X{n5eaN@1^^$I(9rh#F?X}A(0$sX-_YHZB2xC{iNqUL zf&79(z*4K~J>X@CG$3i`D+ZFQ=#KXc2t7SSLIM<=Lps|8n;QCxc|8WOG65+Qr2|NU zj5_`mNAz0|otZi+oSEAsnF7buuj>MYt&EyLDA0mDorwOgSPD*v)xjH$wTo%3oSb^2 z`Q0Qj%TV5xb_E+AbmZa960^uWIQXni`hAp%@?Ug) z*Sj4W{OA0}r|YqvANVdx{PVg53M04uy!JtR7q1w~136=OeBi@V-lfKcN zVgUn}{#3x3<^T_1ueyhNnjWagP#Ho;&xr}6qUZ@P688$gyI-Tx^XvKSOv)ImU(*UV zeGMmN9vzK#QZWKRwfJ&RARG7pDIQ96@!8%=A*6@D(J%U>wQ!&8L94nZxxH5Jr~zJI zD=aFY;&e`Xn!!7fLl(Yk-^wswD0*{q;l+AMM$oflLJSaWsk3Q854h1TY0r&#S26DJ zhr(SA=&(CzM};O+(}L{_i31xCnJhq6#qm;ZXzCb%Dyrh;VW!c{REN;oNV*&zJEqyT zYek_>`#UyUIY`phhtr5!qG${Z2R6>S9Hc$kKzp>bK~t4cBNQ__C(i6%;{V_)EDBcb zX5o-Yux0oY_n-z{^rZ3jb^Dlu(ue~Ab0pts+f9aDSQyyqErUGdu5B(7ok9$3D+24A zc7))~5A~Mc8fAR8(|9fKB;z%2US!NGC;YOwWCYd>X37*j zS`ih#=WQEVH9%WET6NLBu?}+dvHs}S3)WEVyU8>H)IdHyIgty43pqtfIe%hIyp*md z`d8~Yw=cSxLbqI=t@zi{ZPjW0BKHsP=5A|VFIOIF_ls?t%QRKgbuPQa_S>rYo2w^X zZPk}B%rJ+zH)yn0|JW47FZec+f#eyfup%v`FuBvssFIFtM16%)LB~=~)gHeF%;tOG z@*cN=3RiTC>LvO}IcVLBLC8wOW*|heP*-K6mxx%H3`K!yuc@%uqQV?(2)&dBRTip^ zTE3N9Vm55i20`eO${x1}JCZPl}J27NuC>F?dNyI~n5s!lUT6bdJDnq9VjYPkt6$LYu+mo$5A}|B`^Ikqk z1ByI2Ql6^Y{U%XIEc8;NeZBT+&Q3*;++N+RPH}y4TwnD!nU)5->;7`DdXq{fR)W1S zymakWD|#Zsqhc|08xvKmFOTv!`x4aV_9s<%4je)MSarMM?r z^`Oi^4$)w0EMdE%)OQ-pqHj4BQLmfJ;d0!)4}=t?U^D`!XK1MS3?>TwOYOqO_jndi z{u(JjsY0&bRz2+Df|?#>Z@gz%mJ39IdbJzAJK3v}kFj-|;E7OzuQV@C&JH!tJu%J< z*7`OxX*TLJeep1jn&&orup$Jz0{+e9>7}{&Nx_Lvna&v)>SNxDzD4Cg#Q2i8*Gdv57f1=RnNK!uj;Xyoj_+B1j_U)NEqT z^&E-0_~$G!Z%1JL?F=z@b0+3RL(E}{PeaVblfUnKk=y1`mcbrVWEIpBQe0H|cQew! z1^DG=N`EdNpF5(^z}eUU%)4_qDsy@kHh}5^Q%Pb2{j;)x#Py$Sxqe7NHKIHP*T?D_ zh{DY(0*bkQaaOJ`FQIdz3o^f&SrC|5N zkO9Q?lMYfsaM5yH7=QaKn7=Rs<}VpQAzb@pf1~XJL8I++nVwBzGjRcU$1kV@xLE(-bM^Zubt_sgDU zx-l?*-7@~K!7lC}+H_z2G}C?cGt+%;?ECKrF@N#XO!teQneKl`(|y&`Og9$quUlgN z%r5RL+{L|BySTwuxr=+ckIx-ZzUI5QuL0NZ{{xfh|MAn%g@1hR)BQEq-CozVBe4%f zd5w+(Yiy*4A?bWKJ&e@-<1adD*GgiioItf<6M)lp)TWiu<8zHoL>8(ujH97M*Wa+c z;vu$_0&Rv1i=!o}m)V;3v9QRL^>G=)wpE|eWsc|M`+2|a|8M!AMHy4acYUIANeToBH_tT%!r_1N|DG4_8X&qDZ z0e!ly`dPIk-)CG)AJ(IH>wyN3ZrzWgzZ0{Sg&D$6m{7N{uy`|45&X&aKz7 z3wJ*Kv_2hHPwFCz!c)Ntb4~Zt&&Q`oDdu%A(?;p~K!xlquKE7X%wn8o&DBGqVjiwvCZ3D)6qneZ9lYZbVYYzsm53#r~W0?EmuFLOIi>oxF7#^zx%N*%Ri+utFkPA`{uep zwy5sOAEnHBEleNN?=(YRZKrv_YU@`1o45{itkQS1YrK2ctoOxsy{FYK>ns+t>fV1v zW1|{0qDs|WJYp=7*yyzoB(_nO1iVBX2tf2eXpHeSB9=6w=;eDV ze|Z=Lw~i^5<-B^oQXLHC{G1)qgnpO>9z*YSU=a>J4l3h?o6BCXDq`t<9Rwz0MSN1UA%g4cKf|FU_^~HVD zyW%J;$lX)ky`EAbD0kThoE!l?z0a8C@|ia(+!5e#ufWwC0TbQ6K@TG10+;J~h+_@T z0DU`4&yD{PcevIn*Dg+WQ$io?yQy5Mcmw-z^eNG7@leioBzQj5bgt=|tmD`z+&3Ba z)iLXmd)4o`r{~bID{x<>KSVDlzif^GOLw>>T--aPe42p=%HYPx)@4!F{q?QRooL4; z$15MN_PiSB5qXj8&v07cpmCH5z_@~eL64->=gJu(pgU@Rg(Ii2qDF7-0G#ydj81xW zIkeWQb)Ot5%Y3+3EKNsJ(F-X!qLfv`9gxs_d0dcGuSW->5u#4y@=D}}!)5H42$<=t zdQp<3jJt9<9^iGYV~j|Epfsm@?7!{sO~V|*ryvx_5KTevL4#QS1I%tRJn6hRb)qMj z$hcI_;lDs%bZ8_q70zBthzBHSrat>Sd`2{>;f7#5rg!7dsT<}hdH4sACpJwLx&FG7 zCUlX{M~OQL7abEGeaqE1jZ}d{%#*ra<@mkOQ=EQUzZd3)A%x$Hywh zHLW>KeuY7qjo;P7J*P>Pfs|*2d0bvxB1c?^iJQ)kf5rl!4=WcOpXxgXu(^EkROQLK zGh3ce{qeI~o++r3Z2fideknaPN9X+r!na+s1yi0W>3)9=x4b zdQ;&6XvsViNnlj<$-0lhB{I+?t4?5OTH;D)k!wX>5fo*!(o4t}562gB>rj=flNycp zO85pCj*9&qnXcf|h8Ie>@8}T8)H@YaHu{~^%O_VIHnOaUj;nH#7Wwl*sHL>Zk)H%J zx*!3I#+yV@V(R>^Ph}95cVQn5VN;tB(*1}L;2P|sAyi78n0akiwA4+>sE}#4MMu3( z+QG2GBU%{pv3z+ZDnjNm#c2sE>7=s|YKg>eQ77dC;7^_WklCOP&Za3T{Drq}WYvVX zWgHFR$aDEZG9NWs$V&YfIbd3Jc$8n8(O`p2xde~|*7YhvK^qFub84EUL@%i9jpAV( z*4(S^@-1gI_o^rE)KiXW7Gm|TcQP7Lt+(Lk#*0Vvf-C1a`}&}qq=c~#(h}U&X=-}a zMsciqfG|(ydvz$1FgO0DaETJWgG?!mq9-J~q3l`SV0y2o2CNNtsm1a#4#(w62@Ylh z``@CTozN}UC)2A>t0O(}*UO48F{LWV5u`ueQzj*?jq5eTI^;=jnv`5koCydxejcyv z4b2to2yfRQD5{Sxcf0!pE!O@0xO(wbb@=0QN}TO5G+Q11ILXPH9zWsJ4TZR8^mt7N zt)`Bf{h0!OEjtW1_)0p=91&6@${44=o$7(#^t?_>Z6w>AmfErrqaR-+|A(V>=pHjU z%~_ugP^(nB|LKc zZJCW;|J>rdkfFt$<_~1So$hbA)2E-3JDt|Tkjpq1@v+r&ER{cyhog}jB2J@!o)H%1nsdJ}uc+*iB98^weuxJPNq(Cl$X>}G4^T7o#SIV^k zb-|u+9~FDDpeT`yUlK}=9`_NFaJ=o*x?Q#A_#ss%#fK(YFza$V&L;h%kacbrkSmgd zDQUOizANi<3aDDCzE9uK2s=`*OGXlNO;T#d*y;c&UY;C>1m$ z!*X{5{!qZ*-2$IC3HYoh0e@&`YRMPFW)9Wm&M$CQA59h$A_ky9#04IRxO;7L41|uT zwCW2efj#x{luA7_oipT+cgV(|cIUKM<%_=%*tihOR@24;U({qVpv$wD0X#r<6~9>4 zqAAyMyC#f6w=(|jM3q3PweBQk9Mn14DMamo!0kWv>!1LYR7-q!Z7Z7!->TpKfeqA) zBz>;PCM$JYr#TYsJA{#KhZ2?~&Pc)%lkMw;*=rg+(yViki5l?lVhMxewmu|dhs-`s zv><8#)8D$-wHp84^*({-)I)#%K>bnDe}9iQyVIXL=?_inR7ro&_R{+T4qRe^`2#e9 zoexMgJp-!rVL=jOeF(A`5&A0lgYajhRVy z@-iK`xOZf-PnScYDUf;9N3GrZZc?I#tlX!x8A4RH-{29riROW@wMC_$ff}vPeaG@V zU+Y}3tlcVlPbYgtvq9A~D9QU3R7%TiRS$6oHCv+;A_1uV@69|;L3a^Rg zEeIs=_T#mh0vu3iwiR1Wkgwfi{FWVPi+SgBBnrvm=zmqSBnfmQB-|H?N-Iv2IlfHV z<}(1*F0W14qC+T+-0H(xO|G)F?2^l}UFr&}>+-CNNz4_;^zf#^B^@#1%^@9(yi_wV z&lAj}=K^5UW2H25^D%)elclt7)Y7OHog1c;yavi`{Br6B*r$+ZSiL!jBro}v=@lst#S?IB zN(qh$h`^?KT*D@PEZ)P$!yAoMsL8i4hOBwB&{cW}aOPm=JEC83eg?b)d`{TAq~YuU zUd?Y%eMd7~ZD%Z@X+C-GExd9(PbK)YljAHG&EyaY-Av9vlQWY&T9X4ePLtz=&z>CD z;mH|jaiRlPUnNN?QHH&#xh|y1vFv~rPn9>5Q)o0yffr_>&pScfhW>1KNC41$3l*ka(hA!pOLt|?V*o+ z+TJ3E4_VyafO{4>wg+-J*@m_*Epp@vNDk!CU4t6APy-`-v&3_uhPk2Ft-ezx?*pZ4 zFlyw18XR{ewHivlqaCTd9IO7ZR^3>@mX0a`S4Yz~GofSYd0EedAgwRiNdvxdfNvZC zm(q(R%ZhZ}#)|aHRVFl+KJ0YTt&QkH%>6F3TR|;%g1JKq<2Yn!W&$vbWWqq>Q(nQ z>8eo%`3VWM6MRA$hrX+Q!gjZJ7p(tL&fel&npy`Z&DfsiD{17;Z+?Xi?gMHvbZ}P3 zJ#ps-^C@+ls=VQF?_S?lZx0>ZhJI0?ql?>BN!9QWb+2+&3To2Tp@VyWtAm>_chx#L z?dmt_;BIPlTBzfs(z;h_wUToLb)~g?bPXNcsr0DU#Ys)4m(s!AP1m^pLal>CCwOsj zgLaSep@V~~r=v4zB;;X<-do2Wjz+||L6>Y>rWeU|&LuEU>|4sN!? zQlHY{&sqnUdi?oD2X{t~!6WJ5+;QRj*S^Cj^}mu1Ge_3JspIPI{b%UlK(fs`IORYE zVdl}n%{Mx@c`MK$iCgO6KHBKuFoB>M?&#p0an(Aws6yF;>CVr9IH7}^M+Z0G=-}S} zEyc98W0Q$4ba1DeQ{|LM9`SXP25w zm30S&BY=>;i!-#f21%4M(5h+gZ6KT-R#=5E# zW%p?IB2k5vZQ_&C7+Pi7s!q!7n`VIDOA{?d=}(Ft4a}9>(=6!dNc4owEV!()&NsmJ zaa8zRNWQ^V4ZijxBx z*-lR#(Rb5luMh9y*|Xm{nk+W5;(|Bb3p&6omjaB09i1_T36(=p-?RSZ{0-#+k~N-$ zF?z&F*fea)!IjG(nDP*^Qfem2-g_O}VrVJ=(ZBZ&{L&5x(8XHW;zONOD-`eueVpmT zfmV_0(&NL@)pUzgNl5peZ01F?$XQw5v}&u`ZeOWSl9Z7F8}O?jF~+d4haWu-5<#w@ z%2Sm8LMf)SCl8t0ULfHvUWui>OkzB8g~f*hA@Y=5q|cXC)Fgpxo;Enf8aV>s(I3xK$hu2?OrrPC$QU;N+znS04}YIfAdB&e1bow)F`U+F#t(U`w@&yCUnb z@hr|hhSBpl0P5!ISUFCyg|%9$lTAqrb)Rcjtw{A#q1nLX$l?IVjv zYv@pmO023HtFCHquj5vu6*K-9v7+T1(xq`CpSx$3kx|g-dwfM{v$XGJZ64`rBsmMF z`sKH5;EIO|kQNf**~qQAX!S8eX*Z>yVw&E3THw*}7a+)ISsvX{K1mqCWk=;rN*dz-o` z70z05-R53=Ouf*Fq%_q6%laOiH9cfc z5C7c9fcAkUlM5-1k##iLBWqzc8OMM}P$K2%Ar-ZBJoVw9xc9|5FQu~XT)=4=yUGhX zhkssBt=%}eh`r*&|LH^LUtJ&mS)v3+6Ft_VAC)C#ET!oYc^x@yHKTM8nr%RpBCe&_0$@b zJV~Bf`z#|s#;K=#7QF);<^K2>{FnwkWHO!wC_E7@@bysu-aPO;WtH&(pXWJJfQ>Ao zaM7xZ1?=$^0)&hDe9!Yjb)AaVE-qp#-dYQ#GzX?yWg+$mZi$Zhd`~zcV64yg+|iux zIcf#WfqDhn;L;i0si^}_qwEto8r1pq<@o8mN=O?TeL+W2!w+ilH2IT?<0U)>mz(1~ zAFVB`mG4fAlBJ5y+CIu(Pmkb%7S0wj^#U7*Wy96Bm%EFsDccIJRhf z6F}hg?kRuSXHCJVmfoXEi>@X*D=R;yH+n3;f`-o+@E%G1arJ%~JL+FzG}j&OZSb*f zrRq^9bbr<1;^BNrnO|MWjGxTo< zUnk6Dj%y$r!m>KbaA8=@egliTN-t{M`WHsbhMk0*oFK(f5m~bKVm?{EEPIdO+VCrZ zhLwML)*{|WL+5|iY|Hj^z@=?utX7WWX(UU`NU1KJs@w>l^n2#T$=J6hLeLI1jL11D=uATWLK%Q(Bk*5n|0V+upC`w)ge1tk<5|_R5vM_xEnwJF;sU zLb~*Ko2;xT@+AGqgC=(BGgi~{Z5V?pa}?LDT_wW2SUZ}~&vvv3^N3$O;#i!dMc^cl zq(!iz`IRzW`|frfCt}6vAzEIMIgAEg*)@mh%vgdLqfhXt`HPF|p}(swA6gCiyBbOX zm4^PpVL5QjU85fm*ia-y`%)wv^(mO~jcd@cm^E+H$80A>ilzQN5HGY1+NRCjY7*YJ zH3tPPOQXKriet<20!PVwh!6hd4{o5q;w_taS-1$9)A{Ze!|?{YHas}-CB{TV^|!e4 z3CCxYlcc{!PyNOXWQZ^2sI0>%^?BVsai^YsmRo*&l5^_$^#%Rn`eeF(S_j~%Fn+OA znO7hE@eLSg#z{+%P#w<#4Hd^>s2tq~=M<+Ul1$7D3oJ*$h`Z^aM=C-iYGK9_4E$@V z+E1rbg7nR;&;|+cIF8>4FO<CuUFWuwkJPze)IUg{xUHREqa zG=yzmT-?}n1c%~AMjXbzA|GEM28uXuzk=Fi<3kpTVCghwbC6Rk-kaJVVaw(J&!6m+4nqMLaes52)+C~t7 zTw%R@4C`fR$z;7`sGCfYOtQy=-B1~z5!*57$wEr}e4lLdmIvN76B5_`L;#yDPZsbt z7(hF|+IlH9+;ltM?#W$&)|!1jO`EZ(7mf82*ZMfSXhqgbIrB~M$^$|Zeu4Ot9t-I) z%tj$DZwe-h927P%F_#^%K~mc z0E9Zz+C_sGI#myG%1Rwy9_GqHJ=WIET?@G}SI)OvO;AbZN<776@oV#+idGP%#|acpgFVxv}>cXs&i20L2!j9F%m?Y0a1ktdSgg= zg_CMpb-B6|QH3$SBhz6ew(q#Y994017Q2e#fr_TtAEA{gxwEgAqhALy9cfk_cG3FA z4Fql5qeLrAc0?V}fplW}3>JkTI*`q*`;i*+JZ!=W6ZF&vLDjt!dYFVEZHkN-oc{b# zy%*x9&jmgBuVxyK(T>rF!4FkVBo;Ji;tcJMsfd~AvwG&j*2*RYv)Xt3n{?8t3pPo0 zfj^lKH0#m02QE;>5(Ma2*<^U(Qk!;hEL@rbMqK}(c3}BX0{yTyOU-*>KKlAJJ{cnu zj9Cp3X_-P5$x76u1EOy#=Zn|UoD91tBX%;wwN?b-nRfTcqN4Isk$BYot1|3%i^{M& z#-j^QrfvmRSoL0zDKzQA+OXTJE@%zAJ6ykK1ts!yrwqFsZ--%*v-}vQ_AX-^cE?wu zq#l$Ua=BElh7os%jJW!?E@=>yL+QAIj7oZx1KDe5ItD!FWzg06;WeH}kB7Z;&&ZD> z^0wvZqAm%rHR5Q(5fc0@!;pMyr6}+`f0HQ&Uk?_ zI@XzdPvr>Uxi{{1)|YX&v%avIM~JVnI1s2FCqOieWDGK2_fqS-P`e15Lacro0ZFNR`znUvgu35k9axePNvx@e5FGiGYJaakn7Ie z=|mq*sAU%w4ASUNOd2!sF+v7l5p~FQ*QrNUi{6#?dCpqOXrE}QJrmV|>Mcb-?9wA{ z#y2%s+PPEL>uJ#kF)f{vOA=gCkFB8;F@z)_R}7;*Z;Np!FCd3~wu2TGw~3A@<{(jS zZ5{dDP(|jIGxhYSCV(hVse?UpNgWSL>broqW$c+(B*N)bKxiRHFQh$l;n3!yYBdc- zbr-wnA~`k4rNIKzD~KGyhY0mYh*XG9Z`@!G*iiF@Z`n{&(VcqAhFTKdhno#`AehSR>i`ckv0##Lt@|E;7wwiQr(^k_Hw0WyJhgt=Y&*2uy!R{$EdG0CQ zBA;m7BIl&Und`Vk&S{7C;&3{_OH&m~i6fyu+#=_2i=2}w4YbTSmxv8nUM=V(p`0Rr z;eC8I{x7}J=zk_9QE{|5%5v+=<~A*=+i!-dLvaCp@8)U2!Q98v8AKB8s^=cNW*>Aq z8~?eEFs=Uby}y)I-&8&D&@Vw5P-0XMbH{@x>Ib7goy+HDjxcjuI`)=>wA5PPt<9;m z`MNcH7~Pg~-CRw3?qd;SfSEIf>2Nv6q>H-+4rgEfKd#}I`2FY@RqA^6J`0ue+9z^g zQgOA2F>0)`0ZB1`Xox|FU<{aA}-S>mNA( zYUe&z6*t4^Jq)}#6?~Cj%>$+T_|K>hXb52X&?W>~TRp4%=3A=b7NLAzvXteG-Qy>o z52}D=M8zCRswcb~f2OyzEN0`Hwq3JaC<=-^L7OY{*SSby`g&eNhWWe zv(^{jKquOarG~`9sCr^%NY^Z5-tK|Qv5(4`%hy!58#eIN-p$|>_+Tijj;r@6%@n1; z-ZGbA6%C$VG%xqYx3LU_FzrG(b~V;VXb`0rSOcgtsf8L4#h!i{Jbj6+;Q>@N^*VeQ zSbFpUO5tTP?MWITRPB%Z`7q@d!}r%{Pm#oRgwyU`-XjapF8y5ygg@ zO0$cDG`l?sI*2lXWLteOZ9mZF5Y-Q}@DYUd>I3(0NW1kB?d{oovP*~?Y0Fq5AM^pY}x}Y1iuqcj_wpAH4eWTMb7ydF3q< zwVwD1DBT}J>2xACqMg*d=&K@q7*&kflS(n-)BmIg8%~#;;7Y#B^PE5?*rF^V)FgET zp_4la#z;KB-lK615b=fm4E2tGIN$urJC!^nJ;z8c0zQo$V{ba|p@_Gkren8-=8>#F z8Xd}pV**rT9m9=^0cmqT_=V6}g z{T)u*$282r7Q+PZuN5ik43Q;^`8<{^7)@TcdNpf(Ae3IgrM#>-$c6Vf-&c44YmtXb z2)_x^-{cO4;82<`6BJ$itV++yPaFQowu^KxWyYMwsi|kKQBZ3(? z1=AZv6C#7cI8B<*6J%DbM4?m890Q_;F4~Pr=?oQ=61r)OJb`s%Lk)sqMW|Xsu~PDjk*`D#q=3O*$%7?n@2sPS0iQ)jjVdaAx8j3}v@f{# z0T$M$V3RQ^)=!J&GnQ?PMfU32IeC%a@(G^8AsL-KjE9pEgM_Qi#182_@idzs6FemT zFepcsSOO?uxi-6Y_p|~4X;aUbWu7GkwWFXHC4FRePOGbMQ7PWd95FvTGfcT{Q-Aoa z?4pva7@1Oogie$k4j$W+JhADf910yF>%tIG_el;}N@!@jXmF!orwDE^XP^YQf+-64 z>t-|fEziYt4eD$nju07Y6%@)Q@*2c4RN9=yiAZ71(+M@4?oa9d=yCqYoc%VTl@=hI znp&aCE0pUjQ18Mg{q2j)K0Yxk0C@JyZh-b-2)U7uS`=!%J}Bu-u+7WP$_|lYlIl#&5sI2 z{&Pt*s>_j$L%LI{I<-ajen-5jUuPdt8t=AyKS2j78R53|OYPLn@ErHblKpD6r(vR#j^!oeI(xm)t&yr9Uwt%e2~y8s4zqs7`y zKER(uj?@_MJB{HHp;?sZEi|b0d*1W_@Ir>nwOApW&l zBq;wHzEXL1SXBt?9;1alWkFS>_n;PpD<0=Z59f=1N*+0$uJIvgA=G>6zRS^%i-uY1 zw`rt*1dVJc4N4U#e$ z>_LSr)})4d0W^Dp9*Z@2lQsxysbb?FwB`p*Z6X!Ga+XxEWP7I!%?^nST&@YEw_#}s zZoM|No?>~htM>9>dOA4dwWThg^u(X}3-73zX6kAij$me1Q~Sg@Y?DT5*{+&!WQM}K zN^}#m<^>s8;3G0Gq~M4~%MJ9T+9)CyUYz|i zC4iR9cp7xk%)Oj@u*-4&jqu5ym$EO{ydv9%Z4U|ds>4tbOSxu}RK5U{l$Z;XY|hKO zPO_S;LuQSUL&kh=fih%`idjblTnHE~)De6#1+uMXx{(HY)kjzvWG)TYyZkcu1vAaAg4*Q;8sX{CW@q=09n0F#Jkq=09nfTxvF#KdQ$ zQ^_dLNCE8ZH%kF4KzWi~?R)M5s z;5S|4chUnSa97}>k4y6GS<9JO73z63yhUV~4Xa1n$r$YhX+Vsa9huBB1~wXP=P?>R zS(t=ydbYxFs?WV+L#6=EsTxrNaQ!eU*U_&Q-81VLmVEnA&g9AOz{bDogw5#E+4Qg0 zlu_bEH&f`A%QM_v__cH!yF-4FFo0ikw>7VqEA6gkz96&TY?-Ety3S>n*nV3ze={2) zRa=?-GF*;9@u)rPt;c^4b}k(&GsWU%>IA)RH={~Awh{Feqlsom0Ms9<#ZY*Mz6Ubz zaT`O7b^sp5qc-bWYd$0-%9n0MC}G>&Mn50O{##?eR=PFs{j>^Jg}2hYYpeYFPzde> z-05G5<~<&lWa7!hhQU)dT)pa`w9`Gg=mB}_-FwxWR6(GHJc9!TWe%0(tYYdDrpaBz>z~! zQK~W0@#r4cwuCTlTeRQR`0ofR^9A>c3dS?PNSaw0iIXh(mAu^CqstTD7AI zP&%WY@k$lce(qr`t8@J1%mZ2j9aPi6v7XfdP5ba4>ksB)R^2XBs9D7XEfUXVN!4gp zZ7tWV4%%6D!mIJ!o>klD_A`&n1P2^wUda1~AeK{r)|y!j*V7F!6bEib0a1uYr(ah; z0$l-s$Q%`Dnj42v*({`C(DblAUu*UgEE0Vj#!2{t)_I%zbiF;y6Ln7Wx>oe87bA5- zL?vl_mbeq6iKU#@18V3Dlc0{H3*7Kq`AlF;(HGbcsXG;skq@3!A4!~?18gKuezHbi@Tcj4G8UkNN?xd**~w=mw)?mzIS{-K0=~f$k>1o=4+odjKx>)8`UUI7*@jV{(IJ!UOU~sUf%UinCtd; z(x-Wy(=~TBKZkP1g!(Y)N|ZU&Gmf01sd<_jsVP$80VU~)3%grsp6B}Qp^cOua%Llz z)zMUB*QF$p;rBzxq$F7ff*>D3MC1_$Oau|WyBgjtGK9IES93Lo@NYG|xGZqS%Fn`y2 zjSD1W+`j(h|N1w7{a1hS$zS|(cJei_$a+c$^TjJp(AQcMLTmlYzY@w~$Y`->ap~ds z&-h~zSx*RzB=G7u8NK?GIbml{RnWI7BOyXAt4`z$8oQf8KiO6s6%K+@+l)M`H%}Kq z4*5fFMj_$sSy5=X6$&*dn=lo`q1?G4&LVhHE*}4GzFjqK{YoyY+!0SbpviPh%Bmd8>X)@+mEUIG_yP_6?e+d^C%T-+pk=Fv)17aoi{<3#s zOAv)9IAu%MtBGwu_Bg1 z;}m#87ZOqK2hqy3&kJ=37m0L`A^VQ~Z$AN(>QE^>xL!pjiv){9A=1Ua7T zYfHfEg+gKQgu8ay!@Yf-=a8SW2ca*j`>CWvgG_+A?j*dq;&nYkS;WK9M|#EFYYU0^ zis+M<@Q{v77hF4M9w25PVO*+pN(G1FKAUpR$Qt*>`sY6Q+rRnFyMO;@KcC%sxL5ko zpMT=5pL^SfKK}Dh=+Pb?_0~W2#1DV&W1s!~_kUK8bWme&{VzZGTW|QicmLtfe@>6Y z4k3SZSM-BF{qc|GJkzYb91snw596tp`=RJ7VbbWOfcye(4uZUnIwASP#k~@w=Q5rs zNIwE1wF>6ekG%2Zbneb+e|`KWe$T&V+P`x;Sl{&~a1eFOYo@*R@=dRq{(tPf53r^6 zS?Bq_@A-G{J@ZZ4#Oj=bkgJ9B$%OzR@)LT1zNtt5a66Wn!cQf{iuR#~-~CY1tg zS+=+eyn7E(s_xZhl z&bhatiHx#a(8WFHynlXwp5OC4zvusNaLa6@C)gaA+}c~p-Yv5tZc=#l7QZ#pTU5^G zfn9ImHZ2Uf6AjSCKnO{|cy?MBt*W*vbha~LiO@k2zLYj*UFz5%c2plJvA3kVvFaLnVFFgt$j0mn3g z=>R4RHZeEz)!FEl84HM1UJe)?XuZY&z$RfhL*#AY-j-1fZV}QlKzboLAbiqLtzNZx7ItI&Fdj58-OV!$vb6kAF3f zAXbHahCa1z5bN7|h4rdV2x|l#WD&b>bFy@2_yTNFi`G+s{Y&|H6fNmuy$(YwUdaVQ zRS99`3-NY3GK;ScWmPd}Y2ZY8+$GIM+S%l1P`$z&Y5uE#gUO53`YD^Gk9IAPAc`2% zEDpXyD3@3=OPTMouyB9!Ie4)&XqTb!xLY;JFKF=f6R=bb4jEVmGJtON;hrMzCv%Ho z=8>waBFrsw+Mr_$%i5MzU~UnO0}q+97!x0P7&Z#2mab_~G!`q*NakxMCfkO1?!0XS ztRu?!$CJg1)l&>LBC{-3wr$i8&~#(l$edPt5=AMhDhSDZDcLq+37N2L8#G{}L71>I zt*b;r+cpANp(YDh+|$y+A!-ZbwW4nTJQR**dO&*sqo-)6&iL(|LOdH#;2e5vU52g8wv zy`-4hm#vK$M5M2vlIVvko3O-tVq~i$NveXGrQ6n+1P@^>$p1)xK9pP$=(3cv44;HS zPrgzp*h^QL7n`5@5eh@juY%nxR-K>K!9i8>nA+i|q5}0GOoMsVZ*x#y&Y;_dd8*LU zGS$Y5d^XFvc&V^NOLL>mLhwKgs$f=|#dn;qBlr?H)E=YfXjRvYD6xyYA8=@Vj` z?6v5Pz8kkL^{BP?G^4Ipf=ixzC#Y0?q_K0?0N`^Uux((*lnSChx4+9}cWfKb!c#FG z@}`@%cshm$UJG1xquxw9zh&4!GK8!YHa~@K#2Nb*4#7SQ`+=}90WEpL*oRtgRezss z@6ZYVIJu?w3e4}7i4|s`>cf&RKp1QWVtD;4&!wu!j*2F;i=)JwBLi0@mQ)li=YQTWd{ntR zF>)orX}qkW#<_KrQ8Frqsa{<&s;GYGL$oyPl#EKb`)=T=+H=XM`R3}(J8e1I1~7k! z!N#UXF{{b_EQBrM?IM75b}3MzLU$;-!Qgmmxg3CR#1g)Ky0gbiI@w}xOjXK-cG=m4 zi9#Bav_7))A^7m&>38xFSDHM;6&A@$q=BI~a!8|$lyw$cI4&lCO>jHoughmiYb3C= z&hw%RVP@p5c{c z=z{4~^MzI0&S8aB=BDG4&X#Mv$4>5Hr-YWlzi#pNIM;%|3sOujgo3*8L z*@%50Op?KXAqA{}7o>yADXcDnbQtQSC7oQ78QwSoI7Dvi&V4K}50zro1Rfln_8}eQ z5sO?xc%^z!)jsizf#_6(KXcBaEihB8*U!VZyzgnk4dJj*t(JK|cMOd?ZB4;V2DCt%-bm&E$i9Om35w zeDWY4Om=5xegBJAd=_7&^MoO6dM&d7!GymZK2ztSGE!{@5=td~n8k=KZTEsVgLpw~ z86!euG!ELGfHj4Q$a)i8dytYg#lkU9a4(!aroz+n1i4pZ12=I zWY3GJZy-)RR}U7!2HgzgU*JeXFz-F@g(I<+;z(~y`%c5ORA?DdK<*>0Sx5nB*DZ0R zbu3ybpk8=`v|f0`BJC|AqgeR)7m^epOwqy@)zAGBqZ(=F?@9sY4suiqp_Rzq5d|cU zef(bD8cr+TtxX{>u`czv~b~Y3NR(lRB&Yg2NET&YzGxv7L^nmu55Q+ zugjHH-D;65vm|=Mo1FQ0+e%HjU{BL>aO&9a#=qWr^USNX91Ke)m6{IunV|b@=Y+pY z%ds5E#VxZ=3A=@41T(ogZ(hUX5_%`Eq=J?~jTAW(S$txTRsv*~pe52uSvBmPJ`+6QiV7@I4wl|kBFd^+#K~Y4eWk=R z899m&F?B9@p+ZFtm7RPxx9kiOZ_K)O3JOx%)}`u+J*4aQpN4*bq0}dX^J;zgH4LnP zH&%GNJc`laBUS{&&LwGxG)d?oyzlxUSY!)d%^UzK^s4ditvQ3aO&c|z4nwUmD4o2nA-gxySS5(H7^cL%Ycy-8 zxbhc_>fXOfr>mD^Id$D*LMHW?+Qhz12D$R*WDchCP5~tOLsv~hYsO z!R*6hp!}8rb#Xp&IK^)uc?F8n$ULNJ1e1cy9-z#M2jPdNYn%BL-&2PWKO4ht7=UF0 zkDxvt65;1@GH6UX+Ud`rwW=%Yfkv9my&y7G7+!+IXF9>!$g6|mrwBPUAY_53o}xBFpupxJun#Etat~>F zrxa)Ho*11POVAU~rd`1~Fapz3yzzOz(S5Etm;{uZYv6cb06jP(kyxrQXEGF62?N2L z`8NeN>Y~HK^&LYcPaq~?7)JJ3de!+mMtNhTp<`e$ylshZmGK>V$@4*Kr8!5I)h7tW%bjCN# zq?5fg*uL(W@91S&F0n`O!la6!D?QAJ$A5WFvD!rWgwK=(&k=mzUlfOxW0~9;OW-Hm zzV=?=_rw~ZYWr*|58)VzJ&1RgL;!0liY%^+frCwmAP;@4PJ2A9S|GXgzGH0usE%@v zfCr&H)3wo4)aYug$Lbo*YMT2ba8QvvDV*RZvY4ts(Uwi#Oo&pqbj2H_RGyn5m}@O^$y1ZFaDL} za;YSjVIVpyyfeuI>qn|5BoF8~JXK8-!${qI5uBhaae8r!!@;S!L_L&sKg-4G1g5%E zCE>VnO-#qZ2&`%KcTLOQ2AY;{pohD}2)7e|PB4GEm1jWlw)5i52^?ALlxfo=$2tc-^D~EeffcQBFBZ?_nof4s6s%0(oh%sQx$@BrAGHFC-1tSx2hirP*FMo4l4vq zR#q7|X^8cLSzsExuLu6v%+y8^#?yVU75PW#hm9y#Jd0#wg;pizRtMwmU=38tMCi9# zMRetAimvR$JY(fgwO|>-pgR7u4Aa5EGQ6Nx2F4IwNrz#y2#LmmbN9_R>rF>j&c6xr zFTRPc)Wi;_80w# zON&@?(pX{{ziBRnyOvN@OR zY&k^yOB=%bl{8q36S39SgCO#{VLsT3YZXNamh++-BS1!bsI!sI(OxZl!W-`v0G|MW zBBZv$cs=XKV^$VBAEO&Y{Z{OJ9I^A1!>}P8kKwlYDhrZJPqD>_4&4OcN_41Mf+@3v zDJ`BW9phC*3)VU__rg_C2wq~zNN2sQJoBX zHg3AS6L`*Pk)SJe8f1LtrFkxj;219f{`r?w+~HVSA&J*279;IpuH_RvgnH1~L>`G% zZ}zJsVV{0kw3ICotF5#}8cV^{*lKFBRBUhkU%`WOcCoX1t;A~OH0BSOk|rsSHWxsd<^lvk z4nU(8=2AOeCp|{rir0u7d<~tG06s}@I&3OeIc>VTitZX2XoZ%jX%Q0!vH88fpjNc% zZ}XncLQQBSPXQ7!^M#w(@!kxgQ^W2xvzY9xQ;ST$~DRF!-&z-Xx*&B z0P955h*Ly1c4Xv_4)bwx|48JPvZ9Kb-4p?7)=`_ZZyT?+_okRB--OZ1rfH1(r+dLR z-grS$HmtW=kwvlJ8uuBNtoX<}$^8STAX3-h=LLS9srv_nT>`~GNxOgcynfmPZq5o* z&;sg!#C_a9sao2KW)GMgJ%S$xnH!FY@Ufq`;1EE zSaC!fSG%n!_DW=KFYSuN$fTQy#vzB=_r)+wB_X(hdUL+7A)BG&F7{x@UG#nRYTp;6 zoqS)cbQ+7V+4todh1>YP&bSWiJ151;O~aIVLUsp>DGRmSAXu zOg@ML<7pCB@ZnU$Dag2BRv>`HvKM6x1w!s``KNUv46C{n`*AN9R4LP|s*HSol}}J$ ziU&$UDKdnm)dN{x{n|~hTyudof@NqN6DfDE#-3c|d@mqay;bEeM}5gjQy>oHU%VV4 zdB~gJCY44v`Tw?0oy;bmmU*T74r-|0S<*Y$Km86{PI~9D->ctQ9Fav`k7!Vj2<79n zPwCFpSmUZ*{WQBV&NhX$76-Dzv$XZE&@B6Ys<_(dt2Zt8%|A^6>B0ce8?;qiJ;o@Y z(1Mc4(^yCXy)2&)G`pb$mdOb=QJE)q>%yT~LHBa+X>V2BZ(e=lGy%ZPh26R!=m?Dbe^B=L`Le}23RniLmMqv3=}x)=E`&peyuR-0D;(Z(STqrfk3&=%_L~yO);;hcmhzB%w9-p2;)A{MAj>_xwz}yu2&NwW=9`H^ z=H#l$4;G@#4o+wsY8Hgh2k0^G4Ayh`7814K_Vx1j?NV93Pql^9TE?RAn9b6`TfR-2XL|L4`qixv`l%X1G!QV- z%BGb9olgfMo)SzT=%J+0dXAfKMu3G}SO`H3H0Yfk2wJeRdCsFXm!^B>554e()xpsu zliHLv<;?C)JA^rb~Adt5%- z5v3qXn9W3Lb)XhexmTqt~d4gZxjcT(AJ!t9BoS>>kgq)&A0J z9>0!G#iC&AC^CUt6i&GZ%mTeQRcW&)3}Z&I26~DgO<6buhvqGlCh-rCJpd4+?b}B?xsbOS; z5hAP7lM0dD#R%9QSE@gG@Q44KE2`q?bOl1#2^)sn3{9#;0IoYw)0Ex|WT8#R$?~Zx0Y$k>QX*D+B+d|z-K0FhewaAfA=?TtQR#o4%4o{6r-ZRt z(Xnq>E}Og~(6NrVLf3)k12W_vK#3GRaq$lbUy?USL^HrcI*YXd(X8|V;l=BH_#=pq zmNrxMWfrjZP|;GDOtsPnrS<7VBsM1SfcioDIG`SDOR!J^s=k_4o2D(4-W6jDGaNAK z>OG(ONQOix8&&TpQd^%C;2A|kEbE{i?2Pmd3-VU5fJrR(ply4G>l+2dijK67gcgEu zIhx#sD91IygwOsIFS}qGu~_WbHsx-H#Q?6Rz-1$_+DtE;F7Mpcue~4S_|p> zM2E-Ojv>(C^BxeNozSYd^0@lkq_p)nTO`-Fxy6DFD9nbg&jpEf=3VLXua`kKTxx=>8E$b5!! zhP7WC7Ul?uD;74`r11`B!eMxf3lZl%urMucQvD>)u-8FRF)%5>Vn8A>VCtv{Ev!^G zx}^^ma;>Nyem8va^UzCmzrLLk<#>2|qa6rP3rzOs416J=qv~CcozaX9A&;@dFqV8Y zM~>Xv6NYJMQyC0IbxUdiq!^g$61nwEZdt%WC14opghf$MB{I7lCi>PgE@PU6`>Ek; z7!NgTo@8m^yI`JB6e6K&z@*%Hg*>qQo8Vi01%g>Z0+N@RjF(*;i47r}eB5Did#2E* zRz|b-%J}kLtxK=u0_biygG}m8OTmzPWH#}YysqG~va@6q7U*g7UJ6cyL;WZhkA1aA zI`7fz__}nxfAMY4_19fjO|BQyBc4MnlOhM|bE&%fmJhqzrA;tUXW(Myc|X@CKg&XW zYfkwauFNDg;puW1Jwq%r8C{e&4!VpZwKg$fKO$P=jfRWCf~>LEY!zaw?pG(mhU($^ z8;}Gz2`^SBKclV8TzH4RJB1))!hFHo-esKPjN|tWBe6}j++%A*bkeARVc?{<#m;Zj z0dkGQpGdcm8H0iekcbS3M#0JZYBq|K?3y^vp|5Ni?s7&$-Lxq9D7kKea9@^h_J22$ zq&CyT!y?C%cS+26h_6bHdsLV3YkrAOzG0=mxWIJn?fEg?yPu{+3=d%-Cq=GrdtPty zW;Q_`_I+V?IlI#u#Z%NTYNy906lE`i3^lG-N)nA3nVKMj1JH^H2in~=2xh|fYpNj| zg~;S6oP)Rb_ik{EMI6ZI%(;Gr@v)vYwq;C(3U~2QZpUkZ2izqsNyt#71S6Wl7 zh9@u2oti0&@k&14Zundt;Q0~j1`E5Oq2dfeWTiL5z=MD_ zlRNVrgDlH2eWZn8`;c%O9u`|Pf0qznmGr+g&^GVp)#WWm4e1|US zkfU~tC%D8#mW(QV9wvqzBLw4)VHR3J1+8ch0YwIAkiS}Ty`y9LGT0~JWe@_7;@+*H z$EmTqkmNQaI+8qeJN z1n}_y3W@HCc#)}-)HD7%HSKs2hmi0t684AH)jqj|RJCr)?Y-kYTxOzihwwX%NkbdI z8i%3!Kxj*yO>_9DZSTLt+$O)kA2}XApiiiLnwN!k>B8)KahT+0r4+C$vw~)L_RH@) zDQ|yU!0$il!mzG~7-OH9$#mj3Rf_@0 zrJ0AXF4Wj2;2}gpnPw!ZTBNcb!XD`-1s?BO1s`xH`MDCuw8QnFJ@JIW&B)Qz@e*uh z2rop_RQsZ2Amn3I5DRBZX8%++4r0(Weo@OtdP(*b8HvvFsjq_y_2&tG2aCM8;6x^O1$K}eN|%p%6q50d z<+IL-?gIrjuw_kO$b%eAJN-I7Z%4NPI=Xy8&r1?h&|l5(xQ1Fsi__#2l-RWN4qoYC zm*4q0GpvY2@i?X{p$VJ~#Lkvx<57tjjU$lgY`8Y2o!alo(+Xrm*@ptgLYdcC-~k)Oa{Eb2Iy1mwH) zc^K0KABbm@Q@~X+<>AiYxpfB+)KLbAE7SA&e29HOW&|Cfa}J+~E`sh0KxID8od>ce z`O*%AXsAcC?aPC@zpdw_B}pT_4`YGBhm0KE$2R3V9{LyDY@0??}hbn9T|X^FG3 zL4e7lv^Okcm&5QTA8V7*u$mBA3WPj;f_8m25#@$gXNo42;!cCaD@n>tcpS#D_F#AL zc+><9DkubH{UB{7U@Hb7eZ8EoH^&mZ+MV(T%igC0o!O@7wZR(h;WOPm56v`aCNmLC z`#B-8;#rt?TbL55z>1^`wzL&-N*Qu%1mpOjxVTpHL zR{Xjb7Z2u+rrRhkU+gZDnwoICx;rOPz$Uiu?uOJI%TsOX4r!Y1B9P?O9h;J8m$H@W z_%H%-hk+~gAzYrVXmTk~#b;c#(B)xl13N%08y9>;#}4s4JgmZ$biNr$COc~0H%Y)> z12J|;W^=XAK4}wNs82c@I;Y`;R#}NQ*iT|ueR@Lko_ql;yD-Cd2BitOv*mWdm(-5m zZ>mh7JchMHwlbx_@h2?_cjBA2u%QjMLbK==se}73$_7eV9Y)IPs7{XZo1{@FR}K5S zG*l|1s0RdaOTDsHNKqjK7?jijB^bBnDFIuBGkO&16ECJ_7*6%JpFJ5?3}y@;60~Z! zKY$2`_=q`(dbT&fLZ185^gO^Kg>^PgSW9lD)p05HKE(>z43tppm%KX5B}cofl=^wBjvDAL zPjdv0`BG%~0S$2~Y{~mM-w|=hsi-^95v-{T46!t)#58uW`$udiN2nWI!UP1h786q0 zc86|lPrZ%pDIffVY3ZKd-#>K^*E7Fqw)WzE>?W4b8U zmss0d)$B=FnLPT7o%ZhIE`UG=E2?|xh=>Q&+>8k!k={p8*Ig+rPdAB0Y^))E;Bwvf zlxt4shL~?+bZ0(a8fQaB*Avpmnt0d?<5_@`9+ke$YlhWh9_6Walv2=n1{l^2Rgd}# z^Qo_Bswm{A0ENEZ$*dnp-|qqw9?nw;WIac(DbBhGW~8&4UgCYQr}t`+GZDXfh)=*a z|I7^>(d3D?$l_MfS!FKJa?ig&=-MG&uhH?-v2M-AYsIz(8*ZXt5zJ>J+jVjFyPgia z?6GKg6MZ?0y)jJ4Thdl}s zHiYP2+VoT0W6T*emi!`XcZW3~$vA~cvD1>$*l{-)EiMg@JkpsCXoXq%dOaf;_EcD@ zgv+44xo7==R{0TDRuQqtllX+h3o!~3Evs051fvhw0d?P;oDL9yf9P+XI_(r6q8;q) zlAdJpNB~u*2xq^fz{k~pCh51i!A|PFY#`~5OY8A?I^v54R}*ie*ZHQY9ucg*XR^-A zb6SC@SDs^m2(q?7JgVU&sTvSrpxVRB2@t&sAi*H_(12gdkh%Bx+aqpZUgSLvq5Trn zi7;*60BDh~1C&{LzP2Z+nPMNi^uxJb{(<7ky7`V1B9DhxW&=?^w3b?)emK&HKU;u{ z=B8bFnz$-6ty|kr*I)MrxZRV7@$(yn9riy6VYk0-JaU1|*FZvl3(d6JZPR24+LwRuQ zCiA3{<$!x9Qz zOZjO;K21&fqpef`a$e-KGUWWPg0aV`gBjKzY636YkiP}_NOy>MH^pwMcDgPLpA=Mb^vLpu~Mg>uQB-P z8UcgPXz-YT)8Kg_mbl&;jnHKw4-R-P6em*I2M>VMLKa2ChVuZL>PXGQMrtOWKsyVz zM&R1A6A9|ZCJZHP3VC@h%>}byQ#jX~0#Z@hRcvbFd&|G?VsrQfX7~c_2oJC+X5|Ys zpn69z-$$5a1??_%H%X7#>OYHU_wt4nrTPZDE|y=EGg%sy$Gddddj1#JIr zm2mEnq0!9u1%fAx-7%#Y(o%QGH!_*oK^Qn0dk#1?h&Wy8c;r!H2|dP z98;2tHn5fQ>_k{A!b$>n4a70VRudNHRsst0@`9GI2IU1NtjAmy<(L-96CG4{^^TOK zm-;*zjBD%e*J(j)FE+7ZFy7yLtPruiuuE)?yulVNLozKzJHkbpdNfJ>U1Razs+69S zPSK*mSe(b+w;P#j_nfgf*)Vr+k-1JZSHBgjks&Dyg6h%jD)omjsZ{LDxiYN?>A;l$^dru z%j!|vikER_;m6BEvR&m3bjI@DZbEABZggwH&=MkkV>~$w3$yowd$HuqT z*!Y$JX@pz_(${mH(N#0sq1dZt+A)3VJ_4UFj~f7#*zv-~N3`%(8y~#Z$F;!gH6}QR zg2OvDzMcf7+Qt`6$kK_x7a#~5Ur*>~BS8oDKA1-qKHDu%WwjcFQ$iM9xdg+Xv)uS| z*jPlO3g}MC&^5HX)0-y-chTo+s!BkqyH!W%Q(|0TU)8p>T00mN=pV{dId18b zItSRGn8^lxrDwH8(+hv`JAWof5pZ5Z^i_>d+>^^j8zB4S^qhGj)aZ{=Fd|od3*I~& zEjLb@zy2VU*OP%C*53gV>aDco;$h6RH+;m2a zYBSNDeVy-tdvPvf4QJFmU7n-VH>6<`WI{?uFdXFA6iYR7;|eR3SJA;1R@p$zz(VXk z_WvcYDfOS>MPe-RdyFA|sHOvexQNB=VsR`k^(Q0y@j}J6>Gu!{CSxLrlTu%b+12!2#mJ7B z8jUa_h5n^=CajGAWKZJjTjQ(M{Gq7VgBQ*)Mw}cTv@nINAC1>n`&xXwI88&6YTI9Y z?SRk=IE=s#?F60ZEPN_yv`d>r8+S<&jqFO;UVqABlaR&QPt-T?;*fgL4G?0im4FgsuITA<6)E}I0}xC&@_sLH9V z{Yui!Q;&sBu|pd{6UN$?0J+?jmqmHL#r$x#%n66Gi~k}!*B+Tp@V9^%MYs!6%d*WX z1HARh$iHwoZGtbaP7bHn#o)B**%DrTLIS<&knlU9B=V+nJ!!6x-1~XPCBF!fr)Seg z(*sHjSbisWS+giygH>AWqaA`=B#-I+w(W3u-w;>Yf!r&>_pHT%=wZ#v1NkF0bnoc~ za#uYNR0)~K=Ldp+W^o|)1J!MZ*RB=py?V`{0U{PE^tmt5iQxHI?ZK=Vg9^$-(qq*jAB5BLgBmgdSyUwNp#BGkD2#bAdN zn~kDg?3pwr8uR096y3qRPD7Ds*^K59{n#kd0*TStnUU6~Gpi}>2o{!t@ ztVocbe13Yxdv^^E4Omq3I^C(U^Y;U{8{IBB@r32Zu8tFL?c(gqi?}7l^OCH^T_tUj zaFCpM^-3ey$(%mj?AWmNxf}I%qkV{$8uY6jdymC*;fk%_@H$7U zCe{Yh*4E1oPbYRuJe`;BDC&*h-aNomOlJntOsrPg^8rUpnwSo;oDeGUN>Ayi>nGzD zv$2nk7Q3?w!46-6@q_gsQkV&@zJSSVr5o6 zUU#4X{V@iVFaT{7cgw`%R)uF6azOVy%@0$~y*ce{vC-UHXnZov@GV}dUlD&fh4Dx; zdDNJU^#;=safBYKV$&5LNlBdeCWFzjT&(H|y~cL8?gVj>F3&MR8C)3x4>fi>0$^2% z{5Viif-5bp%lpJrwoA=MGPT-lB;#m`JcOmV-$8}2pU9wYhNMS_OS&wlO;p&$A`H?- z$$$Y?*8mkFTC|?*RBh8SOV6>L*(qhM;HFR(t|rK@`+9O+mWmAb$ORDF<2nQD$&j`# z`G@BX4ZvLkni5JvOAljltgJ4J_=U_^sxEss&@)SaR5nw;qRs#mE4w9E)iJ&*)>B1`yvXE3#@wKDf=y_xw&%$}Y77xBL*eX$5xP3($V<_zf~yUr zP_^shY9Z~9cLeI3l@S6~glxwst=)rISrM>O-Q<|}#3o_C)N0*s0G3B!?lM;k7o_v0 z{JdB&a2AaYe6qrLT(8OOd6u+0CU#e^!9e=cDuSbMRe@R3Cs+0tcN3Go#8+^#U#^GM zx`^TPG|SCv+NXlPLE7{TZ@5>zgpIcym*9JQUt-?`DUzk0po%0cnUs_L#Xjj79HLQb zvZ7)oLh#hVG}rUEpcd0Rv?HmN(Pd^g8hPhhWfs(ZLyVS9i}_R|8Hg0`3^ey;l*#-8 z;ii#h=WnNohx(y&iuH*1KFpTIu&t`7cR~oU3=$8v3-I&7IrAYVqV}W&**eFd3H5fK zN(%KZBGlU?2)o-Z&%g&yI9ARYOx>Y8?R2=*M0~5m<21y6yAcuJsUwLfh)3uI;;3{X zcsiEwz6iL+KnB3{w5$D`kY`sSIUYSG#}1f-dbTlZn@fEx6`00A+Ypf8?x=Tlu(x9a z73_`wOExTHv9ssJ#6}KqnG2Hj^a_O}?^Cx@FB{=uqy5Up6njK@Wb&z;&e__UL(^+< zYr3Q7k;VA*kO`}ac6%s9GSwXlJ~RcL6!K77s= z=g}7!4ihB&QDoTMwn$aH4H!nh7Z=^evB@cX>EM<(dK==Cw3$MALTb`*zbJd#c)Q^$ zHja@^2Vs8eM7)+7?rbH@Z;p7aw;pG&V(kv2UMhfK7m)FQ9@ zA7naqd<97B3|bE1*lytmM!FQ`57NOYR>Ew_h}RhLL)cPtFb|}OP>hxEouU-gg$F1j zh#^hY1NcKh&0hr#7!8HT_RP-N>?sRGNh8yBa+S{6EWVwwun_CB-TGJsM*=Vt^B%fY zIs(bsQvT{gg2wwI^PUWA6;9x3iheW!Man8*Mn-wh2rkK?-dfg$C=@p8}MH#^B zQ>QRJ3t4wXp8jgN>OB3`>W6;g9lNg}&9+j8JfZ6(?XS`XHWBjeNvUIw64+u?*Hm^j3Qe1m4d5ItGF~ zd(|$f6*$Jt^+Tjx@lxVz8C)F}&p+4!=& z=LBIX9?lcCBp6A;%$a4NzKWbl@`rk>a87W>IC()wh4ytk{rEjSA6d%2e3;N#W^AS- z>8VNJU5*$Bx!rG;gxgKvEkTyZqf80B$Z2y4ya8>-v7K<;N#ex}RZF`TdXfG@?&)Um zmLXXeEDF7JCF>@Gw+1C(ud{fKCwhlI?lIOM1l^3aR&IoD7fFeB6m=0s^_h}XX~UIv zFP-BU3jrq*=9`8DM(rO%us z)Z+SaA(t}rKqW{{qAjQe>V((I_5V#oXwGgFWDUhLLV>f|A0?w20nQw&;KPrTx|!r8 zrrQu&+C>b7kdB2FN)M}BXn_9{d8YY!jyZRqcqafJb<*b-SK!un@qqH{B?I%qTlHJ% z^+-|ro$9F9D?}~PzP2rLE%nXo;T006@Ctbvv3_1Pt?AsVeOJ^CAO4S46(ozFX!bicw7hh_Nc#=d{YyYLZEBaEPEy2GKB)F z2!+04c9oW`uZOSJ=rakBqIf8$&&QY2Tzz5H4=zrQIuHsml-46YpO05*4v>MGcNXK1 z=c)ce)YU;f(@d$vheNd!4UAh{vFk>ubw2L=j9|<_1Y^~5_-%e3aQ_<&nSpXmQ^G{h zfZ0_helbXKp}o5n+xwj}Z*T0`Np@v&|4X0-^O!>omgqmyqGrZw2q_-;dCh>0ni2rw zh|PGp#SPg9_$ZApB@>~rbTbiAc8xObHyi){s2F!mH^pHCIhe1c3YQ~M3U8n%Zd8G8 zoeRPNl}35YBf6+ml+i^CJ<25G9!0^rJyUHtmXTZu(zh8aQW!NlLL-MT0$-6*uryv> zt-b+|0i~vRYLCi{>C3v9mzIPeC`OQJ$*ASyWfscPJe}&aITl|sUU79fR9!*%A1W3V zopf~yAEyg#FJ$gt%^t>8QDKh~V8b5zyDWQ>VXX5x{h3e?*%13zPgkUc=%rD)a+&vT z8dukLP?HMcfiaRKCS|5j!N7A#g@he;1rx^nPWP7w4J&lh7PP$O4 z_Lu5aaLK-vOl@n|>Cdt&FbOEKtYXb3_xO1%f_iOTM^Tr9BP9>phV7e>EHaPUW&&3; zI-X>MQt@IYk3`!86<&sdtLz(KD9D3f=#15m!(sS%Tr>C#P?wm+Fs|TXZfobmkOqXB z2ciR@qt;ijZGc3}T3jugdoH7n81Wsc;G(SofDsmF5Y>8UPw-HH8JvADACEBzF_)f7 zUzJ?ggAG{&Q|T+nLX3VNpFF-DrOA9zn!FYXx*;zRo6WqvzIJTk+U z>>gPIRR3l-kQmFA`)kfj!4GrJ4>e3b_9K88j52tCaQV|R@5J7oVkp1COYw&2{Bv@1|A{#W0~`_mWXof4f}%;ntmn=<0o>R-({Ank2uq^NP3R^T_D+X zQO|)Fh-^id`$Ex4hk&K#)UeL<^583(;cvKnO~L@z?@Jx-3km!(c#06&rJ0CR)UJN1 zKNvq|qZIo^P(1)3-oEZ=@A!W>O$jI7Yn6|j{$y|?4L=72K&>#t59lQDa=(wk()wDr zkkl-bQ6iI3VuxV<$9JEU$oWuz`~?9WW}jri0&dfhxq*ya7i=oE%v~o3hC6}HuP5od zU;Via%a**6TC2B<>-k6|81AI2vuEBsBt1u&14*Wm_12}CGd55@}et!4UzHA%k^SrBz zd9nNb$v`R85%Yp~{l(Mq zuD^J0@vf8qXmZ!{7_>bG{mRo}(62m?L9zSETl~EI)ZP7p2a(+-TikZidHuliyV&y* zIQ~}b#0&CMAjn6b4ud}WJP!&U^!zTiJqG>h(_zq`KDRJPM~&brnxwQ7d|=^3!8O$@ z4u@;KEzKim&gAzTduQ`HbzbD)Nj_ElJQ(Ta*TFsWj^$z!!5_5URJOE(W)N+=s%0G{ zJD&(KSWJW_ZMR(1D5E zq-g3#ayg*{=BsKi<6%6g>5O+WrDr=+N^v>|o*<=}$}!A1j#J~>V2u<8H6!!N1sj;W z>qC^~?sq41mg3HISQ_#EcuShxixnoO>H-|TCr=E4GQ=t1H1iqF;V<;bhl;l$kYT9& z3z8*NHF?IBqcc^%<@7O5J>=5~6ys`el4T@h$nX!XI5MY! zE#u%yO21Gk1+Y_4*+aU-;HbRM0X@CXm};QfKUr77a7<^jEK0W^7)j@+w~JbG>Ol(J zjIbRA7*n-_;ZYD(!%K0-tQ=43LM(yOmJ6jVvo#CNR1L?$$+%DTt{+YBwmz&JL}ey= z$xFQv0VKlyPVBZ1+C6R71}`$>G?;~~jlp(V8<2V(-5kRThi$Z=_w)4V_oSDf3V$#r-(v99o zBVb;HAVGt#f(Iy+pR*`;kfo9z(JMnI;8Hw9&mp8&&t~+aK`_YdE#Ko9h~x4$>q%N;pAD89_Iy zyP6jgpQdmS&j22(;5DYnRl*)Hyj>90>-UFSF}zv-;U#r-<9Ouy-`$Hn+9(sY>COZj+|^dr}WZiI&ejr)O z9;NJW3ip^Pjj)dPn0$}`5%JnwA7aRSIBFzB=U&22RtvJ=wJ%!mfujV!haacB58~|7 z1K>n+NL44!0q1`}RpPi|8 zvKvwznl`&3)%t0&8&XM^I(A-~$TP@pxFv@d>tCsnr&GH2zk6+d!mawfqTkRq_ixwl zxsbhyY@7Q&0;LQb~;H8?T}$lSnc7%bYnP;JlVGPn3Ys zLuZ!A@+GSzB&%hTEl^OB{3~hxyJy9Vv;Q9Pqsblrk@L{xM0b+fZ1Z5)d&=1$5 z&9l_xKIs*+zFSl?d)17P30d7&ne~fVuq4)Sa*GQI($;<@4=b&QoIT}VCnZ;*&-`wS zbV@usSE9CrC~D(L2;0eP#DQ{WrzJAAhOoHIa=DMFI7bQMSO@bdobe~NOJE?Me! z{#9znbuAx?tO17+^6&q|xymdy8{!>giNeX$^66d=_&jVjhUigw`bJ≫*U$BD6{z*jLsj`bZ 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 A;Q#;t From a3e15b6faf4eaa81aab40b4278c2c3ae019fb098 Mon Sep 17 00:00:00 2001 From: Buckram Date: Mon, 21 Apr 2025 12:45:03 +0300 Subject: [PATCH 04/10] update tests --- framework/contracts/native/ica-client/src/queries.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/framework/contracts/native/ica-client/src/queries.rs b/framework/contracts/native/ica-client/src/queries.rs index c4a5001dc..4134ba132 100644 --- a/framework/contracts/native/ica-client/src/queries.rs +++ b/framework/contracts/native/ica-client/src/queries.rs @@ -226,8 +226,8 @@ mod tests { chain: chain_name, actions: vec![IcaAction::Execute(abstract_ica::IcaExecute::Evm { msgs: vec![EvmMsg::Call { - to: "to".to_string(), - data: vec![0x01].into(), + target: "to".to_string(), + call_data: vec![0x01].into(), value: None, allow_failure: None, }], @@ -246,8 +246,8 @@ mod tests { &evm_note::msg::ExecuteMsg::Execute { callback: None, msgs: vec![EvmMsg::Call { - to: "to".to_string(), - data: vec![0x01].into(), + target: "to".to_string(), + call_data: vec![0x01].into(), value: None, allow_failure: None, }], @@ -367,8 +367,8 @@ mod tests { chain: chain_name.clone(), actions: vec![IcaAction::Execute(abstract_ica::IcaExecute::Evm { msgs: vec![EvmMsg::Call { - to: "to".to_string(), - data: vec![0x01].into(), + target: "to".to_string(), + call_data: vec![0x01].into(), value: None, allow_failure: None, }], From 8b5d383f8c0b1607c3d580f897cc30f3224a93e7 Mon Sep 17 00:00:00 2001 From: Buckram Date: Mon, 21 Apr 2025 13:47:49 +0300 Subject: [PATCH 05/10] deploy ica-client --- framework/Cargo.lock | 1 + .../packages/abstract-interface/Cargo.toml | 1 + .../src/native/ica_client.rs | 50 ++ .../abstract-interface/src/native/mod.rs | 1 + interchain/Cargo.lock | 661 +++++++++++++++++- interchain/Cargo.toml | 3 +- interchain/scripts/Cargo.toml | 1 + interchain/scripts/src/bin/deploy_ica.rs | 107 +++ interchain/scripts/state.json | 44 +- 9 files changed, 838 insertions(+), 31 deletions(-) create mode 100644 framework/packages/abstract-interface/src/native/ica_client.rs create mode 100644 interchain/scripts/src/bin/deploy_ica.rs diff --git a/framework/Cargo.lock b/framework/Cargo.lock index 8ce119dd2..2c5114f6e 100644 --- a/framework/Cargo.lock +++ b/framework/Cargo.lock @@ -350,6 +350,7 @@ dependencies = [ "abstract-cw-orch-polytone", "abstract-ibc-client", "abstract-ibc-host", + "abstract-ica-client", "abstract-module-factory", "abstract-registry", "abstract-sdk", diff --git a/framework/packages/abstract-interface/Cargo.toml b/framework/packages/abstract-interface/Cargo.toml index 1ca54e4e0..001a6d29b 100644 --- a/framework/packages/abstract-interface/Cargo.toml +++ b/framework/packages/abstract-interface/Cargo.toml @@ -54,6 +54,7 @@ account = { version = "0.26.1", package = "abstract-account", path = "../ ans-host = { version = "0.26.0", package = "abstract-ans-host", path = "../../contracts/native/ans-host", default-features = false } ibc-client = { version = "0.26.0", package = "abstract-ibc-client", path = "../../contracts/native/ibc-client", default-features = false } ibc-host = { version = "0.26.0", package = "abstract-ibc-host", path = "../../contracts/native/ibc-host", default-features = false } +ica-client = { version = "0.26.0", package = "abstract-ica-client", path = "../../contracts/native/ica-client", default-features = false } module-factory = { version = "0.26.0", package = "abstract-module-factory", path = "../../contracts/native/module-factory", default-features = false } registry = { version = "0.26.0", package = "abstract-registry", path = "../../contracts/native/registry", default-features = false } workspace-hack = { version = "0.1", path = "../../workspace-hack" } diff --git a/framework/packages/abstract-interface/src/native/ica_client.rs b/framework/packages/abstract-interface/src/native/ica_client.rs new file mode 100644 index 000000000..73d3370d7 --- /dev/null +++ b/framework/packages/abstract-interface/src/native/ica_client.rs @@ -0,0 +1,50 @@ +use ::ica_client::msg::{ExecuteMsg, InstantiateMsg, MigrateMsg, QueryMsg}; +use abstract_std::ICA_CLIENT; + +use cw_orch::{contract::Contract, interface, prelude::*}; + +use crate::RegisteredModule; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, MigrateMsg, id = ICA_CLIENT)] +pub struct IcaClient; + +impl cw_blob::interface::DeterministicInstantiation for IcaClient {} + +impl Uploadable for IcaClient { + fn wrapper() -> ::ContractSource { + Box::new( + ContractWrapper::new_with_empty( + ::ica_client::contract::execute, + ::ica_client::contract::instantiate, + ::ica_client::contract::query, + ) + .with_migrate(::ica_client::contract::migrate), + ) + } + fn wasm(_chain: &ChainInfoOwned) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("ica_client") + .unwrap() + } +} + +impl RegisteredModule for IcaClient { + type InitMsg = cosmwasm_std::Empty; + + fn module_id<'a>() -> &'a str { + ICA_CLIENT + } + fn module_version<'a>() -> &'a str { + ::ica_client::contract::CONTRACT_VERSION + } + + fn dependencies<'a>() -> &'a [abstract_std::objects::dependency::StaticDependency] { + &[] + } +} + +impl From> for IcaClient { + fn from(value: Contract) -> Self { + IcaClient(value) + } +} diff --git a/framework/packages/abstract-interface/src/native/mod.rs b/framework/packages/abstract-interface/src/native/mod.rs index b087ae6fc..8bbae103c 100644 --- a/framework/packages/abstract-interface/src/native/mod.rs +++ b/framework/packages/abstract-interface/src/native/mod.rs @@ -3,5 +3,6 @@ mod ibc_client; mod ibc_host; mod module_factory; mod registry; +pub mod ica_client; pub use self::{ans_host::*, ibc_client::*, ibc_host::*, module_factory::*, registry::*}; diff --git a/interchain/Cargo.lock b/interchain/Cargo.lock index 0dd09a184..9c1564a95 100644 --- a/interchain/Cargo.lock +++ b/interchain/Cargo.lock @@ -2,6 +2,16 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + [[package]] name = "abstract-account" version = "0.26.1" @@ -320,6 +330,25 @@ dependencies = [ "workspace-hack", ] +[[package]] +name = "abstract-ica-client" +version = "0.26.0" +dependencies = [ + "abstract-ica", + "abstract-macros", + "abstract-sdk", + "abstract-std", + "cosmwasm-schema", + "cosmwasm-std", + "cw-ownable", + "cw2", + "evm-note", + "polytone-evm", + "semver", + "thiserror 1.0.69", + "workspace-hack", +] + [[package]] name = "abstract-integration-tests" version = "0.26.0" @@ -384,6 +413,7 @@ dependencies = [ "abstract-cw-orch-polytone 6.0.1", "abstract-ibc-client", "abstract-ibc-host", + "abstract-ica-client", "abstract-module-factory", "abstract-registry", "abstract-std", @@ -665,6 +695,7 @@ dependencies = [ "abstract-cw-orch-polytone 5.0.0", "abstract-cw-staking", "abstract-dex-adapter", + "abstract-ica-client", "abstract-interface", "abstract-money-market-adapter", "abstract-polytone-note 4.0.1", @@ -1428,6 +1459,16 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +[[package]] +name = "bcs" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b6598a2f5d564fb7855dc6b06fd1c38cff5a72bd8b863a4d021938497b440a" +dependencies = [ + "serde", + "thiserror 1.0.69", +] + [[package]] name = "bech32" version = "0.9.1" @@ -1452,7 +1493,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" dependencies = [ - "bs58", + "bs58 0.5.1", "hmac", "k256", "once_cell", @@ -1593,6 +1634,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "blake2b_simd" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +dependencies = [ + "arrayref", + "arrayvec", + "constant_time_eq", +] + [[package]] name = "blake3" version = "1.5.5" @@ -1630,6 +1682,12 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e31ea183f6ee62ac8b8a8cf7feddd766317adfb13ff469de57ce033efd6a790" +[[package]] +name = "bs58" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" + [[package]] name = "bs58" version = "0.5.1" @@ -1744,6 +1802,15 @@ dependencies = [ "shlex", ] +[[package]] +name = "cfg-expr" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +dependencies = [ + "smallvec", +] + [[package]] name = "cfg-if" version = "1.0.0" @@ -1865,6 +1932,12 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1874,6 +1947,14 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "consensus-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "serde_json", +] + [[package]] name = "console" version = "0.15.10" @@ -1906,6 +1987,26 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const-random" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359" +dependencies = [ + "const-random-macro", +] + +[[package]] +name = "const-random-macro" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" +dependencies = [ + "getrandom", + "once_cell", + "tiny-keccak", +] + [[package]] name = "constant_time_eq" version = "0.3.1" @@ -2161,7 +2262,7 @@ dependencies = [ "serde", "serde-json-wasm", "sha2 0.10.8", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 1.0.69", ] @@ -3466,6 +3567,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-syn-parse" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -3696,6 +3808,33 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "docify" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a772b62b1837c8f060432ddcc10b17aae1453ef17617a99bc07789252d2a5896" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e6be249b0a462a14784a99b19bf35a667bb5e09de611738bb7362fa4c95ff7" +dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.90", + "termcolor", + "toml", + "walkdir", +] + [[package]] name = "dotenv" version = "0.15.0" @@ -3883,6 +4022,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "enumorph" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "enumset" version = "1.1.5" @@ -3977,6 +4127,38 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "evm-note" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" +dependencies = [ + "alloy-sol-types", + "cosmwasm-schema", + "cosmwasm-std", + "cw-orch 0.27.0", + "cw-storage-plus", + "cw-utils", + "cw2", + "ibc-union-spec", + "polytone-evm", + "thiserror 1.0.69", +] + +[[package]] +name = "expander" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2c470c71d91ecbd179935b24170459e926382eaaa86b590b78814e180d8a8e2" +dependencies = [ + "blake2", + "file-guard", + "fs-err", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "eyre" version = "0.6.12" @@ -4015,6 +4197,16 @@ version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" +[[package]] +name = "file-guard" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21ef72acf95ec3d7dbf61275be556299490a245f017cf084bd23b4f68cf9407c" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "file-lock" version = "2.1.11" @@ -4031,9 +4223,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.35" @@ -4093,6 +4291,60 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "frame-support-procedural" +version = "30.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da784d943f2a945be923ab081a7c0837355b38045c50945d7ec1a138e2f3c52" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "docify", + "expander", + "frame-support-procedural-tools", + "itertools 0.11.0", + "macro_magic", + "proc-macro-warning", + "proc-macro2", + "quote", + "sp-crypto-hashing", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools" +version = "13.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81a088fd6fda5f53ff0c17fc7551ce8bd0ead14ba742228443c8196296a7369b" +dependencies = [ + "frame-support-procedural-tools-derive", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools-derive" +version = "12.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "fs-err" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" +dependencies = [ + "autocfg", +] + [[package]] name = "function_name" version = "0.3.0" @@ -4436,6 +4688,12 @@ dependencies = [ "arrayvec", ] +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + [[package]] name = "hex_lit" version = "0.1.1" @@ -4809,7 +5067,7 @@ dependencies = [ "async-stream", "bech32 0.9.1", "bitcoin 0.31.2", - "bs58", + "bs58 0.5.1", "byte-unit", "bytes", "crossbeam-channel", @@ -4915,6 +5173,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "ibc-union-spec" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "enumorph", + "num-traits", + "sha3", + "thiserror 2.0.7", + "unionlabs", + "voyager-primitives", +] + [[package]] name = "ics23" version = "0.12.0" @@ -5079,6 +5350,15 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + [[package]] name = "impl-serde" version = "0.4.0" @@ -5187,6 +5467,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.12.1" @@ -5269,6 +5558,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "sha2 0.10.8", + "signature", ] [[package]] @@ -5530,6 +5820,64 @@ dependencies = [ "libc", ] +[[package]] +name = "macro_magic" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc33f9f0351468d26fbc53d9ce00a096c8522ecb42f19b50f34f2c422f76d21d" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1687dc887e42f352865a393acae7cf79d98fab6351cde1f58e9e057da89bf150" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macros" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "map-macro" version = "0.3.0" @@ -5636,6 +5984,12 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + [[package]] name = "native-tls" version = "0.2.12" @@ -5982,6 +6336,40 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "pbjson" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "base64 0.21.7", + "serde", +] + +[[package]] +name = "pbjson-build" +version = "0.6.2" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "heck 0.4.1", + "itertools 0.11.0", + "prost 0.12.6", + "prost-types 0.12.6", +] + +[[package]] +name = "pbjson-types" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "bytes", + "chrono", + "pbjson", + "pbjson-build", + "prost 0.12.6", + "prost-build", + "serde", +] + [[package]] name = "pbkdf2" version = "0.11.0" @@ -6098,6 +6486,16 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.7.0", +] + [[package]] name = "pin-project" version = "1.1.7" @@ -6201,6 +6599,16 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "prettyplease" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" +dependencies = [ + "proc-macro2", + "syn 2.0.90", +] + [[package]] name = "primeorder" version = "0.13.6" @@ -6218,10 +6626,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", + "impl-rlp", "impl-serde", "uint", ] +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + [[package]] name = "proc-macro-error" version = "1.0.4" @@ -6268,6 +6686,17 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "proc-macro-warning" +version = "1.84.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "proc-macro2" version = "1.0.92" @@ -6346,6 +6775,27 @@ dependencies = [ "prost-derive 0.13.4", ] +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck 0.4.1", + "itertools 0.12.1", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost 0.12.6", + "prost-types 0.12.6", + "regex", + "syn 2.0.90", + "tempfile", +] + [[package]] name = "prost-derive" version = "0.7.0" @@ -6407,6 +6857,15 @@ dependencies = [ "prost 0.11.9", ] +[[package]] +name = "prost-types" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +dependencies = [ + "prost 0.12.6", +] + [[package]] name = "prost-types" version = "0.13.4" @@ -6422,6 +6881,18 @@ version = "2.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" +[[package]] +name = "protos" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "chrono", + "pbjson-types", + "prost 0.12.6", + "serde", + "serde-utils", +] + [[package]] name = "ptr_meta" version = "0.1.4" @@ -6794,6 +7265,16 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rustc-hex", +] + [[package]] name = "rmp" version = "0.8.14" @@ -6903,6 +7384,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + [[package]] name = "rustc-serialize" version = "0.3.25" @@ -7283,6 +7770,19 @@ dependencies = [ "serde", ] +[[package]] +name = "serde-utils" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bitvec", + "chrono", + "hex", + "primitive-types", + "serde", +] + [[package]] name = "serde-value" version = "0.7.0" @@ -7573,6 +8073,29 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "solidity-slot" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "sha3", + "unionlabs-primitives", +] + +[[package]] +name = "sp-crypto-hashing" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9927a7f81334ed5b8a98a4a978c81324d12bd9713ec76b5c68fd410174c5eb" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", +] + [[package]] name = "speculoos" version = "0.11.0" @@ -7598,6 +8121,34 @@ dependencies = [ "der", ] +[[package]] +name = "ssz" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "derivative", + "itertools 0.10.5", + "lazy_static", + "serde", + "serde-utils", + "sha2 0.10.8", + "smallvec", + "ssz-derive", + "thiserror 2.0.7", + "typenum", + "unionlabs-primitives", +] + +[[package]] +name = "ssz-derive" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -7610,6 +8161,11 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "git+https://github.com/nvzqz/static-assertions#a867e97a1b3c2e0c76b7a154abdf4e422b78e5f2" + [[package]] name = "strsim" version = "0.10.0" @@ -7924,7 +8480,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client-verifier", "tendermint-rpc 0.40.0", @@ -7947,7 +8503,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client", "tendermint-proto 0.40.0", @@ -8608,6 +9164,17 @@ dependencies = [ "utf-8", ] +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "digest 0.10.7", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "typemap-ors" version = "1.0.0" @@ -8644,7 +9211,7 @@ dependencies = [ "byteorder", "crunchy", "hex", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -8686,6 +9253,61 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unionlabs" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bcs", + "bip32", + "bs58 0.4.0", + "chrono", + "derive_more 0.99.18", + "either", + "frame-support-procedural", + "generic-array", + "hex", + "hex-literal", + "k256", + "macros", + "paste", + "primitive-types", + "prost 0.12.6", + "protos", + "ripemd", + "serde", + "serde-utils", + "serde_bytes", + "serde_json", + "sha2 0.10.8", + "sha3", + "solidity-slot", + "ssz", + "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", + "subtle-encoding", + "thiserror 2.0.7", + "typenum", + "unionlabs-primitives", + "wasmparser 0.113.3", +] + +[[package]] +name = "unionlabs-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "generic-array", + "hex", + "primitive-types", + "serde", + "serde_bytes", + "thiserror 2.0.7", + "typenum", + "uint", +] + [[package]] name = "unsafe-any-ors" version = "1.0.0" @@ -8782,6 +9404,17 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "voyager-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "consensus-primitives", + "macros", + "serde_json", + "unionlabs", +] + [[package]] name = "walkdir" version = "2.5.0" @@ -8927,7 +9560,7 @@ dependencies = [ "thiserror 1.0.69", "wasmer-types", "wasmer-vm", - "wasmparser", + "wasmparser 0.121.2", "windows-sys 0.59.0", "xxhash-rust", ] @@ -9041,6 +9674,16 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "wasmparser" +version = "0.113.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" +dependencies = [ + "indexmap 2.7.0", + "semver", +] + [[package]] name = "wasmparser" version = "0.121.2" @@ -9355,7 +9998,7 @@ dependencies = [ "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", "bitflags 2.6.0", - "bs58", + "bs58 0.5.1", "byteorder", "bytes", "chrono", diff --git a/interchain/Cargo.toml b/interchain/Cargo.toml index e0d1d26c4..6c5c8fbe0 100644 --- a/interchain/Cargo.toml +++ b/interchain/Cargo.toml @@ -81,7 +81,8 @@ abstract-cw-staking = { path = "../modules/contracts/adapters/cw-staki abstract-dex-adapter = { path = "../modules/contracts/adapters/dex" } abstract-money-market-adapter = { path = "../modules/contracts/adapters/money-market" } -abstract-xion = { package = "xion-account", version = "=0.1.1", features = ["library"] } +abstract-ica-client = { version = "0.26.0", path = "../framework/contracts/native/ica-client" } +abstract-xion = { package = "xion-account", version = "=0.1.1", features = ["library"] } ## Testing anyhow = "1" diff --git a/interchain/scripts/Cargo.toml b/interchain/scripts/Cargo.toml index e71f7eb08..4815edd1d 100644 --- a/interchain/scripts/Cargo.toml +++ b/interchain/scripts/Cargo.toml @@ -6,6 +6,7 @@ version = { workspace = true } [lib] [dependencies] +abstract-ica-client = { workspace = true } abstract-interface = { workspace = true, features = ["daemon"] } abstract-std = { workspace = true } abstract-xion = { workspace = true } diff --git a/interchain/scripts/src/bin/deploy_ica.rs b/interchain/scripts/src/bin/deploy_ica.rs new file mode 100644 index 000000000..e3fc1a727 --- /dev/null +++ b/interchain/scripts/src/bin/deploy_ica.rs @@ -0,0 +1,107 @@ +use abstract_interface::{ica_client::IcaClient, Abstract, AccountI}; +use abstract_std::objects::gov_type::GovernanceDetails; +use cw_orch_daemon::RUNTIME; + +use abstract_scripts::{assert_wallet_balance, SUPPORTED_CHAINS}; + +use clap::Parser; +use cw_orch::{contract::Contract, daemon::networks::parse_network, environment::{ChainKind, NetworkInfo}, prelude::*}; + +pub const ABSTRACT_VERSION: &str = env!("CARGO_PKG_VERSION"); +pub const EVM_NOTE_ID: &str = "abstract:evm-note"; + +// Run "cargo run --example download_wasms" in the `abstract-interfaces` package before deploying! +fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { + if networks.is_empty() { + networks = SUPPORTED_CHAINS.iter().map(|x| x.clone().into()).collect(); + } + + let networks = RUNTIME.block_on(assert_wallet_balance(networks)); + + for network in networks { + let chain = DaemonBuilder::new(network.clone()).build()?; + let abs_deployment = Abstract::load_from(chain.clone())?; + + let monarch = chain.sender_addr(); + let evm_note = Contract::new(EVM_NOTE_ID, chain.clone()); + let evm_note_addr = evm_note.address().expect("No evm note address"); + let evm_note_cw2 = chain + .wasm_querier() + .item_query(&evm_note_addr, cw2::CONTRACT)?; + let ica_client = IcaClient::new(chain.clone()); + ica_client.upload_if_needed(); + ica_client.instantiate( + &abstract_ica_client::msg::InstantiateMsg { + ans_host_address: abs_deployment.ans_host.addr_str()?, + registry_address: abs_deployment.registry.addr_str()?, + }, + Some(&chain.sender_addr()), + &[], + )?; + abs_deployment.registry.register_natives(vec![ + (&evm_note, evm_note_cw2.version), + ( + ica_client.as_instance(), + abstract_ica_client::contract::CONTRACT_VERSION.to_owned(), + ), + ])?; + abs_deployment.registry.approve_any_abstract_modules()?; + } + + Ok(()) +} + +// #[derive(Parser, Default, Debug)] +// #[command(author, version, about, long_about = None)] +// struct Arguments { +// /// Network Id to deploy on +// #[arg(short, long, value_delimiter = ' ', num_args = 1..)] +// network_ids: Vec, +// } + + +pub const UNION_NET: NetworkInfo = NetworkInfo { + chain_name: "union", + pub_address_prefix: "union", + coin_type: 118, +}; + +pub const UNION_TESTNET_10: ChainInfo = ChainInfo { + kind: ChainKind::Testnet, + chain_id: "union-testnet-10", + gas_denom: "muno", + gas_price: 1.0, + grpc_urls: &[ + "https://grpc.rpc-node.union-testnet-10.union.build:443", + ], + network_info: UNION_NET, + lcd_url: None, + fcd_url: None, +}; + + +fn main() { + dotenv().ok(); + env_logger::init(); + + use dotenv::dotenv; + + // let args = Arguments::parse(); + + let networks = vec![UNION_TESTNET_10.into()]; + + if let Err(ref err) = full_deploy(networks) { + log::error!("{}", err); + err.chain() + .skip(1) + .for_each(|cause| log::error!("because: {}", cause)); + + // The backtrace is not always generated. Try to run this example + // with `$env:RUST_BACKTRACE=1`. + // if let Some(backtrace) = e.backtrace() { + // log::debug!("backtrace: {:?}", backtrace); + // } + + ::std::process::exit(1); + } +} diff --git a/interchain/scripts/state.json b/interchain/scripts/state.json index f2b1bdb9a..57c13dbab 100644 --- a/interchain/scripts/state.json +++ b/interchain/scripts/state.json @@ -62,27 +62,6 @@ }, "version": "0.25.0" }, - "xion-testnet-1": { - "code_ids": { - "abstract:account": 1659, - "abstract:ans-host": 1656, - "abstract:ibc-client": 1660, - "abstract:ibc-host": 1661, - "abstract:module-factory": 1658, - "abstract:registry": 1657, - "cw:blob": 1649 - }, - "default": { - "abstract:account-local-0": "xion1skzjgc2h5ev3pyppwnqh4rxhp65sy4damgf9em07y6xxwdf3ry3srg2trl", - "abstract:account-local-1": "xion1w6m80muutvpl4wdxxalm434nev6xw5uj084wj0sdp4de6h3cuh9sr5ptlm", - "abstract:ans-host": "xion1phecnjjf8laqkgr86hla2z7y86ghhcefxke8t8vru535twl0zlmsykgqj4", - "abstract:ibc-client": "xion1nu72stzytgf40d5f45wxqjpq2epjjukcewl9zml2plyk72mvcg3qrqwktr", - "abstract:ibc-host": "xion1652e4ktmc9yhk58fz82mju7fhnwhcw2pz9h7cld6qnuyka4aqttq4x3w86", - "abstract:module-factory": "xion136099hg6u4r7evahj3w0aau9jceyhf2qm82d7d8rd9apvdyck8ssu7ulhc", - "abstract:registry": "xion1j33edjnk9cqkuw83fvz3f646unxpkcjkru0znjhznr0dzvpzyw7q4yz2eu" - }, - "version": "0.26.0" - }, "union-testnet-10": { "code_ids": { "abstract:account": 73, @@ -90,6 +69,7 @@ "abstract:evm-note": 79, "abstract:ibc-client": 74, "abstract:ibc-host": 75, + "abstract:ica-client": 80, "abstract:module-factory": 72, "abstract:registry": 71, "cw:blob": 69, @@ -101,10 +81,32 @@ "abstract:evm-note": "union1uz8gd9z30thd8d8vxrch5m7s6ryeamfuxmh759tq53ww76lzj8dqkp97q5", "abstract:ibc-client": "union1pplxw9myj7tskvku0h2r5jzwwyyusseavzcndr7cqwen78dgku5q3gm2qr", "abstract:ibc-host": "union1v4zdknr2js7cngh4ut67uutdexcxlv2dnnuhp926c08m50aukqzs2f8eyx", + "abstract:ica-client": "union1lt5dwzyqz3da08v8nsjx5a8qdlrdlqvgrd3svs55hzzcdgh43zyqaaejh7", "abstract:module-factory": "union1vnj802lyyupfaez73w7axfs3xveraxen370vhcnumaufj29r5rxqf4t8dl", "abstract:registry": "union1cag6cwygef6fuddgq2l44py7crpscufrza4mt3rum2axueemenmq6jqp05", "test:ibc-callbacks": "union1vdrmaamhznn4ejvjwc9g9fx6cruaj36naaqtm4s40xeen07lgjsqnpmc0k", "union:ibc-union": "union1hnuj8f6d3wy3fcprt55vddv7v2650t6uudnvd2hukqrteeam8wjqvcmecf" } + }, + "xion-testnet-1": { + "code_ids": { + "abstract:account": 1659, + "abstract:ans-host": 1656, + "abstract:ibc-client": 1660, + "abstract:ibc-host": 1661, + "abstract:module-factory": 1658, + "abstract:registry": 1657, + "cw:blob": 1649 + }, + "default": { + "abstract:account-local-0": "xion1skzjgc2h5ev3pyppwnqh4rxhp65sy4damgf9em07y6xxwdf3ry3srg2trl", + "abstract:account-local-1": "xion1w6m80muutvpl4wdxxalm434nev6xw5uj084wj0sdp4de6h3cuh9sr5ptlm", + "abstract:ans-host": "xion1phecnjjf8laqkgr86hla2z7y86ghhcefxke8t8vru535twl0zlmsykgqj4", + "abstract:ibc-client": "xion1nu72stzytgf40d5f45wxqjpq2epjjukcewl9zml2plyk72mvcg3qrqwktr", + "abstract:ibc-host": "xion1652e4ktmc9yhk58fz82mju7fhnwhcw2pz9h7cld6qnuyka4aqttq4x3w86", + "abstract:module-factory": "xion136099hg6u4r7evahj3w0aau9jceyhf2qm82d7d8rd9apvdyck8ssu7ulhc", + "abstract:registry": "xion1j33edjnk9cqkuw83fvz3f646unxpkcjkru0znjhznr0dzvpzyw7q4yz2eu" + }, + "version": "0.26.0" } } \ No newline at end of file From abea8e7858e6372341739094db33e003846def94 Mon Sep 17 00:00:00 2001 From: Buckram Date: Tue, 22 Apr 2025 14:59:27 +0300 Subject: [PATCH 06/10] make polytone-evm pub for abstract-ica --- framework/packages/abstract-ica/src/lib.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/framework/packages/abstract-ica/src/lib.rs b/framework/packages/abstract-ica/src/lib.rs index b068aadb5..1148fffd9 100644 --- a/framework/packages/abstract-ica/src/lib.rs +++ b/framework/packages/abstract-ica/src/lib.rs @@ -5,5 +5,6 @@ pub mod msg; pub use action::{IcaAction, IcaActionResponse, IcaExecute}; pub use chain_type::{CastChainType, ChainType}; +pub use polytone_evm; pub use polytone_evm::EVM_NOTE_ID; pub use polytone_evm::POLYTONE_EVM_VERSION; From 6a682f8e721ea1c074041a73073238ded2be9fc1 Mon Sep 17 00:00:00 2001 From: Buckram Date: Thu, 24 Apr 2025 13:12:10 +0300 Subject: [PATCH 07/10] deploy_ica script --- integrations/Cargo.lock | 863 ++++++++++++++++++++--- interchain/scripts/src/bin/deploy_ica.rs | 30 +- modules/Cargo.lock | 678 +++++++++++++++++- 3 files changed, 1469 insertions(+), 102 deletions(-) diff --git a/integrations/Cargo.lock b/integrations/Cargo.lock index 28713d2b0..041a3fb39 100644 --- a/integrations/Cargo.lock +++ b/integrations/Cargo.lock @@ -2,6 +2,16 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + [[package]] name = "abstract-account" version = "0.26.1" @@ -16,7 +26,7 @@ dependencies = [ "cw-storage-plus", "cw2", "semver", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -36,7 +46,7 @@ dependencies = [ "cw2", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -63,7 +73,7 @@ dependencies = [ "cw-storage-plus", "cw2", "semver", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -105,7 +115,7 @@ dependencies = [ "serde", "serde_json", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", "tiny-keccak", ] @@ -123,7 +133,7 @@ dependencies = [ "cw-address-like", "cw-asset", "cw-orch 0.27.0", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -142,7 +152,7 @@ dependencies = [ "cw-utils", "cw2", "semver", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -162,7 +172,7 @@ dependencies = [ "cw-utils", "cw2", "semver", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -180,6 +190,25 @@ dependencies = [ "workspace-hack", ] +[[package]] +name = "abstract-ica-client" +version = "0.26.0" +dependencies = [ + "abstract-ica", + "abstract-macros", + "abstract-sdk", + "abstract-std", + "cosmwasm-schema", + "cosmwasm-std", + "cw-ownable", + "cw2", + "evm-note", + "polytone-evm", + "semver", + "thiserror 1.0.69", + "workspace-hack", +] + [[package]] name = "abstract-interface" version = "0.26.0" @@ -188,6 +217,7 @@ dependencies = [ "abstract-ans-host", "abstract-ibc-client", "abstract-ibc-host", + "abstract-ica-client", "abstract-module-factory", "abstract-registry", "abstract-std", @@ -209,7 +239,7 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -253,7 +283,7 @@ dependencies = [ "cw2", "semver", "serde-cw-value", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -269,7 +299,7 @@ dependencies = [ "cosmwasm-std", "cw-asset", "cw-orch 0.27.0", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -318,7 +348,7 @@ dependencies = [ "cw-storage-plus", "cw2", "semver", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -337,7 +367,7 @@ dependencies = [ "schemars", "serde", "serde-cw-value", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -354,7 +384,7 @@ dependencies = [ "cw-asset", "cw-orch 0.27.0", "cw-utils", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -379,7 +409,7 @@ dependencies = [ "semver", "serde", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", "workspace-hack", ] @@ -770,7 +800,7 @@ dependencies = [ "schemars", "serde", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1020,6 +1050,16 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +[[package]] +name = "bcs" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b6598a2f5d564fb7855dc6b06fd1c38cff5a72bd8b863a4d021938497b440a" +dependencies = [ + "serde", + "thiserror 1.0.69", +] + [[package]] name = "bech32" version = "0.9.1" @@ -1044,7 +1084,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" dependencies = [ - "bs58", + "bs58 0.5.1", "hmac", "k256", "once_cell", @@ -1164,6 +1204,18 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + [[package]] name = "blake2" version = "0.10.6" @@ -1173,6 +1225,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "blake2b_simd" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +dependencies = [ + "arrayref", + "arrayvec", + "constant_time_eq", +] + [[package]] name = "blake3" version = "1.5.5" @@ -1210,6 +1273,12 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e31ea183f6ee62ac8b8a8cf7feddd766317adfb13ff469de57ce033efd6a790" +[[package]] +name = "bs58" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" + [[package]] name = "bs58" version = "0.5.1" @@ -1270,6 +1339,15 @@ dependencies = [ "shlex", ] +[[package]] +name = "cfg-expr" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +dependencies = [ + "smallvec", +] + [[package]] name = "cfg-if" version = "1.0.0" @@ -1297,6 +1375,12 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1306,6 +1390,14 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "consensus-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "serde_json", +] + [[package]] name = "console" version = "0.15.8" @@ -1338,6 +1430,26 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const-random" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359" +dependencies = [ + "const-random-macro", +] + +[[package]] +name = "const-random-macro" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" +dependencies = [ + "getrandom", + "once_cell", + "tiny-keccak", +] + [[package]] name = "constant_time_eq" version = "0.3.1" @@ -1453,7 +1565,7 @@ dependencies = [ "subtle-encoding", "tendermint 0.39.1", "tendermint-rpc 0.39.1", - "thiserror", + "thiserror 1.0.69", "tokio", ] @@ -1474,7 +1586,7 @@ dependencies = [ "signature", "subtle-encoding", "tendermint 0.39.1", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1503,7 +1615,7 @@ dependencies = [ "rand_core", "rayon", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1527,7 +1639,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1560,8 +1672,8 @@ dependencies = [ "serde", "serde-json-wasm", "sha2 0.10.8", - "static_assertions", - "thiserror", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "thiserror 1.0.69", ] [[package]] @@ -1704,7 +1816,7 @@ dependencies = [ "cw-address-like", "cw-storage-plus", "cw20", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1740,7 +1852,7 @@ dependencies = [ "cw-utils", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1761,7 +1873,7 @@ dependencies = [ "log", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1787,7 +1899,7 @@ dependencies = [ "sanitize-filename", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", "tokio", ] @@ -1819,7 +1931,7 @@ dependencies = [ "serde", "serde_json", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1862,7 +1974,7 @@ dependencies = [ "serde", "serde_json", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", "tokio", "toml", "tonic", @@ -1927,7 +2039,7 @@ dependencies = [ "prost 0.13.3", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", "tokio", "tonic", ] @@ -1956,7 +2068,7 @@ dependencies = [ "log", "log4rs", "serde_json", - "thiserror", + "thiserror 1.0.69", "tokio", "tonic", ] @@ -1978,7 +2090,7 @@ dependencies = [ "log", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2024,7 +2136,7 @@ dependencies = [ "reqwest 0.12.9", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", "tokio", "url", "yaml-rust2", @@ -2063,7 +2175,7 @@ dependencies = [ "cw-ownable-derive", "cw-storage-plus", "cw-utils", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2097,7 +2209,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "cw2", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2147,7 +2259,7 @@ dependencies = [ "cosmwasm-std", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2178,7 +2290,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2195,7 +2307,7 @@ dependencies = [ "cw2", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2210,7 +2322,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2240,7 +2352,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2259,7 +2371,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2274,7 +2386,7 @@ dependencies = [ "cw20", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2291,7 +2403,7 @@ dependencies = [ "cw3", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2311,7 +2423,7 @@ dependencies = [ "cw4", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2342,7 +2454,7 @@ dependencies = [ "cw4", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2361,7 +2473,7 @@ dependencies = [ "cw4", "schemars", "serde", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2455,6 +2567,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-syn-parse" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "derive_builder" version = "0.20.2" @@ -2554,7 +2677,7 @@ dependencies = [ "console", "shell-words", "tempfile", - "thiserror", + "thiserror 1.0.69", "zeroize", ] @@ -2654,6 +2777,33 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "docify" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a772b62b1837c8f060432ddcc10b17aae1453ef17617a99bc07789252d2a5896" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e6be249b0a462a14784a99b19bf35a667bb5e09de611738bb7362fa4c95ff7" +dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.90", + "termcolor", + "toml", + "walkdir", +] + [[package]] name = "dunce" version = "1.0.5" @@ -2789,6 +2939,17 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enumorph" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "env_filter" version = "0.1.2" @@ -2849,6 +3010,38 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "evm-note" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" +dependencies = [ + "alloy-sol-types", + "cosmwasm-schema", + "cosmwasm-std", + "cw-orch 0.27.0", + "cw-storage-plus", + "cw-utils", + "cw2", + "ibc-union-spec", + "polytone-evm", + "thiserror 1.0.69", +] + +[[package]] +name = "expander" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2c470c71d91ecbd179935b24170459e926382eaaa86b590b78814e180d8a8e2" +dependencies = [ + "blake2", + "file-guard", + "fs-err", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "eyre" version = "0.6.12" @@ -2881,6 +3074,16 @@ version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" +[[package]] +name = "file-guard" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21ef72acf95ec3d7dbf61275be556299490a245f017cf084bd23b4f68cf9407c" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "file-lock" version = "2.1.11" @@ -2897,9 +3100,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.35" @@ -2959,6 +3168,60 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "frame-support-procedural" +version = "30.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da784d943f2a945be923ab081a7c0837355b38045c50945d7ec1a138e2f3c52" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "docify", + "expander", + "frame-support-procedural-tools", + "itertools 0.11.0", + "macro_magic", + "proc-macro-warning", + "proc-macro2", + "quote", + "sp-crypto-hashing", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools" +version = "13.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81a088fd6fda5f53ff0c17fc7551ce8bd0ead14ba742228443c8196296a7369b" +dependencies = [ + "frame-support-procedural-tools-derive", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools-derive" +version = "12.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "fs-err" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" +dependencies = [ + "autocfg", +] + [[package]] name = "function_name" version = "0.3.0" @@ -2974,6 +3237,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "673464e1e314dd67a0fd9544abc99e8eb28d0c7e3b69b033bcff9b2d00b87333" +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "futures" version = "0.3.31" @@ -3267,6 +3536,12 @@ dependencies = [ "arrayvec", ] +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + [[package]] name = "hex_lit" version = "0.1.1" @@ -3595,7 +3870,7 @@ dependencies = [ "async-stream", "bech32 0.9.1", "bitcoin 0.31.2", - "bs58", + "bs58 0.5.1", "byte-unit", "bytes", "crossbeam-channel", @@ -3640,7 +3915,7 @@ dependencies = [ "tendermint-light-client-verifier", "tendermint-proto 0.40.0", "tendermint-rpc 0.40.0", - "thiserror", + "thiserror 1.0.69", "tiny-bip39", "tiny-keccak", "tokio", @@ -3701,6 +3976,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "ibc-union-spec" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "enumorph", + "num-traits", + "sha3", + "thiserror 2.0.12", + "unionlabs", + "voyager-primitives", +] + [[package]] name = "ics23" version = "0.12.0" @@ -3865,6 +4153,15 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + [[package]] name = "impl-serde" version = "0.4.0" @@ -3962,6 +4259,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.13.0" @@ -3996,7 +4302,7 @@ dependencies = [ "jsonptr", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4011,7 +4317,7 @@ dependencies = [ "pest_derive", "regex", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4035,6 +4341,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "sha2 0.10.8", + "signature", ] [[package]] @@ -4103,7 +4410,7 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-tungstenite", "tokio-util", @@ -4126,7 +4433,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4164,7 +4471,7 @@ dependencies = [ "pin-project", "serde", "serde_json", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tracing", @@ -4194,7 +4501,7 @@ dependencies = [ "cosmwasm-std", "kujira-fin", "kujira-std", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4258,7 +4565,7 @@ dependencies = [ "hex", "serde-json-wasm", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4366,12 +4673,70 @@ dependencies = [ "serde-value", "serde_json", "serde_yaml", - "thiserror", + "thiserror 1.0.69", "thread-id", "typemap-ors", "winapi", ] +[[package]] +name = "macro_magic" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc33f9f0351468d26fbc53d9ce00a096c8522ecb42f19b50f34f2c422f76d21d" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1687dc887e42f352865a393acae7cf79d98fab6351cde1f58e9e057da89bf150" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macros" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "map-macro" version = "0.3.0" @@ -4462,11 +4827,17 @@ dependencies = [ "rustc_version", "smallvec", "tagptr", - "thiserror", + "thiserror 1.0.69", "triomphe", "uuid", ] +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + [[package]] name = "native-tls" version = "0.2.12" @@ -4506,7 +4877,7 @@ dependencies = [ "serde_json", "speedate", "tendermint-proto 0.34.1", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4723,7 +5094,7 @@ dependencies = [ "indexmap 1.9.3", "once_cell", "pin-project-lite", - "thiserror", + "thiserror 1.0.69", "urlencoding", ] @@ -4744,7 +5115,7 @@ dependencies = [ "opentelemetry_api", "percent-encoding", "rand", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -4845,6 +5216,40 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "pbjson" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "base64 0.21.7", + "serde", +] + +[[package]] +name = "pbjson-build" +version = "0.6.2" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "heck 0.4.1", + "itertools 0.11.0", + "prost 0.12.6", + "prost-types 0.12.6", +] + +[[package]] +name = "pbjson-types" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "bytes", + "chrono", + "pbjson", + "pbjson-build", + "prost 0.12.6", + "prost-build", + "serde", +] + [[package]] name = "pbkdf2" version = "0.11.0" @@ -4923,7 +5328,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" dependencies = [ "memchr", - "thiserror", + "thiserror 1.0.69", "ucd-trie", ] @@ -4961,6 +5366,16 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.6.0", +] + [[package]] name = "pin-project" version = "1.1.7" @@ -5020,7 +5435,7 @@ dependencies = [ "cosmwasm-std", "cw-asset", "cw-storage-plus", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5038,6 +5453,16 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "prettyplease" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" +dependencies = [ + "proc-macro2", + "syn 2.0.90", +] + [[package]] name = "primeorder" version = "0.13.6" @@ -5055,10 +5480,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", + "impl-rlp", "impl-serde", "uint", ] +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + [[package]] name = "proc-macro-error-attr2" version = "2.0.0" @@ -5081,6 +5516,17 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "proc-macro-warning" +version = "1.84.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "proc-macro2" version = "1.0.92" @@ -5102,7 +5548,7 @@ dependencies = [ "memchr", "parking_lot", "protobuf 2.28.0", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5159,6 +5605,27 @@ dependencies = [ "prost-derive 0.13.3", ] +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck 0.4.1", + "itertools 0.10.5", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost 0.12.6", + "prost-types 0.12.6", + "regex", + "syn 2.0.90", + "tempfile", +] + [[package]] name = "prost-derive" version = "0.7.0" @@ -5252,7 +5719,7 @@ checksum = "b65f4a8ec18723a734e5dc09c173e0abf9690432da5340285d536edcb4dac190" dependencies = [ "once_cell", "protobuf-support", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5261,7 +5728,19 @@ version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6872f4d4f4b98303239a2b5838f5bbbb77b01ffc892d627957f37a22d7cfe69c" dependencies = [ - "thiserror", + "thiserror 1.0.69", +] + +[[package]] +name = "protos" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "chrono", + "pbjson-types", + "prost 0.12.6", + "serde", + "serde-utils", ] [[package]] @@ -5288,6 +5767,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "rand" version = "0.8.5" @@ -5373,7 +5858,7 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", "libredox", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5544,6 +6029,16 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rustc-hex", +] + [[package]] name = "ruint" version = "1.12.3" @@ -5611,6 +6106,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + [[package]] name = "rustc_version" version = "0.4.1" @@ -5973,6 +6474,19 @@ dependencies = [ "serde", ] +[[package]] +name = "serde-utils" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bitvec", + "chrono", + "hex", + "primitive-types", + "serde", +] + [[package]] name = "serde-value" version = "0.7.0" @@ -6217,6 +6731,29 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "solidity-slot" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "sha3", + "unionlabs-primitives", +] + +[[package]] +name = "sp-crypto-hashing" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9927a7f81334ed5b8a98a4a978c81324d12bd9713ec76b5c68fd410174c5eb" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", +] + [[package]] name = "speculoos" version = "0.11.0" @@ -6252,6 +6789,34 @@ dependencies = [ "der", ] +[[package]] +name = "ssz" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "derivative", + "itertools 0.10.5", + "lazy_static", + "serde", + "serde-utils", + "sha2 0.10.8", + "smallvec", + "ssz-derive", + "thiserror 2.0.12", + "typenum", + "unionlabs-primitives", +] + +[[package]] +name = "ssz-derive" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -6264,6 +6829,11 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "git+https://github.com/nvzqz/static-assertions#a867e97a1b3c2e0c76b7a154abdf4e422b78e5f2" + [[package]] name = "strsim" version = "0.11.1" @@ -6421,6 +6991,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + [[package]] name = "tempfile" version = "3.14.0" @@ -6538,7 +7114,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client-verifier", "tendermint-rpc 0.40.0", @@ -6561,7 +7137,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client", "tendermint-proto 0.40.0", @@ -6655,7 +7231,7 @@ dependencies = [ "tendermint 0.39.1", "tendermint-config 0.39.1", "tendermint-proto 0.39.1", - "thiserror", + "thiserror 1.0.69", "time", "tokio", "tracing", @@ -6689,7 +7265,7 @@ dependencies = [ "tendermint 0.40.0", "tendermint-config 0.40.0", "tendermint-proto 0.40.0", - "thiserror", + "thiserror 1.0.69", "time", "tokio", "tracing", @@ -6698,6 +7274,15 @@ dependencies = [ "walkdir", ] +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + [[package]] name = "test-case" version = "3.3.1" @@ -6737,7 +7322,16 @@ version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +dependencies = [ + "thiserror-impl 2.0.12", ] [[package]] @@ -6751,6 +7345,17 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "thiserror-impl" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "thread-id" version = "4.2.2" @@ -6814,7 +7419,7 @@ dependencies = [ "rand", "rustc-hash", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", "unicode-normalization", "wasm-bindgen", "zeroize", @@ -7197,7 +7802,7 @@ dependencies = [ "rustls 0.22.4", "rustls-pki-types", "sha1", - "thiserror", + "thiserror 1.0.69", "url", "utf-8", ] @@ -7216,10 +7821,21 @@ dependencies = [ "log", "rand", "sha1", - "thiserror", + "thiserror 1.0.69", "utf-8", ] +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "digest 0.10.7", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "typemap-ors" version = "1.0.0" @@ -7256,7 +7872,7 @@ dependencies = [ "byteorder", "crunchy", "hex", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -7298,6 +7914,61 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unionlabs" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bcs", + "bip32", + "bs58 0.4.0", + "chrono", + "derive_more 0.99.18", + "either", + "frame-support-procedural", + "generic-array", + "hex", + "hex-literal", + "k256", + "macros", + "paste", + "primitive-types", + "prost 0.12.6", + "protos", + "ripemd", + "serde", + "serde-utils", + "serde_bytes", + "serde_json", + "sha2 0.10.8", + "sha3", + "solidity-slot", + "ssz", + "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", + "subtle-encoding", + "thiserror 2.0.12", + "typenum", + "unionlabs-primitives", + "wasmparser", +] + +[[package]] +name = "unionlabs-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "generic-array", + "hex", + "primitive-types", + "serde", + "serde_bytes", + "thiserror 2.0.12", + "typenum", + "uint", +] + [[package]] name = "unsafe-any-ors" version = "1.0.0" @@ -7393,6 +8064,17 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "voyager-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "consensus-primitives", + "macros", + "serde_json", + "unionlabs", +] + [[package]] name = "walkdir" version = "2.5.0" @@ -7486,6 +8168,16 @@ version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" +[[package]] +name = "wasmparser" +version = "0.113.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" +dependencies = [ + "indexmap 2.6.0", + "semver", +] + [[package]] name = "web-sys" version = "0.3.74" @@ -7746,7 +8438,7 @@ dependencies = [ "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", "bitflags 2.6.0", - "bs58", + "bs58 0.5.1", "byteorder", "bytes", "chrono", @@ -7860,7 +8552,7 @@ dependencies = [ "schemars", "serde", "test-case", - "thiserror", + "thiserror 1.0.69", "uint", ] @@ -7877,7 +8569,7 @@ dependencies = [ "cw2", "cw20", "itertools 0.10.5", - "thiserror", + "thiserror 1.0.69", "wyndex", "wyndex-stake", ] @@ -7893,7 +8585,7 @@ dependencies = [ "cw-utils", "cw2", "cw20", - "thiserror", + "thiserror 1.0.69", "wyndex", ] @@ -7926,10 +8618,19 @@ dependencies = [ "cw2", "cw20", "serde", - "thiserror", + "thiserror 1.0.69", "wyndex", ] +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + [[package]] name = "yaml-rust2" version = "0.8.1" diff --git a/interchain/scripts/src/bin/deploy_ica.rs b/interchain/scripts/src/bin/deploy_ica.rs index e3fc1a727..c03cdac3c 100644 --- a/interchain/scripts/src/bin/deploy_ica.rs +++ b/interchain/scripts/src/bin/deploy_ica.rs @@ -1,11 +1,19 @@ -use abstract_interface::{ica_client::IcaClient, Abstract, AccountI}; -use abstract_std::objects::gov_type::GovernanceDetails; +use abstract_interface::{ica_client::IcaClient, Abstract, AccountI, RegistryExecFns}; +use abstract_std::{ + objects::{gov_type::GovernanceDetails, module::ModuleInfo}, + ICA_CLIENT, +}; use cw_orch_daemon::RUNTIME; use abstract_scripts::{assert_wallet_balance, SUPPORTED_CHAINS}; use clap::Parser; -use cw_orch::{contract::Contract, daemon::networks::parse_network, environment::{ChainKind, NetworkInfo}, prelude::*}; +use cw_orch::{ + contract::Contract, + daemon::networks::parse_network, + environment::{ChainKind, NetworkInfo}, + prelude::*, +}; pub const ABSTRACT_VERSION: &str = env!("CARGO_PKG_VERSION"); pub const EVM_NOTE_ID: &str = "abstract:evm-note"; @@ -22,7 +30,6 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { let chain = DaemonBuilder::new(network.clone()).build()?; let abs_deployment = Abstract::load_from(chain.clone())?; - let monarch = chain.sender_addr(); let evm_note = Contract::new(EVM_NOTE_ID, chain.clone()); let evm_note_addr = evm_note.address().expect("No evm note address"); let evm_note_cw2 = chain @@ -38,13 +45,14 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { Some(&chain.sender_addr()), &[], )?; + // TODO: remove it and make it multichain abs_deployment.registry.register_natives(vec![ (&evm_note, evm_note_cw2.version), - ( - ica_client.as_instance(), - abstract_ica_client::contract::CONTRACT_VERSION.to_owned(), - ), ])?; + abs_deployment.registry.register_services(vec![( + ica_client.as_instance(), + abstract_ica_client::contract::CONTRACT_VERSION.to_owned(), + )])?; abs_deployment.registry.approve_any_abstract_modules()?; } @@ -59,7 +67,6 @@ fn full_deploy(mut networks: Vec) -> anyhow::Result<()> { // network_ids: Vec, // } - pub const UNION_NET: NetworkInfo = NetworkInfo { chain_name: "union", pub_address_prefix: "union", @@ -71,15 +78,12 @@ pub const UNION_TESTNET_10: ChainInfo = ChainInfo { chain_id: "union-testnet-10", gas_denom: "muno", gas_price: 1.0, - grpc_urls: &[ - "https://grpc.rpc-node.union-testnet-10.union.build:443", - ], + grpc_urls: &["https://grpc.rpc-node.union-testnet-10.union.build:443"], network_info: UNION_NET, lcd_url: None, fcd_url: None, }; - fn main() { dotenv().ok(); env_logger::init(); diff --git a/modules/Cargo.lock b/modules/Cargo.lock index 081d920ca..e632f6804 100644 --- a/modules/Cargo.lock +++ b/modules/Cargo.lock @@ -2,6 +2,16 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + [[package]] name = "abstract-account" version = "0.26.1" @@ -317,6 +327,25 @@ dependencies = [ "workspace-hack", ] +[[package]] +name = "abstract-ica-client" +version = "0.26.0" +dependencies = [ + "abstract-ica", + "abstract-macros", + "abstract-sdk", + "abstract-std", + "cosmwasm-schema", + "cosmwasm-std", + "cw-ownable", + "cw2", + "evm-note", + "polytone-evm", + "semver", + "thiserror 1.0.69", + "workspace-hack", +] + [[package]] name = "abstract-integration-tests" version = "0.26.0" @@ -346,6 +375,7 @@ dependencies = [ "abstract-cw-orch-polytone", "abstract-ibc-client", "abstract-ibc-host", + "abstract-ica-client", "abstract-module-factory", "abstract-registry", "abstract-std", @@ -1328,6 +1358,16 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +[[package]] +name = "bcs" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b6598a2f5d564fb7855dc6b06fd1c38cff5a72bd8b863a4d021938497b440a" +dependencies = [ + "serde", + "thiserror 1.0.69", +] + [[package]] name = "bech32" version = "0.9.1" @@ -1395,7 +1435,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" dependencies = [ - "bs58", + "bs58 0.5.1", "hmac", "k256", "once_cell", @@ -1515,6 +1555,18 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + [[package]] name = "blake2" version = "0.10.6" @@ -1524,6 +1576,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "blake2b_simd" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +dependencies = [ + "arrayref", + "arrayvec", + "constant_time_eq", +] + [[package]] name = "blake3" version = "1.5.5" @@ -1561,6 +1624,12 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e31ea183f6ee62ac8b8a8cf7feddd766317adfb13ff469de57ce033efd6a790" +[[package]] +name = "bs58" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" + [[package]] name = "bs58" version = "0.5.1" @@ -1653,6 +1722,15 @@ dependencies = [ "nom", ] +[[package]] +name = "cfg-expr" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +dependencies = [ + "smallvec", +] + [[package]] name = "cfg-if" version = "1.0.0" @@ -1776,6 +1854,12 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1785,6 +1869,14 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "consensus-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "serde_json", +] + [[package]] name = "console" version = "0.15.10" @@ -1817,6 +1909,26 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const-random" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359" +dependencies = [ + "const-random-macro", +] + +[[package]] +name = "const-random-macro" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" +dependencies = [ + "getrandom", + "once_cell", + "tiny-keccak", +] + [[package]] name = "const_format" version = "0.2.34" @@ -2073,7 +2185,7 @@ dependencies = [ "serde", "serde-json-wasm", "sha2 0.10.8", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 1.0.69", ] @@ -3071,6 +3183,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-syn-parse" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -3301,6 +3424,33 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "docify" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a772b62b1837c8f060432ddcc10b17aae1453ef17617a99bc07789252d2a5896" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e6be249b0a462a14784a99b19bf35a667bb5e09de611738bb7362fa4c95ff7" +dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.90", + "termcolor", + "toml", + "walkdir", +] + [[package]] name = "dotenv" version = "0.15.0" @@ -3442,6 +3592,17 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enumorph" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "env_filter" version = "0.1.2" @@ -3528,6 +3689,38 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "evm-note" +version = "0.4.0" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" +dependencies = [ + "alloy-sol-types", + "cosmwasm-schema", + "cosmwasm-std", + "cw-orch 0.27.0", + "cw-storage-plus", + "cw-utils", + "cw2", + "ibc-union-spec", + "polytone-evm", + "thiserror 1.0.69", +] + +[[package]] +name = "expander" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2c470c71d91ecbd179935b24170459e926382eaaa86b590b78814e180d8a8e2" +dependencies = [ + "blake2", + "file-guard", + "fs-err", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "eyre" version = "0.6.12" @@ -3560,6 +3753,16 @@ version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" +[[package]] +name = "file-guard" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21ef72acf95ec3d7dbf61275be556299490a245f017cf084bd23b4f68cf9407c" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "file-lock" version = "2.1.11" @@ -3576,9 +3779,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.35" @@ -3638,6 +3847,60 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "frame-support-procedural" +version = "30.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da784d943f2a945be923ab081a7c0837355b38045c50945d7ec1a138e2f3c52" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "docify", + "expander", + "frame-support-procedural-tools", + "itertools 0.11.0", + "macro_magic", + "proc-macro-warning", + "proc-macro2", + "quote", + "sp-crypto-hashing", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools" +version = "13.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81a088fd6fda5f53ff0c17fc7551ce8bd0ead14ba742228443c8196296a7369b" +dependencies = [ + "frame-support-procedural-tools-derive", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "frame-support-procedural-tools-derive" +version = "12.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "fs-err" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" +dependencies = [ + "autocfg", +] + [[package]] name = "function_name" version = "0.3.0" @@ -3653,6 +3916,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "673464e1e314dd67a0fd9544abc99e8eb28d0c7e3b69b033bcff9b2d00b87333" +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "futures" version = "0.3.31" @@ -3967,6 +4236,12 @@ dependencies = [ "arrayvec", ] +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + [[package]] name = "hex_lit" version = "0.1.1" @@ -4312,7 +4587,7 @@ dependencies = [ "async-stream", "bech32 0.9.1", "bitcoin 0.31.2", - "bs58", + "bs58 0.5.1", "byte-unit", "bytes", "crossbeam-channel", @@ -4418,6 +4693,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "ibc-union-spec" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "enumorph", + "num-traits", + "sha3", + "thiserror 2.0.7", + "unionlabs", + "voyager-primitives", +] + [[package]] name = "ics23" version = "0.12.0" @@ -4582,6 +4870,15 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + [[package]] name = "impl-serde" version = "0.4.0" @@ -4683,6 +4980,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.12.1" @@ -4765,6 +5071,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "sha2 0.10.8", + "signature", ] [[package]] @@ -5118,6 +5425,64 @@ dependencies = [ "winapi", ] +[[package]] +name = "macro_magic" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc33f9f0351468d26fbc53d9ce00a096c8522ecb42f19b50f34f2c422f76d21d" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1687dc887e42f352865a393acae7cf79d98fab6351cde1f58e9e057da89bf150" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macro_magic_macros" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.90", +] + +[[package]] +name = "macros" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "map-macro" version = "0.3.0" @@ -5235,6 +5600,12 @@ dependencies = [ "uuid", ] +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + [[package]] name = "my-standalone" version = "0.0.1" @@ -5730,6 +6101,40 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "pbjson" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "base64 0.21.7", + "serde", +] + +[[package]] +name = "pbjson-build" +version = "0.6.2" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "heck 0.4.1", + "itertools 0.11.0", + "prost 0.12.6", + "prost-types 0.12.6", +] + +[[package]] +name = "pbjson-types" +version = "0.6.0" +source = "git+https://github.com/recoord/pbjson?rev=2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe#2b7a8e4c2c83a40d04beed46aa26ab97a39a81fe" +dependencies = [ + "bytes", + "chrono", + "pbjson", + "pbjson-build", + "prost 0.12.6", + "prost-build", + "serde", +] + [[package]] name = "pbkdf2" version = "0.11.0" @@ -5852,6 +6257,16 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.7.0", +] + [[package]] name = "pin-project" version = "1.1.7" @@ -5979,10 +6394,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", + "impl-rlp", "impl-serde", "uint", ] +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + [[package]] name = "proc-macro-error-attr2" version = "2.0.0" @@ -6005,6 +6430,17 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "proc-macro-warning" +version = "1.84.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "proc-macro2" version = "1.0.92" @@ -6073,6 +6509,27 @@ dependencies = [ "prost-derive 0.13.4", ] +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck 0.4.1", + "itertools 0.12.1", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost 0.12.6", + "prost-types 0.12.6", + "regex", + "syn 2.0.90", + "tempfile", +] + [[package]] name = "prost-derive" version = "0.11.9" @@ -6165,6 +6622,18 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "protos" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "chrono", + "pbjson-types", + "prost 0.12.6", + "serde", + "serde-utils", +] + [[package]] name = "quanta" version = "0.12.4" @@ -6189,6 +6658,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "rand" version = "0.8.5" @@ -6445,6 +6920,16 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rustc-hex", +] + [[package]] name = "rmp" version = "0.8.14" @@ -6534,6 +7019,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + [[package]] name = "rustc_version" version = "0.4.1" @@ -6896,6 +7387,19 @@ dependencies = [ "serde", ] +[[package]] +name = "serde-utils" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bitvec", + "chrono", + "hex", + "primitive-types", + "serde", +] + [[package]] name = "serde-value" version = "0.7.0" @@ -7170,6 +7674,29 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "solidity-slot" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "sha3", + "unionlabs-primitives", +] + +[[package]] +name = "sp-crypto-hashing" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9927a7f81334ed5b8a98a4a978c81324d12bd9713ec76b5c68fd410174c5eb" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", +] + [[package]] name = "speculoos" version = "0.11.0" @@ -7205,6 +7732,34 @@ dependencies = [ "der", ] +[[package]] +name = "ssz" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "derivative", + "itertools 0.10.5", + "lazy_static", + "serde", + "serde-utils", + "sha2 0.10.8", + "smallvec", + "ssz-derive", + "thiserror 2.0.7", + "typenum", + "unionlabs-primitives", +] + +[[package]] +name = "ssz-derive" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -7217,6 +7772,11 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "git+https://github.com/nvzqz/static-assertions#a867e97a1b3c2e0c76b7a154abdf4e422b78e5f2" + [[package]] name = "strsim" version = "0.10.0" @@ -7380,6 +7940,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + [[package]] name = "tempfile" version = "3.14.0" @@ -7497,7 +8063,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client-verifier", "tendermint-rpc 0.40.0", @@ -7520,7 +8086,7 @@ dependencies = [ "serde_cbor", "serde_derive", "serde_json", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tendermint 0.40.0", "tendermint-light-client", "tendermint-proto 0.40.0", @@ -8261,6 +8827,17 @@ dependencies = [ "utf-8", ] +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "digest 0.10.7", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "typemap-ors" version = "1.0.0" @@ -8297,7 +8874,7 @@ dependencies = [ "byteorder", "crunchy", "hex", - "static_assertions", + "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -8339,6 +8916,61 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unionlabs" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "bcs", + "bip32", + "bs58 0.4.0", + "chrono", + "derive_more 0.99.18", + "either", + "frame-support-procedural", + "generic-array", + "hex", + "hex-literal", + "k256", + "macros", + "paste", + "primitive-types", + "prost 0.12.6", + "protos", + "ripemd", + "serde", + "serde-utils", + "serde_bytes", + "serde_json", + "sha2 0.10.8", + "sha3", + "solidity-slot", + "ssz", + "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", + "subtle-encoding", + "thiserror 2.0.7", + "typenum", + "unionlabs-primitives", + "wasmparser", +] + +[[package]] +name = "unionlabs-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "base64 0.21.7", + "generic-array", + "hex", + "primitive-types", + "serde", + "serde_bytes", + "thiserror 2.0.7", + "typenum", + "uint", +] + [[package]] name = "unsafe-any-ors" version = "1.0.0" @@ -8434,6 +9066,17 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "voyager-primitives" +version = "0.0.0" +source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-responses#6d112320e04433f81c1ec3914d7a17b5bffb8cbc" +dependencies = [ + "consensus-primitives", + "macros", + "serde_json", + "unionlabs", +] + [[package]] name = "walkdir" version = "2.5.0" @@ -8526,6 +9169,16 @@ version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" +[[package]] +name = "wasmparser" +version = "0.113.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" +dependencies = [ + "indexmap 2.7.0", + "semver", +] + [[package]] name = "web-sys" version = "0.3.76" @@ -8798,7 +9451,7 @@ dependencies = [ "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", "bitflags 2.6.0", - "bs58", + "bs58 0.5.1", "byteorder", "bytes", "chrono", @@ -8982,6 +9635,15 @@ dependencies = [ "wyndex", ] +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + [[package]] name = "yaml-rust2" version = "0.8.1" From a946bf9e643dfa76d0290c7109e3e38cd9d3e65e Mon Sep 17 00:00:00 2001 From: Buckram Date: Mon, 12 May 2025 17:22:40 +0300 Subject: [PATCH 08/10] lock --- framework/Cargo.lock | 1734 ++++++++++++++++++++++++------------------ 1 file changed, 997 insertions(+), 737 deletions(-) diff --git a/framework/Cargo.lock b/framework/Cargo.lock index 2c5114f6e..66ad7b0bf 100644 --- a/framework/Cargo.lock +++ b/framework/Cargo.lock @@ -153,8 +153,8 @@ dependencies = [ "cw2", "cw20", "cw20-base", - "env_logger 0.11.6", - "rand", + "env_logger 0.11.8", + "rand 0.8.5", "semver", "serde", "thiserror 1.0.69", @@ -177,11 +177,11 @@ dependencies = [ "hex", "itertools 0.13.0", "log", - "prost 0.13.4", + "prost 0.13.5", "schemars", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", "tiny-keccak", ] @@ -222,7 +222,7 @@ dependencies = [ "cw-asset", "cw-orch 0.27.0", "dotenv", - "env_logger 0.11.6", + "env_logger 0.11.8", "semver", "thiserror 1.0.69", "workspace-hack", @@ -249,7 +249,7 @@ dependencies = [ "cw-utils", "cw2", "ibc-proto 0.47.1", - "prost 0.13.4", + "prost 0.13.5", "semver", "thiserror 1.0.69", "workspace-hack", @@ -371,7 +371,7 @@ dependencies = [ "cw2", "cw20", "dotenv", - "env_logger 0.11.6", + "env_logger 0.11.8", "log", "rust-embed", "schemars", @@ -489,7 +489,7 @@ dependencies = [ "cw-storage-plus", "cw-utils", "cw2", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", ] @@ -560,7 +560,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-utils", "dotenv", - "env_logger 0.11.6", + "env_logger 0.11.8", "semver", "thiserror 1.0.69", "workspace-hack", @@ -613,7 +613,7 @@ dependencies = [ "schemars", "semver", "serde", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", "workspace-hack", ] @@ -651,12 +651,12 @@ checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", - "getrandom", + "getrandom 0.3.3", "once_cell", "version_check", "zerocopy", @@ -688,18 +688,18 @@ dependencies = [ [[package]] name = "alloy-core" -version = "0.8.23" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca1380cc3c81b83d5234865779494970c83b5893b423c59cdd68c3cd1ed0b671" +checksum = "9d8bcce99ad10fe02640cfaec1c6bc809b837c783c1d52906aa5af66e2a196f6" dependencies = [ "alloy-primitives", ] [[package]] name = "alloy-primitives" -version = "0.8.23" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eacedba97e65cdc7ab592f2b22ef5d3ab8d60b2056bc3a6e6363577e8270ec6f" +checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" dependencies = [ "bytes", "cfg-if", @@ -713,56 +713,57 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.8.22" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" +checksum = "e10ae8e9a91d328ae954c22542415303919aabe976fe7a92eb06db1b68fd59f2" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.22" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" +checksum = "83ad5da86c127751bc607c174d6c9fe9b85ef0889a9ca0c641735d77d4f98f26" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", - "indexmap 2.7.0", + "indexmap 2.9.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.22" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" +checksum = "ba3d30f0d3f9ba3b7686f3ff1de9ee312647aac705604417a2f40c604f409a9e" dependencies = [ "const-hex", "dunce", "heck 0.5.0", + "macro-string", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "syn-solidity", ] [[package]] name = "alloy-sol-types" -version = "0.8.22" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" +checksum = "d43d5e60466a440230c07761aa67671d4719d46f43be8ea6e7ed334d8db4a9ab" dependencies = [ "alloy-primitives", "alloy-sol-macro", @@ -825,11 +826,12 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "3.0.6" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" +checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" dependencies = [ "anstyle", + "once_cell", "windows-sys 0.59.0", ] @@ -841,9 +843,9 @@ checksum = "ecb50559f19eb92f65279f9de03e4625ed0572e7564ef3de5253e13928c55266" [[package]] name = "anyhow" -version = "1.0.95" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" [[package]] name = "arc-swap" @@ -968,7 +970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", "rayon", ] @@ -1010,7 +1012,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -1032,18 +1034,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "async-trait" -version = "0.1.85" +version = "0.1.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" +checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -1117,7 +1119,7 @@ dependencies = [ "axum-core 0.4.5", "bytes", "futures-util", - "http 1.2.0", + "http 1.3.1", "http-body 1.0.1", "http-body-util", "itoa", @@ -1160,7 +1162,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 1.2.0", + "http 1.3.1", "http-body 1.0.1", "http-body-util", "mime", @@ -1177,16 +1179,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" dependencies = [ - "getrandom", + "getrandom 0.2.16", "instant", - "rand", + "rand 0.8.5", ] [[package]] name = "backtrace" -version = "0.3.74" +version = "0.3.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" dependencies = [ "addr2line", "cfg-if", @@ -1233,9 +1235,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.6.0" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" [[package]] name = "bcs" @@ -1267,18 +1269,19 @@ checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d" [[package]] name = "bip32" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" +checksum = "db40d3dfbeab4e031d78c844642fa0caa0b0db11ce1607ac9d2986dff1405c69" dependencies = [ "bs58 0.5.1", "hmac", "k256", "once_cell", "pbkdf2 0.12.2", - "rand_core", + "rand_core 0.6.4", "ripemd", - "sha2 0.10.8", + "secp256k1 0.27.0", + "sha2 0.10.9", "subtle", "zeroize", ] @@ -1290,8 +1293,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33415e24172c1b7d6066f6d999545375ab8e1d95421d6784bdfff9496f292387" dependencies = [ "bitcoin_hashes 0.13.0", - "rand", - "rand_core", + "rand 0.8.5", + "rand_core 0.6.4", "serde", "unicode-normalization", ] @@ -1387,9 +1390,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.6.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" [[package]] name = "bitvec" @@ -1425,9 +1428,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.5.5" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e" +checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" dependencies = [ "arrayref", "arrayvec", @@ -1472,15 +1475,15 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "sha2 0.10.8", + "sha2 0.10.9", "tinyvec", ] [[package]] name = "bstr" -version = "1.11.3" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531a9155a481e2ee699d4f98f43c0ca4ff8ee1bfd55c31e9e98fb29d2b176fe0" +checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" dependencies = [ "memchr", "serde", @@ -1488,9 +1491,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-unit" @@ -1510,18 +1513,18 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" dependencies = [ "serde", ] [[package]] name = "cc" -version = "1.2.7" +version = "1.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" +checksum = "32db95edf998450acc7881c932f94cd9b05c87b4b2599e8bab064753da4acfd1" dependencies = [ "shlex", ] @@ -1543,9 +1546,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.39" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1553,14 +1556,14 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets 0.52.6", + "windows-link", ] [[package]] name = "clap" -version = "4.5.24" +version = "4.5.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9560b07a799281c7e0958b9296854d6fafd4c5f31444a7e5bb1ad6dde5ccf1bd" +checksum = "ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000" dependencies = [ "clap_builder", "clap_derive", @@ -1568,9 +1571,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.24" +version = "4.5.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874e0dd3eb68bf99058751ac9712f622e61e6f393a94f7128fa26e3f02f5c7cd" +checksum = "379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120" dependencies = [ "anstream", "anstyle", @@ -1580,14 +1583,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.24" +version = "4.5.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" +checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -1627,9 +1630,9 @@ dependencies = [ [[package]] name = "console" -version = "0.15.10" +version = "0.15.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" +checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" dependencies = [ "encode_unicode", "libc", @@ -1672,7 +1675,7 @@ version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" dependencies = [ - "getrandom", + "getrandom 0.2.16", "once_cell", "tiny-keccak", ] @@ -1685,13 +1688,13 @@ checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "contracts" -version = "0.6.3" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1d1429e3bd78171c65aa010eabcdf8f863ba3254728dbfb0ad4b1545beac15c" +checksum = "dc486fc59d4d0e52ea0b4461a12720c8617338c9ee955cc4013fb7319d264abd" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.101", ] [[package]] @@ -1734,7 +1737,7 @@ name = "cosmos-sdk-proto" version = "0.24.0-pre" source = "git+https://github.com/CyberHoward/cosmos-rust.git?branch=patch-1#2350dd516aaeb64907a7d6d13782c24483221bb1" dependencies = [ - "prost 0.13.4", + "prost 0.13.5", "tendermint-proto 0.39.1", ] @@ -1744,7 +1747,7 @@ version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d0afc4daf81936e6ef5a2cf76f00c913ba5bc385d58ae1e09644e25d16b0381" dependencies = [ - "prost 0.13.4", + "prost 0.13.5", "tendermint-proto 0.39.1", "tonic", ] @@ -1755,7 +1758,7 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8ce7f4797cdf5cd18be6555ff3f0a8d37023c2d60f3b2708895d601b85c1c46" dependencies = [ - "prost 0.13.4", + "prost 0.13.5", "tendermint-proto 0.39.1", ] @@ -1766,9 +1769,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "462e1f6a8e005acc8835d32d60cbd7973ed65ea2a8d8473830e675f050956427" dependencies = [ "informalsystems-pbjson", - "prost 0.13.4", + "prost 0.13.5", "serde", - "tendermint-proto 0.40.1", + "tendermint-proto 0.40.4", "tonic", ] @@ -1782,7 +1785,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core", + "rand_core 0.6.4", "serde", "serde_json", "signature", @@ -1802,7 +1805,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core", + "rand_core 0.6.4", "serde", "serde_json", "signature", @@ -1824,7 +1827,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core", + "rand_core 0.6.4", "serde", "serde_json", "signature", @@ -1835,15 +1838,15 @@ dependencies = [ [[package]] name = "cosmwasm-core" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34c440d4d8e3ecec783d0f9c89d25565168b0f4cdb80a1f6a387cf2168c0740" +checksum = "35b6dc17e7fd89d0a0a58f12ef33f0bbdf09a6a14c3dfb383eae665e5889250e" [[package]] name = "cosmwasm-crypto" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134e765161d60228cc27635032d2a466542ca83fd6c87f3c87f4963c0bd51008" +checksum = "aa2f53285517db3e33d825b3e46301efe845135778527e1295154413b2f0469e" dependencies = [ "ark-bls12-381", "ark-ec", @@ -1857,28 +1860,28 @@ dependencies = [ "k256", "num-traits", "p256", - "rand_core", + "rand_core 0.6.4", "rayon", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", ] [[package]] name = "cosmwasm-derive" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c94a4b93e722c91d2e58471cfe69480f4a656cfccacd8bfda5638f2a5d4512b" +checksum = "a782b93fae93e57ca8ad3e9e994e784583f5933aeaaa5c80a545c4b437be2047" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "cosmwasm-schema" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e9a7b56d154870ec4b57b224509854f706c9744449548d8a3bf91ac75c59192" +checksum = "6984ab21b47a096e17ae4c73cea2123a704d4b6686c39421247ad67020d76f95" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -1889,20 +1892,20 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd3d80310cd7b86b09dbe886f4f2ca235a5ddb8d478493c6e50e720a3b38a42" +checksum = "e01c9214319017f6ebd8e299036e1f717fa9bb6724e758f7d6fb2477599d1a29" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "cosmwasm-std" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4434e556b0aebff34bf082e75d175b5d7edbcf1d90d4cedb59623a1249fff567" +checksum = "bf82335c14bd94eeb4d3c461b7aa419ecd7ea13c2efe24b97cd972bdb8044e7d" dependencies = [ "base64 0.22.1", "bech32 0.11.0", @@ -1912,27 +1915,27 @@ dependencies = [ "cosmwasm-derive", "derive_more 1.0.0", "hex", - "rand_core", + "rand_core 0.6.4", "rmp-serde", "schemars", "serde", "serde-json-wasm", - "sha2 0.10.8", + "sha2 0.10.9", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 1.0.69", ] [[package]] name = "coverage-helper" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be1356c5ea94de25e41a9eec7748ab6a0eb011839573eb527e6f4acaa2fcd71" +checksum = "435aea653a110cde24da15ca2dac9e06d17d92ce2bd6c2b9179b508abbe6f06f" [[package]] name = "cpufeatures" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", ] @@ -1948,9 +1951,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.14" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" dependencies = [ "crossbeam-utils", ] @@ -1982,9 +1985,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" +checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" [[package]] name = "crypto-bigint" @@ -1993,7 +1996,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -2032,7 +2035,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2043,7 +2046,7 @@ checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" dependencies = [ "byteorder", "digest 0.9.0", - "rand_core", + "rand_core 0.6.4", "subtle-ng", "zeroize", ] @@ -2163,7 +2166,7 @@ checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ "convert_case", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2182,7 +2185,7 @@ dependencies = [ "log", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", ] @@ -2211,21 +2214,21 @@ dependencies = [ "file-lock", "flate2", "hex", - "http 1.2.0", + "http 1.3.1", "lazy_static", "libc-print", "log", "once_cell", - "prost 0.13.4", - "prost-types 0.13.4", - "rand_core", - "reqwest 0.12.12", + "prost 0.13.5", + "prost-types 0.13.5", + "rand_core 0.6.4", + "reqwest 0.12.15", "ring", "ripemd", "schemars", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", "tokio", "toml", @@ -2242,7 +2245,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2253,7 +2256,7 @@ checksum = "85806182382aef051a318b9abb41af559e6d7733fbba3c04c42ed23cc03d8e1a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2288,7 +2291,7 @@ dependencies = [ "futures", "ibc-relayer-types", "log", - "prost 0.13.4", + "prost 0.13.5", "serde", "serde_json", "thiserror 1.0.69", @@ -2357,14 +2360,14 @@ dependencies = [ "cw-utils", "log", "serde", - "sha2 0.10.8", + "sha2 0.10.9", ] [[package]] name = "cw-orch-networks" -version = "0.24.10" +version = "0.24.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ec1243e956f4ce02c01989c8e9cee5a88aba8d304083f6b9324684d94cb125" +checksum = "ab644b0b5a6c7450d18e04874e569b27464fdb0a3c90732f5f94b895f627892e" dependencies = [ "cw-orch-core", "serde", @@ -2379,13 +2382,13 @@ dependencies = [ "cosmwasm-std", "cw-orch-core", "cw-orch-daemon", - "env_logger 0.11.6", + "env_logger 0.11.8", "ibc-chain-registry", "ibc-relayer-types", "k8s-openapi", "kube", "log", - "reqwest 0.12.12", + "reqwest 0.12.15", "serde", "serde_json", "thiserror 1.0.69", @@ -2401,8 +2404,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "563311d320c9bdbb2287892a70d54102381a2265c75b65086236c7d85cd7dd87" dependencies = [ "cw-orch-core", - "prost 0.13.4", - "prost-types 0.13.4", + "prost 0.13.5", + "prost-types 0.13.5", ] [[package]] @@ -2412,7 +2415,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ccb1670cc49a7a10c425ba1072cb607eb00d8085f97692877b9bdb00d14dd3d" dependencies = [ "cw-orch-core", - "prost-types 0.13.4", + "prost-types 0.13.5", ] [[package]] @@ -2728,12 +2731,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core 0.20.10", - "darling_macro 0.20.10", + "darling_core 0.20.11", + "darling_macro 0.20.11", ] [[package]] @@ -2752,16 +2755,16 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2777,13 +2780,13 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core 0.20.10", + "darling_core 0.20.11", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2801,15 +2804,15 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" [[package]] name = "der" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ "const-oid", "pem-rfc7468", @@ -2825,6 +2828,15 @@ dependencies = [ "powerfmt", ] +[[package]] +name = "deranged" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +dependencies = [ + "powerfmt", +] + [[package]] name = "derivation-path" version = "0.2.0" @@ -2850,7 +2862,7 @@ checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2889,10 +2901,10 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling 0.20.10", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2912,18 +2924,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core 0.20.2", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "derive_more" -version = "0.99.18" +version = "0.99.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" +checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -2952,7 +2964,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "unicode-xid", ] @@ -2964,7 +2976,7 @@ checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "unicode-xid", ] @@ -3080,7 +3092,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3104,7 +3116,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.95", + "syn 2.0.101", "termcolor", "toml", "walkdir", @@ -3124,9 +3136,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ecdsa" @@ -3162,7 +3174,7 @@ checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" dependencies = [ "curve25519-dalek-ng", "hex", - "rand_core", + "rand_core 0.6.4", "sha2 0.9.9", "zeroize", ] @@ -3175,9 +3187,9 @@ checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek", "ed25519", - "rand_core", + "rand_core 0.6.4", "serde", - "sha2 0.10.8", + "sha2 0.10.9", "subtle", "zeroize", ] @@ -3191,7 +3203,7 @@ dependencies = [ "derivation-path", "ed25519-dalek", "hmac", - "sha2 0.10.8", + "sha2 0.10.9", ] [[package]] @@ -3204,16 +3216,16 @@ dependencies = [ "ed25519", "hashbrown 0.14.5", "hex", - "rand_core", - "sha2 0.10.8", + "rand_core 0.6.4", + "sha2 0.10.9", "zeroize", ] [[package]] name = "either" -version = "1.13.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "elliptic-curve" @@ -3229,7 +3241,7 @@ dependencies = [ "group", "pem-rfc7468", "pkcs8", - "rand_core", + "rand_core 0.6.4", "sec1", "serdect", "subtle", @@ -3259,7 +3271,7 @@ checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3287,28 +3299,28 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.6" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0" +checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" dependencies = [ "anstream", "anstyle", "env_filter", - "humantime", + "jiff", "log", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" +checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" dependencies = [ "libc", "windows-sys 0.59.0", @@ -3327,9 +3339,9 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c3e4e0dd3673c1139bf041f3008816d9cf2946bbfac2945c09e523b8d7b05b2" +checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" dependencies = [ "event-listener", "pin-project-lite", @@ -3338,7 +3350,7 @@ dependencies = [ [[package]] name = "evm-note" version = "0.4.0" -source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#f2c44de8595a26e480b08ca9da4962407d102f60" dependencies = [ "alloy-sol-types", "cosmwasm-schema", @@ -3364,7 +3376,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3385,11 +3397,11 @@ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "ff" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3436,9 +3448,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.0.35" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" +checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" dependencies = [ "crc32fast", "miniz_oxide", @@ -3511,7 +3523,7 @@ dependencies = [ "proc-macro2", "quote", "sp-crypto-hashing", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3524,7 +3536,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3535,7 +3547,7 @@ checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3624,7 +3636,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -3689,17 +3701,29 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasi 0.14.2+wasi-0.2.4", +] + [[package]] name = "gimli" version = "0.31.1" @@ -3708,9 +3732,9 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "globset" -version = "0.4.15" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19" +checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" dependencies = [ "aho-corasick", "bstr", @@ -3726,7 +3750,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3742,7 +3766,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.7.0", + "indexmap 2.9.0", "slab", "tokio", "tokio-util", @@ -3751,17 +3775,17 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.7" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5" dependencies = [ "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "http 1.2.0", - "indexmap 2.7.0", + "http 1.3.1", + "indexmap 2.9.0", "slab", "tokio", "tokio-util", @@ -3801,9 +3825,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" [[package]] name = "hashlink" @@ -3832,7 +3856,7 @@ dependencies = [ "base64 0.21.7", "bytes", "headers-core", - "http 1.2.0", + "http 1.3.1", "httpdate", "mime", "sha1", @@ -3844,7 +3868,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4" dependencies = [ - "http 1.2.0", + "http 1.3.1", ] [[package]] @@ -3861,9 +3885,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" +checksum = "f154ce46856750ed433c8649605bf7ed2de3bc35fd9d2a9f30cddd873c80cb08" [[package]] name = "hex" @@ -3929,9 +3953,9 @@ dependencies = [ [[package]] name = "http" -version = "1.2.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" +checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" dependencies = [ "bytes", "fnv", @@ -3956,27 +3980,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.2.0", + "http 1.3.1", ] [[package]] name = "http-body-util" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", - "futures-util", - "http 1.2.0", + "futures-core", + "http 1.3.1", "http-body 1.0.1", "pin-project-lite", ] [[package]] name = "httparse" -version = "1.9.5" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] name = "httpdate" @@ -3986,9 +4010,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "humantime" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f" [[package]] name = "humantime-serde" @@ -4026,15 +4050,15 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.7", - "http 1.2.0", + "h2 0.4.10", + "http 1.3.1", "http-body 1.0.1", "httparse", "httpdate", @@ -4047,21 +4071,21 @@ dependencies = [ [[package]] name = "hyper-http-proxy" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d06dbdfbacf34d996c6fb540a71a684a7aae9056c71951163af8a8a4c07b9a4" +checksum = "7ad4b0a1e37510028bc4ba81d0e38d239c39671b0f0ce9e02dfa93a8133f7c08" dependencies = [ "bytes", "futures-util", "headers", - "http 1.2.0", - "hyper 1.5.2", + "http 1.3.1", + "hyper 1.6.0", "hyper-rustls 0.27.5", "hyper-util", "pin-project-lite", "rustls-native-certs 0.7.3", "tokio", - "tokio-rustls 0.26.1", + "tokio-rustls 0.26.2", "tower-service", ] @@ -4086,15 +4110,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ "futures-util", - "http 1.2.0", - "hyper 1.5.2", + "http 1.3.1", + "hyper 1.6.0", "hyper-util", "log", - "rustls 0.23.20", + "rustls 0.23.27", "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.1", + "tokio-rustls 0.26.2", "tower-service", ] @@ -4104,7 +4128,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "pin-project-lite", "tokio", @@ -4119,7 +4143,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "native-tls", "tokio", @@ -4129,16 +4153,17 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" +checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.2.0", + "http 1.3.1", "http-body 1.0.1", - "hyper 1.5.2", + "hyper 1.6.0", + "libc", "pin-project-lite", "socket2", "tokio", @@ -4148,16 +4173,17 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.61" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", + "log", "wasm-bindgen", - "windows-core 0.52.0", + "windows-core 0.61.0", ] [[package]] @@ -4178,7 +4204,7 @@ dependencies = [ "async-trait", "flex-error", "futures", - "http 1.2.0", + "http 1.3.1", "ibc-proto 0.51.1", "ibc-relayer", "ibc-relayer-types", @@ -4186,7 +4212,7 @@ dependencies = [ "reqwest 0.11.27", "serde", "serde_json", - "tendermint-rpc 0.40.1", + "tendermint-rpc 0.40.4", "tokio", "tracing", ] @@ -4201,7 +4227,7 @@ dependencies = [ "bytes", "flex-error", "ics23", - "prost 0.13.4", + "prost 0.13.5", "subtle-encoding", "tendermint-proto 0.38.1", ] @@ -4218,10 +4244,10 @@ dependencies = [ "flex-error", "ics23", "informalsystems-pbjson", - "prost 0.13.4", + "prost 0.13.5", "serde", "subtle-encoding", - "tendermint-proto 0.40.1", + "tendermint-proto 0.40.4", "tonic", ] @@ -4249,7 +4275,7 @@ dependencies = [ "generic-array", "hdpath", "hex", - "http 1.2.0", + "http 1.3.1", "humantime", "humantime-serde", "ibc-proto 0.51.1", @@ -4260,7 +4286,7 @@ dependencies = [ "num-bigint", "num-rational", "once_cell", - "prost 0.13.4", + "prost 0.13.5", "regex", "reqwest 0.11.27", "retry", @@ -4270,16 +4296,16 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "signature", "strum", "subtle-encoding", - "tendermint 0.40.1", + "tendermint 0.40.4", "tendermint-light-client", "tendermint-light-client-detector", "tendermint-light-client-verifier", - "tendermint-proto 0.40.1", - "tendermint-rpc 0.40.1", + "tendermint-proto 0.40.4", + "tendermint-rpc 0.40.4", "thiserror 1.0.69", "tiny-bip39", "tiny-keccak", @@ -4299,22 +4325,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c79cde1a2f28f699d5a93688881c083b1b612a867304f2c8ab466ec9fcce47c" dependencies = [ "bytes", - "derive_more 0.99.18", + "derive_more 0.99.20", "flex-error", "ibc-proto 0.51.1", "ics23", "itertools 0.13.0", "num-rational", "primitive-types", - "prost 0.13.4", + "prost 0.13.5", "regex", "serde", "serde_derive", "serde_json", "subtle-encoding", - "tendermint 0.40.1", + "tendermint 0.40.4", "tendermint-light-client-verifier", - "tendermint-proto 0.40.1", + "tendermint-proto 0.40.4", "time", "tracing", "uint", @@ -4336,7 +4362,7 @@ dependencies = [ "prometheus", "serde", "serde_json", - "tendermint 0.40.1", + "tendermint 0.40.4", "tokio", "tracing", ] @@ -4349,7 +4375,7 @@ dependencies = [ "enumorph", "num-traits", "sha3", - "thiserror 2.0.10", + "thiserror 2.0.12", "unionlabs", "voyager-primitives", ] @@ -4366,30 +4392,31 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost 0.13.4", + "prost 0.13.5", "ripemd", "serde", - "sha2 0.10.8", + "sha2 0.10.9", "sha3", ] [[package]] name = "icu_collections" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" dependencies = [ "displaydoc", + "potential_utf", "yoke", "zerofrom", "zerovec", ] [[package]] -name = "icu_locid" -version = "1.5.0" +name = "icu_locale_core" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" dependencies = [ "displaydoc", "litemap", @@ -4398,31 +4425,11 @@ dependencies = [ "zerovec", ] -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - [[package]] name = "icu_normalizer" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" dependencies = [ "displaydoc", "icu_collections", @@ -4430,67 +4437,54 @@ dependencies = [ "icu_properties", "icu_provider", "smallvec", - "utf16_iter", - "utf8_iter", - "write16", "zerovec", ] [[package]] name = "icu_normalizer_data" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" +checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" [[package]] name = "icu_properties" -version = "1.5.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +checksum = "2549ca8c7241c82f59c80ba2a6f415d931c5b58d24fb8412caa1a1f02c49139a" dependencies = [ "displaydoc", "icu_collections", - "icu_locid_transform", + "icu_locale_core", "icu_properties_data", "icu_provider", - "tinystr", + "potential_utf", + "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" +checksum = "8197e866e47b68f8f7d95249e172903bec06004b18b2937f1095d40a0c57de04" [[package]] name = "icu_provider" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" dependencies = [ "displaydoc", - "icu_locid", - "icu_provider_macros", + "icu_locale_core", "stable_deref_trait", "tinystr", "writeable", "yoke", "zerofrom", + "zerotrie", "zerovec", ] -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.95", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -4510,9 +4504,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" dependencies = [ "icu_normalizer", "icu_properties", @@ -4554,12 +4548,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.7.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" dependencies = [ "equivalent", - "hashbrown 0.15.2", + "hashbrown 0.15.3", ] [[package]] @@ -4574,12 +4568,11 @@ dependencies = [ [[package]] name = "insta" -version = "1.42.0" +version = "1.43.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6513e4067e16e69ed1db5ab56048ed65db32d10ba5fc1217f5393f8f17d8b5a5" +checksum = "154934ea70c58054b556dd430b99a98c2a7ff5309ac9891597e339b5c28f4371" dependencies = [ "console", - "linked-hash-map", "once_cell", "serde", "similar", @@ -4596,19 +4589,19 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.10.1" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "is-terminal" -version = "0.4.13" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" +checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -4635,6 +4628,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.13.0" @@ -4644,17 +4646,50 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + +[[package]] +name = "jiff" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f02000660d30638906021176af16b17498bd0d12813dbfe7b276d8bc7f3c0806" +dependencies = [ + "jiff-static", + "log", + "portable-atomic", + "portable-atomic-util", + "serde", +] + +[[package]] +name = "jiff-static" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3c30758ddd7188629c6713fc45d1188af4f44c90582311d0c8d8c9907f60c48" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", +] [[package]] name = "js-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ "once_cell", "wasm-bindgen", @@ -4707,7 +4742,7 @@ dependencies = [ "cfg-if", "ecdsa", "elliptic-curve", - "sha2 0.10.8", + "sha2 0.10.9", "signature", ] @@ -4758,10 +4793,10 @@ dependencies = [ "either", "futures", "home", - "http 1.2.0", + "http 1.3.1", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-http-proxy", "hyper-rustls 0.27.5", "hyper-timeout", @@ -4770,8 +4805,8 @@ dependencies = [ "k8s-openapi", "kube-core", "pem", - "rand", - "rustls 0.23.20", + "rand 0.8.5", + "rustls 0.23.27", "rustls-pemfile 2.2.0", "secrecy", "serde", @@ -4794,7 +4829,7 @@ checksum = "cce373a74d787d439063cdefab0f3672860bd7bac01a38e39019177e764a0fe6" dependencies = [ "chrono", "form_urlencoded", - "http 1.2.0", + "http 1.3.1", "json-patch", "k8s-openapi", "schemars", @@ -4809,11 +4844,11 @@ version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04a26c9844791e127329be5dce9298b03f9e2ff5939076d5438c92dea5eb78f2" dependencies = [ - "darling 0.20.10", + "darling 0.20.11", "proc-macro2", "quote", "serde_json", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -4855,9 +4890,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.172" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" [[package]] name = "libc-print" @@ -4870,9 +4905,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.11" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" @@ -4880,27 +4915,21 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "libc", ] -[[package]] -name = "linked-hash-map" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" - [[package]] name = "linux-raw-sys" -version = "0.4.15" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" [[package]] name = "litemap" -version = "0.7.4" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" +checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" [[package]] name = "lock_api" @@ -4914,9 +4943,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.22" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" dependencies = [ "serde", ] @@ -4944,7 +4973,7 @@ dependencies = [ "log-mdc", "once_cell", "parking_lot", - "rand", + "rand 0.8.5", "serde", "serde-value", "serde_json", @@ -4968,6 +4997,17 @@ dependencies = [ "tracing-subscriber", ] +[[package]] +name = "macro-string" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", +] + [[package]] name = "macro_magic" version = "0.5.1" @@ -4977,7 +5017,7 @@ dependencies = [ "macro_magic_core", "macro_magic_macros", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -4991,7 +5031,7 @@ dependencies = [ "macro_magic_core_macros", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5002,7 +5042,7 @@ checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5013,7 +5053,7 @@ checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" dependencies = [ "macro_magic_core", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5023,7 +5063,7 @@ source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-resp dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5061,9 +5101,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "miniz_oxide" -version = "0.8.2" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" +checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" dependencies = [ "adler2", ] @@ -5075,7 +5115,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] @@ -5100,15 +5140,15 @@ dependencies = [ [[package]] name = "multimap" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" +checksum = "1d87ecb2933e8aeadb3e3a02b828fed80a7528047e68b4f424523a0981a3a084" [[package]] name = "native-tls" -version = "0.2.12" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" dependencies = [ "libc", "log", @@ -5168,7 +5208,7 @@ dependencies = [ "num-integer", "num-iter", "num-traits", - "rand", + "rand 0.8.5", "smallvec", "zeroize", ] @@ -5241,9 +5281,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "opaque-debug" @@ -5253,11 +5293,11 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.68" +version = "0.10.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" +checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "cfg-if", "foreign-types", "libc", @@ -5274,20 +5314,20 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "openssl-probe" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847" dependencies = [ "cc", "libc", @@ -5348,7 +5388,7 @@ dependencies = [ "once_cell", "opentelemetry_api", "percent-encoding", - "rand", + "rand 0.8.5", "thiserror 1.0.69", ] @@ -5383,7 +5423,7 @@ dependencies = [ "elliptic-curve", "primeorder", "serdect", - "sha2 0.10.8", + "sha2 0.10.9", ] [[package]] @@ -5476,9 +5516,9 @@ dependencies = [ [[package]] name = "peg" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "295283b02df346d1ef66052a757869b2876ac29a6bb0ac3f5f7cd44aebe40e8f" +checksum = "9928cfca101b36ec5163e70049ee5368a8a1c3c6efc9ca9c5f9cc2f816152477" dependencies = [ "peg-macros", "peg-runtime", @@ -5486,9 +5526,9 @@ dependencies = [ [[package]] name = "peg-macros" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdad6a1d9cf116a059582ce415d5f5566aabcd4008646779dab7fdc2a9a9d426" +checksum = "6298ab04c202fa5b5d52ba03269fb7b74550b150323038878fe6c372d8280f71" dependencies = [ "peg-runtime", "proc-macro2", @@ -5497,15 +5537,15 @@ dependencies = [ [[package]] name = "peg-runtime" -version = "0.8.3" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a" +checksum = "132dca9b868d927b35b5dd728167b2dee150eb1ad686008fc71ccb298b776fca" [[package]] name = "pem" -version = "3.0.4" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +checksum = "38af38e8470ac9dee3ce1bae1af9c1671fffc44ddfd8bd1d0a3445bf349a8ef3" dependencies = [ "base64 0.22.1", "serde", @@ -5528,20 +5568,20 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.15" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" +checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" dependencies = [ "memchr", - "thiserror 2.0.10", + "thiserror 2.0.12", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.7.15" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e" +checksum = "d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5" dependencies = [ "pest", "pest_generator", @@ -5549,26 +5589,26 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.15" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b" +checksum = "db7d01726be8ab66ab32f9df467ae8b1148906685bbe75c82d1e65d7f5b3f841" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "pest_meta" -version = "2.7.15" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea" +checksum = "7f9f832470494906d1fca5329f8ab5791cc60beb230c74815dff541cbd2b5ca0" dependencies = [ "once_cell", "pest", - "sha2 0.10.8", + "sha2 0.10.9", ] [[package]] @@ -5578,27 +5618,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.7.0", + "indexmap 2.9.0", ] [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5636,14 +5676,14 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "polytone-evm" version = "0.4.0" -source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#9b6490575e89ca32790ff7fe35b3f7f82317c1ef" +source = "git+ssh://git@github.com/AbstractSDK/evm-ibc.git#f2c44de8595a26e480b08ca9da4962407d102f60" dependencies = [ "alloy", "alloy-sol-types", @@ -5656,9 +5696,27 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" + +[[package]] +name = "portable-atomic-util" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" +dependencies = [ + "portable-atomic", +] + +[[package]] +name = "potential_utf" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +dependencies = [ + "zerovec", +] [[package]] name = "powerfmt" @@ -5668,21 +5726,21 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" dependencies = [ "zerocopy", ] [[package]] name = "prettyplease" -version = "0.2.27" +version = "0.2.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "483f8c21f64f3ea09fe0f30f5d48c3e8eefe5dac9129f0075f76593b4c1da705" +checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" dependencies = [ "proc-macro2", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5709,9 +5767,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.2.0" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" dependencies = [ "toml_edit", ] @@ -5735,7 +5793,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5746,14 +5804,14 @@ checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] @@ -5775,13 +5833,13 @@ dependencies = [ [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "num-traits", - "rand", + "rand 0.8.5", "rand_chacha", "rand_xorshift", "unarray", @@ -5799,12 +5857,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.13.4" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec" +checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" dependencies = [ "bytes", - "prost-derive 0.13.4", + "prost-derive 0.13.5", ] [[package]] @@ -5814,8 +5872,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", - "heck 0.4.1", - "itertools 0.10.5", + "heck 0.5.0", + "itertools 0.12.1", "log", "multimap", "once_cell", @@ -5824,7 +5882,7 @@ dependencies = [ "prost 0.12.6", "prost-types 0.12.6", "regex", - "syn 2.0.95", + "syn 2.0.101", "tempfile", ] @@ -5835,23 +5893,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.10.5", + "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "prost-derive" -version = "0.13.4" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3" +checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" dependencies = [ "anyhow", - "itertools 0.13.0", + "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -5865,11 +5923,11 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.13.4" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc" +checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" dependencies = [ - "prost 0.13.4", + "prost 0.13.5", ] [[package]] @@ -5892,13 +5950,19 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.38" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] +[[package]] +name = "r-efi" +version = "5.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" + [[package]] name = "radium" version = "0.7.0" @@ -5913,7 +5977,16 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", "rand_chacha", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" +dependencies = [ + "rand_core 0.9.3", ] [[package]] @@ -5923,7 +5996,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -5932,16 +6005,22 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.16", ] +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" + [[package]] name = "rand_xorshift" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -5966,11 +6045,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.8" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" +checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", ] [[package]] @@ -5979,7 +6058,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom", + "getrandom 0.2.16", "libredox", "thiserror 1.0.69", ] @@ -6071,20 +6150,20 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.12" +version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" +checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2 0.4.7", - "http 1.2.0", + "h2 0.4.10", + "http 1.3.1", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-rustls 0.27.5", "hyper-tls", "hyper-util", @@ -6115,9 +6194,9 @@ dependencies = [ [[package]] name = "retry" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" +checksum = "a1e211f878258887b3e65dd3c8ff9f530fe109f441a117ee0cdc27f341355032" [[package]] name = "rfc6979" @@ -6131,15 +6210,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.16", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] @@ -6187,9 +6265,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.7" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c75d7c5c6b673e58bf54d8544a9f432e3a925b0e80f7cd3602ab5c50c55519" +checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b" dependencies = [ "const-oid", "digest 0.10.7", @@ -6198,7 +6276,7 @@ dependencies = [ "num-traits", "pkcs1", "pkcs8", - "rand_core", + "rand_core 0.6.4", "signature", "spki", "subtle", @@ -6233,12 +6311,13 @@ dependencies = [ [[package]] name = "ruint" -version = "1.12.4" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" +checksum = "78a46eb779843b2c4f21fac5773e25d6d5b7c8f0922876c91541790d2ca27eef" dependencies = [ "proptest", - "rand", + "rand 0.8.5", + "rand 0.9.1", "ruint-macro", "serde", "valuable", @@ -6253,9 +6332,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rust-embed" -version = "8.5.0" +version = "8.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa66af4a4fdd5e7ebc276f115e895611a34739a9c1c01028383d612d550953c0" +checksum = "60e425e204264b144d4c929d126d0de524b40a961686414bab5040f7465c71be" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -6264,25 +6343,25 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "8.5.0" +version = "8.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6125dbc8867951125eec87294137f4e9c2c96566e61bf72c45095a7c77761478" +checksum = "6bf418c9a2e3f6663ca38b8a7134cc2c2167c9d69688860e8961e3faa731702e" dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.95", + "syn 2.0.101", "walkdir", ] [[package]] name = "rust-embed-utils" -version = "8.5.0" +version = "8.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e5347777e9aacb56039b0e1f28785929a8a3b709e87482e7442c72e7c12529d" +checksum = "08d55b95147fe01265d06b3955db798bdaed52e60e2211c41137701b3aba8e21" dependencies = [ "globset", - "sha2 0.10.8", + "sha2 0.10.9", "walkdir", ] @@ -6315,11 +6394,11 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.43" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6" +checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "errno", "libc", "linux-raw-sys", @@ -6354,15 +6433,15 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.20" +version = "0.23.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b" +checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321" dependencies = [ "log", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.102.8", + "rustls-webpki 0.103.3", "subtle", "zeroize", ] @@ -6424,9 +6503,12 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.10.1" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" +checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +dependencies = [ + "zeroize", +] [[package]] name = "rustls-webpki" @@ -6449,17 +6531,28 @@ dependencies = [ "untrusted", ] +[[package]] +name = "rustls-webpki" +version = "0.103.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4a72fe2bcf7a6ac6fd7d0b9e5cb68aeb7d4c0a0271730218b3e92d43b4eb435" +dependencies = [ + "ring", + "rustls-pki-types", + "untrusted", +] + [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "same-file" @@ -6482,9 +6575,9 @@ dependencies = [ [[package]] name = "scc" -version = "2.3.0" +version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28e1c91382686d21b5ac7959341fcb9780fa7c03773646995a87c950fa7be640" +checksum = "22b2d775fb28f245817589471dd49c5edf64237f4a19d10ce9a92ff4651a27f4" dependencies = [ "sdd", ] @@ -6500,9 +6593,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" dependencies = [ "dyn-clone", "schemars_derive", @@ -6512,14 +6605,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -6546,9 +6639,9 @@ dependencies = [ [[package]] name = "sdd" -version = "3.0.5" +version = "3.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478f121bb72bbf63c52c93011ea1791dca40140dfe13f8336c4c5ac952c33aa9" +checksum = "584e070911c7017da6cb2eb0788d09f43d789029b5877d3e5ecc8acf86ceee21" [[package]] name = "sec1" @@ -6565,6 +6658,15 @@ dependencies = [ "zeroize", ] +[[package]] +name = "secp256k1" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" +dependencies = [ + "secp256k1-sys 0.8.1", +] + [[package]] name = "secp256k1" version = "0.28.2" @@ -6572,7 +6674,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" dependencies = [ "bitcoin_hashes 0.13.0", - "rand", + "rand 0.8.5", "secp256k1-sys 0.9.2", "serde", ] @@ -6587,6 +6689,15 @@ dependencies = [ "secp256k1-sys 0.10.1", ] +[[package]] +name = "secp256k1-sys" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" +dependencies = [ + "cc", +] + [[package]] name = "secp256k1-sys" version = "0.9.2" @@ -6621,7 +6732,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -6634,7 +6745,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "core-foundation 0.10.0", "core-foundation-sys", "libc", @@ -6653,18 +6764,18 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.24" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" dependencies = [ "serde", ] [[package]] name = "serde" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" dependencies = [ "serde_derive", ] @@ -6712,9 +6823,9 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.15" +version = "0.11.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" +checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96" dependencies = [ "serde", ] @@ -6731,13 +6842,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -6748,14 +6859,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "serde_json" -version = "1.0.135" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ "itoa", "memchr", @@ -6765,9 +6876,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" dependencies = [ "itoa", "serde", @@ -6775,13 +6886,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.19" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -6811,7 +6922,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.9.0", "itoa", "ryu", "serde", @@ -6850,7 +6961,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -6879,9 +6990,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.8" +version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", "cpufeatures", @@ -6921,9 +7032,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook-registry" -version = "1.4.2" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" dependencies = [ "libc", ] @@ -6935,14 +7046,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", + "rand_core 0.6.4", ] [[package]] name = "similar" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" [[package]] name = "slab" @@ -6955,15 +7066,15 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" [[package]] name = "socket2" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" +checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" dependencies = [ "libc", "windows-sys 0.52.0", @@ -6987,7 +7098,7 @@ dependencies = [ "blake2b_simd", "byteorder", "digest 0.10.7", - "sha2 0.10.8", + "sha2 0.10.9", "sha3", "twox-hash", ] @@ -7027,10 +7138,10 @@ dependencies = [ "lazy_static", "serde", "serde-utils", - "sha2 0.10.8", + "sha2 0.10.9", "smallvec", "ssz-derive", - "thiserror 2.0.10", + "thiserror 2.0.12", "typenum", "unionlabs-primitives", ] @@ -7093,7 +7204,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7130,9 +7241,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.95" +version = "2.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a" +checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" dependencies = [ "proc-macro2", "quote", @@ -7148,7 +7259,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7168,13 +7279,13 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.13.1" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7194,7 +7305,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.0", "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -7233,13 +7344,12 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.15.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" +checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" dependencies = [ - "cfg-if", "fastrand", - "getrandom", + "getrandom 0.3.3", "once_cell", "rustix", "windows-sys 0.59.0", @@ -7260,13 +7370,13 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.13.4", + "prost 0.13.5", "ripemd", "serde", "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.8", + "sha2 0.10.9", "signature", "subtle", "subtle-encoding", @@ -7277,9 +7387,9 @@ dependencies = [ [[package]] name = "tendermint" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9703e34d940c2a293804752555107f8dbe2b84ec4c6dd5203831235868105d2" +checksum = "fc997743ecfd4864bbca8170d68d9b2bee24653b034210752c2d883ef4b838b1" dependencies = [ "bytes", "digest 0.10.7", @@ -7290,17 +7400,17 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.13.4", + "prost 0.13.5", "ripemd", "serde", "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.8", + "sha2 0.10.9", "signature", "subtle", "subtle-encoding", - "tendermint-proto 0.40.1", + "tendermint-proto 0.40.4", "time", "zeroize", ] @@ -7321,27 +7431,27 @@ dependencies = [ [[package]] name = "tendermint-config" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89cc3ea9a39b7ee34eefcff771cc067ecaa0c988c1c5ac08defd878471a06f76" +checksum = "069d1791f9b02a596abcd26eb72003b2e9906c6169a60fa82ffc080dd3a43fda" dependencies = [ "flex-error", "serde", "serde_json", - "tendermint 0.40.1", + "tendermint 0.40.4", "toml", "url", ] [[package]] name = "tendermint-light-client" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a803ff14b11827772f696ba3a1873a5f24598121872c924a764011fc58fc22a0" +checksum = "67ffc879bafe2adae632b230e9ffc1ac0abef88230e6a7529ca964b150bbf65b" dependencies = [ "contracts", "crossbeam-channel", - "derive_more 0.99.18", + "derive_more 0.99.20", "flex-error", "futures", "regex", @@ -7350,9 +7460,9 @@ dependencies = [ "serde_derive", "serde_json", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tendermint 0.40.1", + "tendermint 0.40.4", "tendermint-light-client-verifier", - "tendermint-rpc 0.40.1", + "tendermint-rpc 0.40.4", "time", "tokio", "tracing", @@ -7360,12 +7470,12 @@ dependencies = [ [[package]] name = "tendermint-light-client-detector" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f8c799eb7132aa2aebac82dcb3c3858981eca06eb4aa8944e0853d5ae682354" +checksum = "4c4d1b0fbc3d40a4b3f331b10a5721c24c6d0fae27f906857c6f5cc91494f6ac" dependencies = [ "crossbeam-channel", - "derive_more 0.99.18", + "derive_more 0.99.20", "flex-error", "futures", "serde", @@ -7373,24 +7483,24 @@ dependencies = [ "serde_derive", "serde_json", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tendermint 0.40.1", + "tendermint 0.40.4", "tendermint-light-client", - "tendermint-proto 0.40.1", - "tendermint-rpc 0.40.1", + "tendermint-proto 0.40.4", + "tendermint-rpc 0.40.4", "time", "tracing", ] [[package]] name = "tendermint-light-client-verifier" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0cda4a449fc70985a95f892a67286f13afa4e048d90b8d04a2bf6341e88d1c2" +checksum = "548421907264a3a580634d71459a6ceda0dc569f24c9675adfab17465edf8511" dependencies = [ - "derive_more 0.99.18", + "derive_more 0.99.20", "flex-error", "serde", - "tendermint 0.40.1", + "tendermint 0.40.4", "time", ] @@ -7402,8 +7512,8 @@ checksum = "8ed14abe3b0502a3afe21ca74ca5cdd6c7e8d326d982c26f98a394445eb31d6e" dependencies = [ "bytes", "flex-error", - "prost 0.13.4", - "prost-types 0.13.4", + "prost 0.13.5", + "prost-types 0.13.5", "serde", "serde_bytes", "subtle-encoding", @@ -7418,7 +7528,7 @@ checksum = "bf3abf34ecf33125621519e9952688e7a59a98232d51538037ba21fbe526a802" dependencies = [ "bytes", "flex-error", - "prost 0.13.4", + "prost 0.13.5", "serde", "serde_bytes", "subtle-encoding", @@ -7427,13 +7537,13 @@ dependencies = [ [[package]] name = "tendermint-proto" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae9e1705aa0fa5ecb2c6aa7fb78c2313c4a31158ea5f02048bf318f849352eb" +checksum = "d2c40e13d39ca19082d8a7ed22de7595979350319833698f8b1080f29620a094" dependencies = [ "bytes", "flex-error", - "prost 0.13.4", + "prost 0.13.5", "serde", "serde_bytes", "subtle-encoding", @@ -7450,10 +7560,10 @@ dependencies = [ "bytes", "flex-error", "futures", - "getrandom", + "getrandom 0.2.16", "peg", "pin-project", - "rand", + "rand 0.8.5", "reqwest 0.11.27", "semver", "serde", @@ -7475,19 +7585,19 @@ dependencies = [ [[package]] name = "tendermint-rpc" -version = "0.40.1" +version = "0.40.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835a52aa504c63ec05519e31348d3f4ba2fe79493c588e2cad5323d5e81b161a" +checksum = "35e0569a4b4cc42ff00df5a665be2858a39ff79df4790b176f1cd0e169bc0fc2" dependencies = [ "async-trait", "async-tungstenite", "bytes", "flex-error", "futures", - "getrandom", + "getrandom 0.2.16", "peg", "pin-project", - "rand", + "rand 0.8.5", "reqwest 0.11.27", "semver", "serde", @@ -7495,9 +7605,9 @@ dependencies = [ "serde_json", "subtle", "subtle-encoding", - "tendermint 0.40.1", - "tendermint-config 0.40.1", - "tendermint-proto 0.40.1", + "tendermint 0.40.4", + "tendermint-config 0.40.4", + "tendermint-proto 0.40.4", "thiserror 1.0.69", "time", "tokio", @@ -7527,11 +7637,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.10" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ac7f54ca534db81081ef1c1e7f6ea8a3ef428d2fc069097c079443d24124d3" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl 2.0.10", + "thiserror-impl 2.0.12", ] [[package]] @@ -7542,18 +7652,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "thiserror-impl" -version = "2.0.10" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e9465d30713b56a37ede7185763c3492a91be2f5fa68d958c44e41ab9248beb" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7578,11 +7688,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.37" +version = "0.3.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" +checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" dependencies = [ - "deranged", + "deranged 0.4.0", "num-conv", "powerfmt", "serde", @@ -7592,15 +7702,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" +checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" [[package]] name = "time-macros" -version = "0.2.19" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" +checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" dependencies = [ "num-conv", "time-core", @@ -7616,9 +7726,9 @@ dependencies = [ "hmac", "once_cell", "pbkdf2 0.11.0", - "rand", + "rand 0.8.5", "rustc-hash", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", "unicode-normalization", "wasm-bindgen", @@ -7636,9 +7746,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.7.6" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" dependencies = [ "displaydoc", "zerovec", @@ -7646,9 +7756,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" +checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" dependencies = [ "tinyvec_macros", ] @@ -7661,9 +7771,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.43.0" +version = "1.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" +checksum = "2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165" dependencies = [ "backtrace", "bytes", @@ -7685,7 +7795,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7721,11 +7831,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" +checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" dependencies = [ - "rustls 0.23.20", + "rustls 0.23.27", "tokio", ] @@ -7754,9 +7864,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.13" +version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" +checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" dependencies = [ "bytes", "futures-core", @@ -7768,9 +7878,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" dependencies = [ "serde", "serde_spanned", @@ -7780,26 +7890,33 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.22.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.9.0", "serde", "serde_spanned", "toml_datetime", + "toml_write", "winnow", ] +[[package]] +name = "toml_write" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" + [[package]] name = "tonic" version = "0.12.3" @@ -7811,21 +7928,21 @@ dependencies = [ "axum 0.7.9", "base64 0.22.1", "bytes", - "h2 0.4.7", - "http 1.2.0", + "h2 0.4.10", + "http 1.3.1", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-timeout", "hyper-util", "percent-encoding", "pin-project", - "prost 0.13.4", + "prost 0.13.5", "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", "socket2", "tokio", - "tokio-rustls 0.26.1", + "tokio-rustls 0.26.2", "tokio-stream", "tower 0.4.13", "tower-layer", @@ -7844,7 +7961,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -7875,9 +7992,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" dependencies = [ "base64 0.21.7", - "bitflags 2.6.0", + "bitflags 2.9.0", "bytes", - "http 1.2.0", + "http 1.3.1", "http-body 1.0.1", "http-body-util", "mime", @@ -7919,7 +8036,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] @@ -7989,10 +8106,10 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.2.0", + "http 1.3.1", "httparse", "log", - "rand", + "rand 0.8.5", "rustls 0.22.4", "rustls-pki-types", "sha1", @@ -8010,10 +8127,10 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.2.0", + "http 1.3.1", "httparse", "log", - "rand", + "rand 0.8.5", "sha1", "thiserror 1.0.69", "utf-8", @@ -8041,9 +8158,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -8077,9 +8194,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-normalization" @@ -8118,7 +8235,7 @@ dependencies = [ "bip32", "bs58 0.4.0", "chrono", - "derive_more 0.99.18", + "derive_more 0.99.20", "either", "frame-support-procedural", "generic-array", @@ -8135,13 +8252,13 @@ dependencies = [ "serde-utils", "serde_bytes", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "sha3", "solidity-slot", "ssz", "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", "subtle-encoding", - "thiserror 2.0.10", + "thiserror 2.0.12", "typenum", "unionlabs-primitives", "wasmparser", @@ -8158,7 +8275,7 @@ dependencies = [ "primitive-types", "serde", "serde_bytes", - "thiserror 2.0.10", + "thiserror 2.0.12", "typenum", "uint", ] @@ -8207,12 +8324,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - [[package]] name = "utf8-width" version = "0.1.7" @@ -8233,18 +8344,18 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.11.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" dependencies = [ - "getrandom", + "getrandom 0.3.3", ] [[package]] name = "valuable" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" [[package]] name = "vcpkg" @@ -8294,36 +8405,46 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.14.2+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ "cfg-if", "once_cell", + "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.49" +version = "0.4.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" +checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" dependencies = [ "cfg-if", "js-sys", @@ -8334,9 +8455,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -8344,22 +8465,25 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +dependencies = [ + "unicode-ident", +] [[package]] name = "wasmparser" @@ -8367,15 +8491,15 @@ version = "0.113.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.9.0", "semver", ] [[package]] name = "web-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" +checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" dependencies = [ "js-sys", "wasm-bindgen", @@ -8424,24 +8548,28 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.52.0" +version = "0.58.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" dependencies = [ + "windows-implement 0.58.0", + "windows-interface 0.58.0", + "windows-result 0.2.0", + "windows-strings 0.1.0", "windows-targets 0.52.6", ] [[package]] name = "windows-core" -version = "0.58.0" +version = "0.61.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" dependencies = [ - "windows-implement", - "windows-interface", - "windows-result", - "windows-strings", - "windows-targets 0.52.6", + "windows-implement 0.60.0", + "windows-interface 0.59.1", + "windows-link", + "windows-result 0.3.2", + "windows-strings 0.4.0", ] [[package]] @@ -8452,7 +8580,18 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", +] + +[[package]] +name = "windows-implement" +version = "0.60.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] @@ -8463,18 +8602,35 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] +[[package]] +name = "windows-interface" +version = "0.59.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", +] + +[[package]] +name = "windows-link" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" + [[package]] name = "windows-registry" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" dependencies = [ - "windows-result", - "windows-strings", - "windows-targets 0.52.6", + "windows-result 0.3.2", + "windows-strings 0.3.1", + "windows-targets 0.53.0", ] [[package]] @@ -8486,16 +8642,43 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-result" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" +dependencies = [ + "windows-link", +] + [[package]] name = "windows-strings" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" dependencies = [ - "windows-result", + "windows-result 0.2.0", "windows-targets 0.52.6", ] +[[package]] +name = "windows-strings" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" +dependencies = [ + "windows-link", +] + [[package]] name = "windows-sys" version = "0.48.0" @@ -8547,13 +8730,29 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", + "windows_i686_gnullvm 0.52.6", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] +[[package]] +name = "windows-targets" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" +dependencies = [ + "windows_aarch64_gnullvm 0.53.0", + "windows_aarch64_msvc 0.53.0", + "windows_i686_gnu 0.53.0", + "windows_i686_gnullvm 0.53.0", + "windows_i686_msvc 0.53.0", + "windows_x86_64_gnu 0.53.0", + "windows_x86_64_gnullvm 0.53.0", + "windows_x86_64_msvc 0.53.0", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -8566,6 +8765,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" + [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -8578,6 +8783,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" + [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -8590,12 +8801,24 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +[[package]] +name = "windows_i686_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" + [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" + [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -8608,6 +8831,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +[[package]] +name = "windows_i686_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" + [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -8620,6 +8849,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" + [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -8632,6 +8867,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" + [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -8644,11 +8885,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" + [[package]] name = "winnow" -version = "0.6.22" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980" +checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" dependencies = [ "memchr", ] @@ -8663,6 +8910,15 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +dependencies = [ + "bitflags 2.9.0", +] + [[package]] name = "workspace-hack" version = "0.1.0" @@ -8675,7 +8931,7 @@ dependencies = [ "bip32", "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", - "bitflags 2.6.0", + "bitflags 2.9.0", "bs58 0.5.1", "byteorder", "bytes", @@ -8691,7 +8947,7 @@ dependencies = [ "cw1-whitelist", "cw20-base", "der", - "deranged", + "deranged 0.3.11", "digest 0.10.7", "ecdsa", "ed25519", @@ -8709,7 +8965,7 @@ dependencies = [ "futures-task", "futures-util", "generic-array", - "getrandom", + "getrandom 0.2.16", "group", "hex-conservative 0.1.2", "hyper 0.14.32", @@ -8729,27 +8985,27 @@ dependencies = [ "parking_lot", "ppv-lite86", "primeorder", - "prost 0.13.4", - "rand", + "prost 0.13.5", + "rand 0.8.5", "rand_chacha", - "rand_core", + "rand_core 0.6.4", "regex", "regex-automata 0.4.9", "regex-syntax 0.8.5", "reqwest 0.11.27", - "reqwest 0.12.12", + "reqwest 0.12.15", "ripemd", "sec1", "semver", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "signature", "smallvec", "spki", "subtle-encoding", "syn 1.0.109", - "syn 2.0.95", + "syn 2.0.101", "tendermint-proto 0.39.1", "time", "tokio-stream", @@ -8763,17 +9019,11 @@ dependencies = [ "zeroize", ] -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - [[package]] name = "writeable" -version = "0.5.5" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" +checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" [[package]] name = "wyz" @@ -8796,7 +9046,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "cw2", - "getrandom", + "getrandom 0.2.16", "hex", "p256", "ripemd", @@ -8804,7 +9054,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.9", "thiserror 1.0.69", "tiny-keccak", "xion-cosmos-sdk-proto", @@ -8817,9 +9067,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5950da92cdb6e0fdebe4513a1defd73b6c4af7d1fa72ae5f14780451c535bc2" dependencies = [ "informalsystems-pbjson", - "prost 0.13.4", + "prost 0.13.5", "serde", - "tendermint-proto 0.40.1", + "tendermint-proto 0.40.4", ] [[package]] @@ -8835,9 +9085,9 @@ dependencies = [ [[package]] name = "yoke" -version = "0.7.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" +checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" dependencies = [ "serde", "stable_deref_trait", @@ -8847,55 +9097,54 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.7.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" +checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "synstructure", ] [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" dependencies = [ - "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] [[package]] name = "zerofrom" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", "synstructure", ] @@ -8916,14 +9165,25 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", +] + +[[package]] +name = "zerotrie" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", ] [[package]] name = "zerovec" -version = "0.10.4" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" dependencies = [ "yoke", "zerofrom", @@ -8932,11 +9192,11 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.10.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.95", + "syn 2.0.101", ] From 04f0363ff0da711e3d3aa1e6235bd45eed6a97dd Mon Sep 17 00:00:00 2001 From: Buckram Date: Tue, 13 May 2025 14:27:51 +0300 Subject: [PATCH 09/10] ica-client deployment --- framework/Cargo.lock | 1718 ++++++++---------- framework/artifacts/abstract_ica_client.wasm | Bin 485552 -> 437620 bytes interchain/scripts/src/bin/deploy_ica.rs | 37 +- interchain/scripts/state.json | 2 + 4 files changed, 748 insertions(+), 1009 deletions(-) diff --git a/framework/Cargo.lock b/framework/Cargo.lock index 66ad7b0bf..9a2d7a40f 100644 --- a/framework/Cargo.lock +++ b/framework/Cargo.lock @@ -153,8 +153,8 @@ dependencies = [ "cw2", "cw20", "cw20-base", - "env_logger 0.11.8", - "rand 0.8.5", + "env_logger 0.11.6", + "rand", "semver", "serde", "thiserror 1.0.69", @@ -177,11 +177,11 @@ dependencies = [ "hex", "itertools 0.13.0", "log", - "prost 0.13.5", + "prost 0.13.4", "schemars", "serde", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", "tiny-keccak", ] @@ -222,7 +222,7 @@ dependencies = [ "cw-asset", "cw-orch 0.27.0", "dotenv", - "env_logger 0.11.8", + "env_logger 0.11.6", "semver", "thiserror 1.0.69", "workspace-hack", @@ -249,7 +249,7 @@ dependencies = [ "cw-utils", "cw2", "ibc-proto 0.47.1", - "prost 0.13.5", + "prost 0.13.4", "semver", "thiserror 1.0.69", "workspace-hack", @@ -371,7 +371,7 @@ dependencies = [ "cw2", "cw20", "dotenv", - "env_logger 0.11.8", + "env_logger 0.11.6", "log", "rust-embed", "schemars", @@ -489,7 +489,7 @@ dependencies = [ "cw-storage-plus", "cw-utils", "cw2", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", ] @@ -560,7 +560,7 @@ dependencies = [ "cw-orch 0.27.0", "cw-utils", "dotenv", - "env_logger 0.11.8", + "env_logger 0.11.6", "semver", "thiserror 1.0.69", "workspace-hack", @@ -613,7 +613,7 @@ dependencies = [ "schemars", "semver", "serde", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", "workspace-hack", ] @@ -651,12 +651,12 @@ checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" [[package]] name = "ahash" -version = "0.8.12" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom 0.3.3", + "getrandom", "once_cell", "version_check", "zerocopy", @@ -713,57 +713,56 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.8.25" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10ae8e9a91d328ae954c22542415303919aabe976fe7a92eb06db1b68fd59f2" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.25" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ad5da86c127751bc607c174d6c9fe9b85ef0889a9ca0c641735d77d4f98f26" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", - "indexmap 2.9.0", + "indexmap 2.7.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.25" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3d30f0d3f9ba3b7686f3ff1de9ee312647aac705604417a2f40c604f409a9e" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", "heck 0.5.0", - "macro-string", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "syn-solidity", ] [[package]] name = "alloy-sol-types" -version = "0.8.25" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d43d5e60466a440230c07761aa67671d4719d46f43be8ea6e7ed334d8db4a9ab" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ "alloy-primitives", "alloy-sol-macro", @@ -826,12 +825,11 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "3.0.7" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" dependencies = [ "anstyle", - "once_cell", "windows-sys 0.59.0", ] @@ -843,9 +841,9 @@ checksum = "ecb50559f19eb92f65279f9de03e4625ed0572e7564ef3de5253e13928c55266" [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" [[package]] name = "arc-swap" @@ -970,7 +968,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand 0.8.5", + "rand", "rayon", ] @@ -1012,7 +1010,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -1034,18 +1032,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -1119,7 +1117,7 @@ dependencies = [ "axum-core 0.4.5", "bytes", "futures-util", - "http 1.3.1", + "http 1.2.0", "http-body 1.0.1", "http-body-util", "itoa", @@ -1162,7 +1160,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 1.3.1", + "http 1.2.0", "http-body 1.0.1", "http-body-util", "mime", @@ -1179,16 +1177,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" dependencies = [ - "getrandom 0.2.16", + "getrandom", "instant", - "rand 0.8.5", + "rand", ] [[package]] name = "backtrace" -version = "0.3.75" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" +checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" dependencies = [ "addr2line", "cfg-if", @@ -1235,9 +1233,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.7.3" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "bcs" @@ -1269,19 +1267,18 @@ checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d" [[package]] name = "bip32" -version = "0.5.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db40d3dfbeab4e031d78c844642fa0caa0b0db11ce1607ac9d2986dff1405c69" +checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" dependencies = [ "bs58 0.5.1", "hmac", "k256", "once_cell", "pbkdf2 0.12.2", - "rand_core 0.6.4", + "rand_core", "ripemd", - "secp256k1 0.27.0", - "sha2 0.10.9", + "sha2 0.10.8", "subtle", "zeroize", ] @@ -1293,8 +1290,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33415e24172c1b7d6066f6d999545375ab8e1d95421d6784bdfff9496f292387" dependencies = [ "bitcoin_hashes 0.13.0", - "rand 0.8.5", - "rand_core 0.6.4", + "rand", + "rand_core", "serde", "unicode-normalization", ] @@ -1390,9 +1387,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "bitvec" @@ -1428,9 +1425,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.2" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e" dependencies = [ "arrayref", "arrayvec", @@ -1475,15 +1472,15 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "sha2 0.10.9", + "sha2 0.10.8", "tinyvec", ] [[package]] name = "bstr" -version = "1.12.0" +version = "1.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +checksum = "531a9155a481e2ee699d4f98f43c0ca4ff8ee1bfd55c31e9e98fb29d2b176fe0" dependencies = [ "memchr", "serde", @@ -1491,9 +1488,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "byte-unit" @@ -1513,18 +1510,18 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.10.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" dependencies = [ "serde", ] [[package]] name = "cc" -version = "1.2.22" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32db95edf998450acc7881c932f94cd9b05c87b4b2599e8bab064753da4acfd1" +checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" dependencies = [ "shlex", ] @@ -1546,9 +1543,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.41" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1556,14 +1553,14 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-link", + "windows-targets 0.52.6", ] [[package]] name = "clap" -version = "4.5.38" +version = "4.5.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000" +checksum = "9560b07a799281c7e0958b9296854d6fafd4c5f31444a7e5bb1ad6dde5ccf1bd" dependencies = [ "clap_builder", "clap_derive", @@ -1571,9 +1568,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.38" +version = "4.5.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120" +checksum = "874e0dd3eb68bf99058751ac9712f622e61e6f393a94f7128fa26e3f02f5c7cd" dependencies = [ "anstream", "anstyle", @@ -1583,14 +1580,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.32" +version = "4.5.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" +checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -1630,9 +1627,9 @@ dependencies = [ [[package]] name = "console" -version = "0.15.11" +version = "0.15.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" +checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" dependencies = [ "encode_unicode", "libc", @@ -1675,7 +1672,7 @@ version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" dependencies = [ - "getrandom 0.2.16", + "getrandom", "once_cell", "tiny-keccak", ] @@ -1688,13 +1685,13 @@ checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "contracts" -version = "0.6.6" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc486fc59d4d0e52ea0b4461a12720c8617338c9ee955cc4013fb7319d264abd" +checksum = "f1d1429e3bd78171c65aa010eabcdf8f863ba3254728dbfb0ad4b1545beac15c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 1.0.109", ] [[package]] @@ -1737,7 +1734,7 @@ name = "cosmos-sdk-proto" version = "0.24.0-pre" source = "git+https://github.com/CyberHoward/cosmos-rust.git?branch=patch-1#2350dd516aaeb64907a7d6d13782c24483221bb1" dependencies = [ - "prost 0.13.5", + "prost 0.13.4", "tendermint-proto 0.39.1", ] @@ -1747,7 +1744,7 @@ version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d0afc4daf81936e6ef5a2cf76f00c913ba5bc385d58ae1e09644e25d16b0381" dependencies = [ - "prost 0.13.5", + "prost 0.13.4", "tendermint-proto 0.39.1", "tonic", ] @@ -1758,7 +1755,7 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8ce7f4797cdf5cd18be6555ff3f0a8d37023c2d60f3b2708895d601b85c1c46" dependencies = [ - "prost 0.13.5", + "prost 0.13.4", "tendermint-proto 0.39.1", ] @@ -1769,9 +1766,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "462e1f6a8e005acc8835d32d60cbd7973ed65ea2a8d8473830e675f050956427" dependencies = [ "informalsystems-pbjson", - "prost 0.13.5", + "prost 0.13.4", "serde", - "tendermint-proto 0.40.4", + "tendermint-proto 0.40.1", "tonic", ] @@ -1785,7 +1782,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core 0.6.4", + "rand_core", "serde", "serde_json", "signature", @@ -1805,7 +1802,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core 0.6.4", + "rand_core", "serde", "serde_json", "signature", @@ -1827,7 +1824,7 @@ dependencies = [ "ecdsa", "eyre", "k256", - "rand_core 0.6.4", + "rand_core", "serde", "serde_json", "signature", @@ -1838,15 +1835,15 @@ dependencies = [ [[package]] name = "cosmwasm-core" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35b6dc17e7fd89d0a0a58f12ef33f0bbdf09a6a14c3dfb383eae665e5889250e" +checksum = "c34c440d4d8e3ecec783d0f9c89d25565168b0f4cdb80a1f6a387cf2168c0740" [[package]] name = "cosmwasm-crypto" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2f53285517db3e33d825b3e46301efe845135778527e1295154413b2f0469e" +checksum = "134e765161d60228cc27635032d2a466542ca83fd6c87f3c87f4963c0bd51008" dependencies = [ "ark-bls12-381", "ark-ec", @@ -1860,28 +1857,28 @@ dependencies = [ "k256", "num-traits", "p256", - "rand_core 0.6.4", + "rand_core", "rayon", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", ] [[package]] name = "cosmwasm-derive" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a782b93fae93e57ca8ad3e9e994e784583f5933aeaaa5c80a545c4b437be2047" +checksum = "3c94a4b93e722c91d2e58471cfe69480f4a656cfccacd8bfda5638f2a5d4512b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "cosmwasm-schema" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6984ab21b47a096e17ae4c73cea2123a704d4b6686c39421247ad67020d76f95" +checksum = "3e9a7b56d154870ec4b57b224509854f706c9744449548d8a3bf91ac75c59192" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -1892,20 +1889,20 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01c9214319017f6ebd8e299036e1f717fa9bb6724e758f7d6fb2477599d1a29" +checksum = "edd3d80310cd7b86b09dbe886f4f2ca235a5ddb8d478493c6e50e720a3b38a42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "cosmwasm-std" -version = "2.2.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf82335c14bd94eeb4d3c461b7aa419ecd7ea13c2efe24b97cd972bdb8044e7d" +checksum = "4434e556b0aebff34bf082e75d175b5d7edbcf1d90d4cedb59623a1249fff567" dependencies = [ "base64 0.22.1", "bech32 0.11.0", @@ -1915,27 +1912,27 @@ dependencies = [ "cosmwasm-derive", "derive_more 1.0.0", "hex", - "rand_core 0.6.4", + "rand_core", "rmp-serde", "schemars", "serde", "serde-json-wasm", - "sha2 0.10.9", + "sha2 0.10.8", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 1.0.69", ] [[package]] name = "coverage-helper" -version = "0.2.4" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435aea653a110cde24da15ca2dac9e06d17d92ce2bd6c2b9179b508abbe6f06f" +checksum = "4be1356c5ea94de25e41a9eec7748ab6a0eb011839573eb527e6f4acaa2fcd71" [[package]] name = "cpufeatures" -version = "0.2.17" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -1951,9 +1948,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.15" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" dependencies = [ "crossbeam-utils", ] @@ -1985,9 +1982,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-bigint" @@ -1996,7 +1993,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core 0.6.4", + "rand_core", "subtle", "zeroize", ] @@ -2035,7 +2032,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2046,7 +2043,7 @@ checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" dependencies = [ "byteorder", "digest 0.9.0", - "rand_core 0.6.4", + "rand_core", "subtle-ng", "zeroize", ] @@ -2166,7 +2163,7 @@ checksum = "bad52865e313bb7ed3f3938f7ad9d566e430fb6143a63476c22bed505ea78cd7" dependencies = [ "convert_case", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2185,7 +2182,7 @@ dependencies = [ "log", "serde", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", ] @@ -2214,21 +2211,21 @@ dependencies = [ "file-lock", "flate2", "hex", - "http 1.3.1", + "http 1.2.0", "lazy_static", "libc-print", "log", "once_cell", - "prost 0.13.5", - "prost-types 0.13.5", - "rand_core 0.6.4", - "reqwest 0.12.15", + "prost 0.13.4", + "prost-types 0.13.4", + "rand_core", + "reqwest 0.12.12", "ring", "ripemd", "schemars", "serde", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", "tokio", "toml", @@ -2245,7 +2242,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2256,7 +2253,7 @@ checksum = "85806182382aef051a318b9abb41af559e6d7733fbba3c04c42ed23cc03d8e1a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2291,7 +2288,7 @@ dependencies = [ "futures", "ibc-relayer-types", "log", - "prost 0.13.5", + "prost 0.13.4", "serde", "serde_json", "thiserror 1.0.69", @@ -2360,14 +2357,14 @@ dependencies = [ "cw-utils", "log", "serde", - "sha2 0.10.9", + "sha2 0.10.8", ] [[package]] name = "cw-orch-networks" -version = "0.24.11" +version = "0.24.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab644b0b5a6c7450d18e04874e569b27464fdb0a3c90732f5f94b895f627892e" +checksum = "c2ec1243e956f4ce02c01989c8e9cee5a88aba8d304083f6b9324684d94cb125" dependencies = [ "cw-orch-core", "serde", @@ -2382,13 +2379,13 @@ dependencies = [ "cosmwasm-std", "cw-orch-core", "cw-orch-daemon", - "env_logger 0.11.8", + "env_logger 0.11.6", "ibc-chain-registry", "ibc-relayer-types", "k8s-openapi", "kube", "log", - "reqwest 0.12.15", + "reqwest 0.12.12", "serde", "serde_json", "thiserror 1.0.69", @@ -2404,8 +2401,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "563311d320c9bdbb2287892a70d54102381a2265c75b65086236c7d85cd7dd87" dependencies = [ "cw-orch-core", - "prost 0.13.5", - "prost-types 0.13.5", + "prost 0.13.4", + "prost-types 0.13.4", ] [[package]] @@ -2415,7 +2412,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ccb1670cc49a7a10c425ba1072cb607eb00d8085f97692877b9bdb00d14dd3d" dependencies = [ "cw-orch-core", - "prost-types 0.13.5", + "prost-types 0.13.4", ] [[package]] @@ -2731,12 +2728,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ - "darling_core 0.20.11", - "darling_macro 0.20.11", + "darling_core 0.20.10", + "darling_macro 0.20.10", ] [[package]] @@ -2755,16 +2752,16 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2780,13 +2777,13 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ - "darling_core 0.20.11", + "darling_core 0.20.10", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2804,15 +2801,15 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.9.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "der" -version = "0.7.10" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" dependencies = [ "const-oid", "pem-rfc7468", @@ -2828,15 +2825,6 @@ dependencies = [ "powerfmt", ] -[[package]] -name = "deranged" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" -dependencies = [ - "powerfmt", -] - [[package]] name = "derivation-path" version = "0.2.0" @@ -2862,7 +2850,7 @@ checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2901,10 +2889,10 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling 0.20.11", + "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2924,18 +2912,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core 0.20.2", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "derive_more" -version = "0.99.20" +version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -2964,7 +2952,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "unicode-xid", ] @@ -2976,7 +2964,7 @@ checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "unicode-xid", ] @@ -3092,7 +3080,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3116,7 +3104,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.101", + "syn 2.0.95", "termcolor", "toml", "walkdir", @@ -3136,9 +3124,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] name = "ecdsa" @@ -3174,7 +3162,7 @@ checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" dependencies = [ "curve25519-dalek-ng", "hex", - "rand_core 0.6.4", + "rand_core", "sha2 0.9.9", "zeroize", ] @@ -3187,9 +3175,9 @@ checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek", "ed25519", - "rand_core 0.6.4", + "rand_core", "serde", - "sha2 0.10.9", + "sha2 0.10.8", "subtle", "zeroize", ] @@ -3203,7 +3191,7 @@ dependencies = [ "derivation-path", "ed25519-dalek", "hmac", - "sha2 0.10.9", + "sha2 0.10.8", ] [[package]] @@ -3216,16 +3204,16 @@ dependencies = [ "ed25519", "hashbrown 0.14.5", "hex", - "rand_core 0.6.4", - "sha2 0.10.9", + "rand_core", + "sha2 0.10.8", "zeroize", ] [[package]] name = "either" -version = "1.15.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" [[package]] name = "elliptic-curve" @@ -3241,7 +3229,7 @@ dependencies = [ "group", "pem-rfc7468", "pkcs8", - "rand_core 0.6.4", + "rand_core", "sec1", "serdect", "subtle", @@ -3271,7 +3259,7 @@ checksum = "6d3e2610493c0a1fc3bf33fb420650c6ebf7990c55e3d5e71a57bee374486824" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3299,28 +3287,28 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.8" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" +checksum = "dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0" dependencies = [ "anstream", "anstyle", "env_filter", - "jiff", + "humantime", "log", ] [[package]] name = "equivalent" -version = "1.0.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.11" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", "windows-sys 0.59.0", @@ -3339,9 +3327,9 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.4" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" +checksum = "3c3e4e0dd3673c1139bf041f3008816d9cf2946bbfac2945c09e523b8d7b05b2" dependencies = [ "event-listener", "pin-project-lite", @@ -3376,7 +3364,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3397,11 +3385,11 @@ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "ff" -version = "0.13.1" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -3448,9 +3436,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.1.1" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" +checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" dependencies = [ "crc32fast", "miniz_oxide", @@ -3523,7 +3511,7 @@ dependencies = [ "proc-macro2", "quote", "sp-crypto-hashing", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3536,7 +3524,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3547,7 +3535,7 @@ checksum = "ed971c6435503a099bdac99fe4c5bea08981709e5b5a0a8535a1856f48561191" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3636,7 +3624,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -3701,29 +3689,17 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] -[[package]] -name = "getrandom" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" -dependencies = [ - "cfg-if", - "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", -] - [[package]] name = "gimli" version = "0.31.1" @@ -3732,9 +3708,9 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "globset" -version = "0.4.16" +version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" +checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19" dependencies = [ "aho-corasick", "bstr", @@ -3750,7 +3726,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -3766,7 +3742,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.9.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -3775,17 +3751,17 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.10" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5" +checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" dependencies = [ "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "http 1.3.1", - "indexmap 2.9.0", + "http 1.2.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -3825,9 +3801,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "hashlink" @@ -3856,7 +3832,7 @@ dependencies = [ "base64 0.21.7", "bytes", "headers-core", - "http 1.3.1", + "http 1.2.0", "httpdate", "mime", "sha1", @@ -3868,7 +3844,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4" dependencies = [ - "http 1.3.1", + "http 1.2.0", ] [[package]] @@ -3885,9 +3861,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.5.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f154ce46856750ed433c8649605bf7ed2de3bc35fd9d2a9f30cddd873c80cb08" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" [[package]] name = "hex" @@ -3953,9 +3929,9 @@ dependencies = [ [[package]] name = "http" -version = "1.3.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -3980,27 +3956,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.3.1", + "http 1.2.0", ] [[package]] name = "http-body-util" -version = "0.1.3" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", - "futures-core", - "http 1.3.1", + "futures-util", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] [[package]] name = "httparse" -version = "1.10.1" +version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" +checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" [[package]] name = "httpdate" @@ -4010,9 +3986,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "humantime" -version = "2.2.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "humantime-serde" @@ -4050,15 +4026,15 @@ dependencies = [ [[package]] name = "hyper" -version = "1.6.0" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.7", + "http 1.2.0", "http-body 1.0.1", "httparse", "httpdate", @@ -4071,21 +4047,21 @@ dependencies = [ [[package]] name = "hyper-http-proxy" -version = "1.1.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ad4b0a1e37510028bc4ba81d0e38d239c39671b0f0ce9e02dfa93a8133f7c08" +checksum = "5d06dbdfbacf34d996c6fb540a71a684a7aae9056c71951163af8a8a4c07b9a4" dependencies = [ "bytes", "futures-util", "headers", - "http 1.3.1", - "hyper 1.6.0", + "http 1.2.0", + "hyper 1.5.2", "hyper-rustls 0.27.5", "hyper-util", "pin-project-lite", "rustls-native-certs 0.7.3", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.1", "tower-service", ] @@ -4110,15 +4086,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ "futures-util", - "http 1.3.1", - "hyper 1.6.0", + "http 1.2.0", + "hyper 1.5.2", "hyper-util", "log", - "rustls 0.23.27", + "rustls 0.23.20", "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.1", "tower-service", ] @@ -4128,7 +4104,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.6.0", + "hyper 1.5.2", "hyper-util", "pin-project-lite", "tokio", @@ -4143,7 +4119,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.6.0", + "hyper 1.5.2", "hyper-util", "native-tls", "tokio", @@ -4153,17 +4129,16 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.11" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.3.1", + "http 1.2.0", "http-body 1.0.1", - "hyper 1.6.0", - "libc", + "hyper 1.5.2", "pin-project-lite", "socket2", "tokio", @@ -4173,17 +4148,16 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", - "log", "wasm-bindgen", - "windows-core 0.61.0", + "windows-core 0.52.0", ] [[package]] @@ -4204,7 +4178,7 @@ dependencies = [ "async-trait", "flex-error", "futures", - "http 1.3.1", + "http 1.2.0", "ibc-proto 0.51.1", "ibc-relayer", "ibc-relayer-types", @@ -4212,7 +4186,7 @@ dependencies = [ "reqwest 0.11.27", "serde", "serde_json", - "tendermint-rpc 0.40.4", + "tendermint-rpc 0.40.1", "tokio", "tracing", ] @@ -4227,7 +4201,7 @@ dependencies = [ "bytes", "flex-error", "ics23", - "prost 0.13.5", + "prost 0.13.4", "subtle-encoding", "tendermint-proto 0.38.1", ] @@ -4244,10 +4218,10 @@ dependencies = [ "flex-error", "ics23", "informalsystems-pbjson", - "prost 0.13.5", + "prost 0.13.4", "serde", "subtle-encoding", - "tendermint-proto 0.40.4", + "tendermint-proto 0.40.1", "tonic", ] @@ -4275,7 +4249,7 @@ dependencies = [ "generic-array", "hdpath", "hex", - "http 1.3.1", + "http 1.2.0", "humantime", "humantime-serde", "ibc-proto 0.51.1", @@ -4286,7 +4260,7 @@ dependencies = [ "num-bigint", "num-rational", "once_cell", - "prost 0.13.5", + "prost 0.13.4", "regex", "reqwest 0.11.27", "retry", @@ -4296,16 +4270,16 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "signature", "strum", "subtle-encoding", - "tendermint 0.40.4", + "tendermint 0.40.1", "tendermint-light-client", "tendermint-light-client-detector", "tendermint-light-client-verifier", - "tendermint-proto 0.40.4", - "tendermint-rpc 0.40.4", + "tendermint-proto 0.40.1", + "tendermint-rpc 0.40.1", "thiserror 1.0.69", "tiny-bip39", "tiny-keccak", @@ -4325,22 +4299,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c79cde1a2f28f699d5a93688881c083b1b612a867304f2c8ab466ec9fcce47c" dependencies = [ "bytes", - "derive_more 0.99.20", + "derive_more 0.99.18", "flex-error", "ibc-proto 0.51.1", "ics23", "itertools 0.13.0", "num-rational", "primitive-types", - "prost 0.13.5", + "prost 0.13.4", "regex", "serde", "serde_derive", "serde_json", "subtle-encoding", - "tendermint 0.40.4", + "tendermint 0.40.1", "tendermint-light-client-verifier", - "tendermint-proto 0.40.4", + "tendermint-proto 0.40.1", "time", "tracing", "uint", @@ -4362,7 +4336,7 @@ dependencies = [ "prometheus", "serde", "serde_json", - "tendermint 0.40.4", + "tendermint 0.40.1", "tokio", "tracing", ] @@ -4375,7 +4349,7 @@ dependencies = [ "enumorph", "num-traits", "sha3", - "thiserror 2.0.12", + "thiserror 2.0.10", "unionlabs", "voyager-primitives", ] @@ -4392,31 +4366,30 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost 0.13.5", + "prost 0.13.4", "ripemd", "serde", - "sha2 0.10.9", + "sha2 0.10.8", "sha3", ] [[package]] name = "icu_collections" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" dependencies = [ "displaydoc", - "potential_utf", "yoke", "zerofrom", "zerovec", ] [[package]] -name = "icu_locale_core" -version = "2.0.0" +name = "icu_locid" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" dependencies = [ "displaydoc", "litemap", @@ -4425,11 +4398,31 @@ dependencies = [ "zerovec", ] +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" dependencies = [ "displaydoc", "icu_collections", @@ -4437,54 +4430,67 @@ dependencies = [ "icu_properties", "icu_provider", "smallvec", + "utf16_iter", + "utf8_iter", + "write16", "zerovec", ] [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" [[package]] name = "icu_properties" -version = "2.0.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2549ca8c7241c82f59c80ba2a6f415d931c5b58d24fb8412caa1a1f02c49139a" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" dependencies = [ "displaydoc", "icu_collections", - "icu_locale_core", + "icu_locid_transform", "icu_properties_data", "icu_provider", - "potential_utf", - "zerotrie", + "tinystr", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8197e866e47b68f8f7d95249e172903bec06004b18b2937f1095d40a0c57de04" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" [[package]] name = "icu_provider" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" dependencies = [ "displaydoc", - "icu_locale_core", + "icu_locid", + "icu_provider_macros", "stable_deref_trait", "tinystr", "writeable", "yoke", "zerofrom", - "zerotrie", "zerovec", ] +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "ident_case" version = "1.0.1" @@ -4504,9 +4510,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ "icu_normalizer", "icu_properties", @@ -4548,12 +4554,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.9.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.15.2", ] [[package]] @@ -4568,11 +4574,12 @@ dependencies = [ [[package]] name = "insta" -version = "1.43.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "154934ea70c58054b556dd430b99a98c2a7ff5309ac9891597e339b5c28f4371" +checksum = "6513e4067e16e69ed1db5ab56048ed65db32d10ba5fc1217f5393f8f17d8b5a5" dependencies = [ "console", + "linked-hash-map", "once_cell", "serde", "similar", @@ -4589,19 +4596,19 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.11.0" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" [[package]] name = "is-terminal" -version = "0.4.16" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -4628,15 +4635,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.13.0" @@ -4646,50 +4644,17 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" -dependencies = [ - "either", -] - [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" - -[[package]] -name = "jiff" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f02000660d30638906021176af16b17498bd0d12813dbfe7b276d8bc7f3c0806" -dependencies = [ - "jiff-static", - "log", - "portable-atomic", - "portable-atomic-util", - "serde", -] - -[[package]] -name = "jiff-static" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c30758ddd7188629c6713fc45d1188af4f44c90582311d0c8d8c9907f60c48" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" dependencies = [ "once_cell", "wasm-bindgen", @@ -4742,7 +4707,7 @@ dependencies = [ "cfg-if", "ecdsa", "elliptic-curve", - "sha2 0.10.9", + "sha2 0.10.8", "signature", ] @@ -4793,10 +4758,10 @@ dependencies = [ "either", "futures", "home", - "http 1.3.1", + "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.5.2", "hyper-http-proxy", "hyper-rustls 0.27.5", "hyper-timeout", @@ -4805,8 +4770,8 @@ dependencies = [ "k8s-openapi", "kube-core", "pem", - "rand 0.8.5", - "rustls 0.23.27", + "rand", + "rustls 0.23.20", "rustls-pemfile 2.2.0", "secrecy", "serde", @@ -4829,7 +4794,7 @@ checksum = "cce373a74d787d439063cdefab0f3672860bd7bac01a38e39019177e764a0fe6" dependencies = [ "chrono", "form_urlencoded", - "http 1.3.1", + "http 1.2.0", "json-patch", "k8s-openapi", "schemars", @@ -4844,11 +4809,11 @@ version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04a26c9844791e127329be5dce9298b03f9e2ff5939076d5438c92dea5eb78f2" dependencies = [ - "darling 0.20.11", + "darling 0.20.10", "proc-macro2", "quote", "serde_json", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -4890,9 +4855,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.172" +version = "0.2.169" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" [[package]] name = "libc-print" @@ -4905,9 +4870,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.15" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" [[package]] name = "libredox" @@ -4915,21 +4880,27 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "libc", ] +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" -version = "0.8.0" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" [[package]] name = "lock_api" @@ -4943,9 +4914,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" dependencies = [ "serde", ] @@ -4973,7 +4944,7 @@ dependencies = [ "log-mdc", "once_cell", "parking_lot", - "rand 0.8.5", + "rand", "serde", "serde-value", "serde_json", @@ -4997,17 +4968,6 @@ dependencies = [ "tracing-subscriber", ] -[[package]] -name = "macro-string" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - [[package]] name = "macro_magic" version = "0.5.1" @@ -5017,7 +4977,7 @@ dependencies = [ "macro_magic_core", "macro_magic_macros", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5031,7 +4991,7 @@ dependencies = [ "macro_magic_core_macros", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5042,7 +5002,7 @@ checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5053,7 +5013,7 @@ checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" dependencies = [ "macro_magic_core", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5063,7 +5023,7 @@ source = "git+https://github.com/AbstractSDK/union?branch=adair%2Fibc-query-resp dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5101,9 +5061,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "miniz_oxide" -version = "0.8.8" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" +checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" dependencies = [ "adler2", ] @@ -5115,7 +5075,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "windows-sys 0.52.0", ] @@ -5146,9 +5106,9 @@ checksum = "1d87ecb2933e8aeadb3e3a02b828fed80a7528047e68b4f424523a0981a3a084" [[package]] name = "native-tls" -version = "0.2.14" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" dependencies = [ "libc", "log", @@ -5208,7 +5168,7 @@ dependencies = [ "num-integer", "num-iter", "num-traits", - "rand 0.8.5", + "rand", "smallvec", "zeroize", ] @@ -5281,9 +5241,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.21.3" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "opaque-debug" @@ -5293,11 +5253,11 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.72" +version = "0.10.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "cfg-if", "foreign-types", "libc", @@ -5314,20 +5274,20 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "openssl-probe" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.108" +version = "0.9.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847" +checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" dependencies = [ "cc", "libc", @@ -5388,7 +5348,7 @@ dependencies = [ "once_cell", "opentelemetry_api", "percent-encoding", - "rand 0.8.5", + "rand", "thiserror 1.0.69", ] @@ -5423,7 +5383,7 @@ dependencies = [ "elliptic-curve", "primeorder", "serdect", - "sha2 0.10.9", + "sha2 0.10.8", ] [[package]] @@ -5516,9 +5476,9 @@ dependencies = [ [[package]] name = "peg" -version = "0.8.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9928cfca101b36ec5163e70049ee5368a8a1c3c6efc9ca9c5f9cc2f816152477" +checksum = "295283b02df346d1ef66052a757869b2876ac29a6bb0ac3f5f7cd44aebe40e8f" dependencies = [ "peg-macros", "peg-runtime", @@ -5526,9 +5486,9 @@ dependencies = [ [[package]] name = "peg-macros" -version = "0.8.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6298ab04c202fa5b5d52ba03269fb7b74550b150323038878fe6c372d8280f71" +checksum = "bdad6a1d9cf116a059582ce415d5f5566aabcd4008646779dab7fdc2a9a9d426" dependencies = [ "peg-runtime", "proc-macro2", @@ -5537,15 +5497,15 @@ dependencies = [ [[package]] name = "peg-runtime" -version = "0.8.5" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "132dca9b868d927b35b5dd728167b2dee150eb1ad686008fc71ccb298b776fca" +checksum = "e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a" [[package]] name = "pem" -version = "3.0.5" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38af38e8470ac9dee3ce1bae1af9c1671fffc44ddfd8bd1d0a3445bf349a8ef3" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" dependencies = [ "base64 0.22.1", "serde", @@ -5568,20 +5528,20 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.8.0" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" +checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.12", + "thiserror 2.0.10", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.8.0" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5" +checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e" dependencies = [ "pest", "pest_generator", @@ -5589,26 +5549,26 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.8.0" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db7d01726be8ab66ab32f9df467ae8b1148906685bbe75c82d1e65d7f5b3f841" +checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "pest_meta" -version = "2.8.0" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9f832470494906d1fca5329f8ab5791cc60beb230c74815dff541cbd2b5ca0" +checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea" dependencies = [ "once_cell", "pest", - "sha2 0.10.9", + "sha2 0.10.8", ] [[package]] @@ -5618,27 +5578,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.9.0", + "indexmap 2.7.0", ] [[package]] name = "pin-project" -version = "1.1.10" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.10" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5676,9 +5636,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.32" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "polytone-evm" @@ -5696,27 +5656,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" - -[[package]] -name = "portable-atomic-util" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" -dependencies = [ - "portable-atomic", -] - -[[package]] -name = "potential_utf" -version = "0.1.2" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" -dependencies = [ - "zerovec", -] +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" [[package]] name = "powerfmt" @@ -5726,21 +5668,21 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.21" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ "zerocopy", ] [[package]] name = "prettyplease" -version = "0.2.32" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" +checksum = "483f8c21f64f3ea09fe0f30f5d48c3e8eefe5dac9129f0075f76593b4c1da705" dependencies = [ "proc-macro2", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5767,9 +5709,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ "toml_edit", ] @@ -5793,7 +5735,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5804,14 +5746,14 @@ checksum = "75eea531cfcd120e0851a3f8aed42c4841f78c889eefafd96339c72677ae42c3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -5833,13 +5775,13 @@ dependencies = [ [[package]] name = "proptest" -version = "1.6.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "num-traits", - "rand 0.8.5", + "rand", "rand_chacha", "rand_xorshift", "unarray", @@ -5857,12 +5799,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.13.5" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec" dependencies = [ "bytes", - "prost-derive 0.13.5", + "prost-derive 0.13.4", ] [[package]] @@ -5872,8 +5814,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", - "heck 0.5.0", - "itertools 0.12.1", + "heck 0.4.1", + "itertools 0.10.5", "log", "multimap", "once_cell", @@ -5882,7 +5824,7 @@ dependencies = [ "prost 0.12.6", "prost-types 0.12.6", "regex", - "syn 2.0.101", + "syn 2.0.95", "tempfile", ] @@ -5893,23 +5835,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools 0.10.5", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "prost-derive" -version = "0.13.5" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3" dependencies = [ "anyhow", - "itertools 0.14.0", + "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -5923,11 +5865,11 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.13.5" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" +checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc" dependencies = [ - "prost 0.13.5", + "prost 0.13.4", ] [[package]] @@ -5950,19 +5892,13 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.40" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ "proc-macro2", ] -[[package]] -name = "r-efi" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" - [[package]] name = "radium" version = "0.7.0" @@ -5977,16 +5913,7 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", "rand_chacha", - "rand_core 0.6.4", -] - -[[package]] -name = "rand" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" -dependencies = [ - "rand_core 0.9.3", + "rand_core", ] [[package]] @@ -5996,7 +5923,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -6005,22 +5932,16 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom", ] -[[package]] -name = "rand_core" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" - [[package]] name = "rand_xorshift" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -6045,11 +5966,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.12" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" +checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", ] [[package]] @@ -6058,7 +5979,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom 0.2.16", + "getrandom", "libredox", "thiserror 1.0.69", ] @@ -6150,20 +6071,20 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.15" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" +checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.7", + "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.5.2", "hyper-rustls 0.27.5", "hyper-tls", "hyper-util", @@ -6194,9 +6115,9 @@ dependencies = [ [[package]] name = "retry" -version = "2.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e211f878258887b3e65dd3c8ff9f530fe109f441a117ee0cdc27f341355032" +checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" [[package]] name = "rfc6979" @@ -6210,14 +6131,15 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.14" +version = "0.17.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.16", + "getrandom", "libc", + "spin", "untrusted", "windows-sys 0.52.0", ] @@ -6265,9 +6187,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.8" +version = "0.9.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b" +checksum = "47c75d7c5c6b673e58bf54d8544a9f432e3a925b0e80f7cd3602ab5c50c55519" dependencies = [ "const-oid", "digest 0.10.7", @@ -6276,7 +6198,7 @@ dependencies = [ "num-traits", "pkcs1", "pkcs8", - "rand_core 0.6.4", + "rand_core", "signature", "spki", "subtle", @@ -6311,13 +6233,12 @@ dependencies = [ [[package]] name = "ruint" -version = "1.14.0" +version = "1.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78a46eb779843b2c4f21fac5773e25d6d5b7c8f0922876c91541790d2ca27eef" +checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" dependencies = [ "proptest", - "rand 0.8.5", - "rand 0.9.1", + "rand", "ruint-macro", "serde", "valuable", @@ -6332,9 +6253,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rust-embed" -version = "8.7.1" +version = "8.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60e425e204264b144d4c929d126d0de524b40a961686414bab5040f7465c71be" +checksum = "fa66af4a4fdd5e7ebc276f115e895611a34739a9c1c01028383d612d550953c0" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -6343,25 +6264,25 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "8.7.0" +version = "8.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bf418c9a2e3f6663ca38b8a7134cc2c2167c9d69688860e8961e3faa731702e" +checksum = "6125dbc8867951125eec87294137f4e9c2c96566e61bf72c45095a7c77761478" dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.101", + "syn 2.0.95", "walkdir", ] [[package]] name = "rust-embed-utils" -version = "8.7.0" +version = "8.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d55b95147fe01265d06b3955db798bdaed52e60e2211c41137701b3aba8e21" +checksum = "2e5347777e9aacb56039b0e1f28785929a8a3b709e87482e7442c72e7c12529d" dependencies = [ "globset", - "sha2 0.10.9", + "sha2 0.10.8", "walkdir", ] @@ -6394,11 +6315,11 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.7" +version = "0.38.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", @@ -6433,15 +6354,15 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.27" +version = "0.23.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321" +checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b" dependencies = [ "log", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.103.3", + "rustls-webpki 0.102.8", "subtle", "zeroize", ] @@ -6503,12 +6424,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.12.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" -dependencies = [ - "zeroize", -] +checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" [[package]] name = "rustls-webpki" @@ -6531,28 +6449,17 @@ dependencies = [ "untrusted", ] -[[package]] -name = "rustls-webpki" -version = "0.103.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a72fe2bcf7a6ac6fd7d0b9e5cb68aeb7d4c0a0271730218b3e92d43b4eb435" -dependencies = [ - "ring", - "rustls-pki-types", - "untrusted", -] - [[package]] name = "rustversion" -version = "1.0.20" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "same-file" @@ -6575,9 +6482,9 @@ dependencies = [ [[package]] name = "scc" -version = "2.3.4" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22b2d775fb28f245817589471dd49c5edf64237f4a19d10ce9a92ff4651a27f4" +checksum = "28e1c91382686d21b5ac7959341fcb9780fa7c03773646995a87c950fa7be640" dependencies = [ "sdd", ] @@ -6593,9 +6500,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.22" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" dependencies = [ "dyn-clone", "schemars_derive", @@ -6605,14 +6512,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.22" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -6639,9 +6546,9 @@ dependencies = [ [[package]] name = "sdd" -version = "3.0.8" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "584e070911c7017da6cb2eb0788d09f43d789029b5877d3e5ecc8acf86ceee21" +checksum = "478f121bb72bbf63c52c93011ea1791dca40140dfe13f8336c4c5ac952c33aa9" [[package]] name = "sec1" @@ -6658,15 +6565,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "secp256k1" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" -dependencies = [ - "secp256k1-sys 0.8.1", -] - [[package]] name = "secp256k1" version = "0.28.2" @@ -6674,7 +6572,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" dependencies = [ "bitcoin_hashes 0.13.0", - "rand 0.8.5", + "rand", "secp256k1-sys 0.9.2", "serde", ] @@ -6689,15 +6587,6 @@ dependencies = [ "secp256k1-sys 0.10.1", ] -[[package]] -name = "secp256k1-sys" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" -dependencies = [ - "cc", -] - [[package]] name = "secp256k1-sys" version = "0.9.2" @@ -6732,7 +6621,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -6745,7 +6634,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "core-foundation 0.10.0", "core-foundation-sys", "libc", @@ -6764,18 +6653,18 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.26" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" dependencies = [ "serde", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" dependencies = [ "serde_derive", ] @@ -6823,9 +6712,9 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.17" +version = "0.11.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96" +checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" dependencies = [ "serde", ] @@ -6842,13 +6731,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -6859,14 +6748,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "serde_json" -version = "1.0.140" +version = "1.0.135" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9" dependencies = [ "itoa", "memchr", @@ -6876,9 +6765,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.17" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" dependencies = [ "itoa", "serde", @@ -6886,13 +6775,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.20" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -6922,7 +6811,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.7.0", "itoa", "ryu", "serde", @@ -6961,7 +6850,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -6990,9 +6879,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.9" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -7032,9 +6921,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook-registry" -version = "1.4.5" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" dependencies = [ "libc", ] @@ -7046,14 +6935,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core 0.6.4", + "rand_core", ] [[package]] name = "similar" -version = "2.7.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" +checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" [[package]] name = "slab" @@ -7066,15 +6955,15 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.15.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.9" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -7098,7 +6987,7 @@ dependencies = [ "blake2b_simd", "byteorder", "digest 0.10.7", - "sha2 0.10.9", + "sha2 0.10.8", "sha3", "twox-hash", ] @@ -7138,10 +7027,10 @@ dependencies = [ "lazy_static", "serde", "serde-utils", - "sha2 0.10.9", + "sha2 0.10.8", "smallvec", "ssz-derive", - "thiserror 2.0.12", + "thiserror 2.0.10", "typenum", "unionlabs-primitives", ] @@ -7204,7 +7093,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -7241,9 +7130,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.101" +version = "2.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a" dependencies = [ "proc-macro2", "quote", @@ -7259,7 +7148,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -7279,13 +7168,13 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.13.2" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -7305,7 +7194,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.6.0", "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -7344,12 +7233,13 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.20.0" +version = "3.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" dependencies = [ + "cfg-if", "fastrand", - "getrandom 0.3.3", + "getrandom", "once_cell", "rustix", "windows-sys 0.59.0", @@ -7370,13 +7260,13 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.13.5", + "prost 0.13.4", "ripemd", "serde", "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.9", + "sha2 0.10.8", "signature", "subtle", "subtle-encoding", @@ -7387,9 +7277,9 @@ dependencies = [ [[package]] name = "tendermint" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc997743ecfd4864bbca8170d68d9b2bee24653b034210752c2d883ef4b838b1" +checksum = "d9703e34d940c2a293804752555107f8dbe2b84ec4c6dd5203831235868105d2" dependencies = [ "bytes", "digest 0.10.7", @@ -7400,17 +7290,17 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.13.5", + "prost 0.13.4", "ripemd", "serde", "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.9", + "sha2 0.10.8", "signature", "subtle", "subtle-encoding", - "tendermint-proto 0.40.4", + "tendermint-proto 0.40.1", "time", "zeroize", ] @@ -7431,27 +7321,27 @@ dependencies = [ [[package]] name = "tendermint-config" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "069d1791f9b02a596abcd26eb72003b2e9906c6169a60fa82ffc080dd3a43fda" +checksum = "89cc3ea9a39b7ee34eefcff771cc067ecaa0c988c1c5ac08defd878471a06f76" dependencies = [ "flex-error", "serde", "serde_json", - "tendermint 0.40.4", + "tendermint 0.40.1", "toml", "url", ] [[package]] name = "tendermint-light-client" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ffc879bafe2adae632b230e9ffc1ac0abef88230e6a7529ca964b150bbf65b" +checksum = "a803ff14b11827772f696ba3a1873a5f24598121872c924a764011fc58fc22a0" dependencies = [ "contracts", "crossbeam-channel", - "derive_more 0.99.20", + "derive_more 0.99.18", "flex-error", "futures", "regex", @@ -7460,9 +7350,9 @@ dependencies = [ "serde_derive", "serde_json", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tendermint 0.40.4", + "tendermint 0.40.1", "tendermint-light-client-verifier", - "tendermint-rpc 0.40.4", + "tendermint-rpc 0.40.1", "time", "tokio", "tracing", @@ -7470,12 +7360,12 @@ dependencies = [ [[package]] name = "tendermint-light-client-detector" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c4d1b0fbc3d40a4b3f331b10a5721c24c6d0fae27f906857c6f5cc91494f6ac" +checksum = "2f8c799eb7132aa2aebac82dcb3c3858981eca06eb4aa8944e0853d5ae682354" dependencies = [ "crossbeam-channel", - "derive_more 0.99.20", + "derive_more 0.99.18", "flex-error", "futures", "serde", @@ -7483,24 +7373,24 @@ dependencies = [ "serde_derive", "serde_json", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tendermint 0.40.4", + "tendermint 0.40.1", "tendermint-light-client", - "tendermint-proto 0.40.4", - "tendermint-rpc 0.40.4", + "tendermint-proto 0.40.1", + "tendermint-rpc 0.40.1", "time", "tracing", ] [[package]] name = "tendermint-light-client-verifier" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548421907264a3a580634d71459a6ceda0dc569f24c9675adfab17465edf8511" +checksum = "f0cda4a449fc70985a95f892a67286f13afa4e048d90b8d04a2bf6341e88d1c2" dependencies = [ - "derive_more 0.99.20", + "derive_more 0.99.18", "flex-error", "serde", - "tendermint 0.40.4", + "tendermint 0.40.1", "time", ] @@ -7512,8 +7402,8 @@ checksum = "8ed14abe3b0502a3afe21ca74ca5cdd6c7e8d326d982c26f98a394445eb31d6e" dependencies = [ "bytes", "flex-error", - "prost 0.13.5", - "prost-types 0.13.5", + "prost 0.13.4", + "prost-types 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -7528,7 +7418,7 @@ checksum = "bf3abf34ecf33125621519e9952688e7a59a98232d51538037ba21fbe526a802" dependencies = [ "bytes", "flex-error", - "prost 0.13.5", + "prost 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -7537,13 +7427,13 @@ dependencies = [ [[package]] name = "tendermint-proto" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2c40e13d39ca19082d8a7ed22de7595979350319833698f8b1080f29620a094" +checksum = "9ae9e1705aa0fa5ecb2c6aa7fb78c2313c4a31158ea5f02048bf318f849352eb" dependencies = [ "bytes", "flex-error", - "prost 0.13.5", + "prost 0.13.4", "serde", "serde_bytes", "subtle-encoding", @@ -7560,10 +7450,10 @@ dependencies = [ "bytes", "flex-error", "futures", - "getrandom 0.2.16", + "getrandom", "peg", "pin-project", - "rand 0.8.5", + "rand", "reqwest 0.11.27", "semver", "serde", @@ -7585,19 +7475,19 @@ dependencies = [ [[package]] name = "tendermint-rpc" -version = "0.40.4" +version = "0.40.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35e0569a4b4cc42ff00df5a665be2858a39ff79df4790b176f1cd0e169bc0fc2" +checksum = "835a52aa504c63ec05519e31348d3f4ba2fe79493c588e2cad5323d5e81b161a" dependencies = [ "async-trait", "async-tungstenite", "bytes", "flex-error", "futures", - "getrandom 0.2.16", + "getrandom", "peg", "pin-project", - "rand 0.8.5", + "rand", "reqwest 0.11.27", "semver", "serde", @@ -7605,9 +7495,9 @@ dependencies = [ "serde_json", "subtle", "subtle-encoding", - "tendermint 0.40.4", - "tendermint-config 0.40.4", - "tendermint-proto 0.40.4", + "tendermint 0.40.1", + "tendermint-config 0.40.1", + "tendermint-proto 0.40.1", "thiserror 1.0.69", "time", "tokio", @@ -7637,11 +7527,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "a3ac7f54ca534db81081ef1c1e7f6ea8a3ef428d2fc069097c079443d24124d3" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.10", ] [[package]] @@ -7652,18 +7542,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "9e9465d30713b56a37ede7185763c3492a91be2f5fa68d958c44e41ab9248beb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -7688,11 +7578,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ - "deranged 0.4.0", + "deranged", "num-conv", "powerfmt", "serde", @@ -7702,15 +7592,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -7726,9 +7616,9 @@ dependencies = [ "hmac", "once_cell", "pbkdf2 0.11.0", - "rand 0.8.5", + "rand", "rustc-hash", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", "unicode-normalization", "wasm-bindgen", @@ -7746,9 +7636,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.1" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" dependencies = [ "displaydoc", "zerovec", @@ -7756,9 +7646,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" dependencies = [ "tinyvec_macros", ] @@ -7771,9 +7661,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.45.0" +version = "1.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165" +checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" dependencies = [ "backtrace", "bytes", @@ -7795,7 +7685,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -7831,11 +7721,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.2" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ - "rustls 0.23.27", + "rustls 0.23.20", "tokio", ] @@ -7864,9 +7754,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.15" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -7878,9 +7768,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.22" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ "serde", "serde_spanned", @@ -7890,33 +7780,26 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.22.26" +version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.7.0", "serde", "serde_spanned", "toml_datetime", - "toml_write", "winnow", ] -[[package]] -name = "toml_write" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" - [[package]] name = "tonic" version = "0.12.3" @@ -7928,21 +7811,21 @@ dependencies = [ "axum 0.7.9", "base64 0.22.1", "bytes", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.7", + "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.5.2", "hyper-timeout", "hyper-util", "percent-encoding", "pin-project", - "prost 0.13.5", + "prost 0.13.4", "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", "socket2", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.1", "tokio-stream", "tower 0.4.13", "tower-layer", @@ -7961,7 +7844,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand 0.8.5", + "rand", "slab", "tokio", "tokio-util", @@ -7992,9 +7875,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" dependencies = [ "base64 0.21.7", - "bitflags 2.9.0", + "bitflags 2.6.0", "bytes", - "http 1.3.1", + "http 1.2.0", "http-body 1.0.1", "http-body-util", "mime", @@ -8036,7 +7919,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -8106,10 +7989,10 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.3.1", + "http 1.2.0", "httparse", "log", - "rand 0.8.5", + "rand", "rustls 0.22.4", "rustls-pki-types", "sha1", @@ -8127,10 +8010,10 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.3.1", + "http 1.2.0", "httparse", "log", - "rand 0.8.5", + "rand", "sha1", "thiserror 1.0.69", "utf-8", @@ -8158,9 +8041,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.18.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" @@ -8194,9 +8077,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-normalization" @@ -8235,7 +8118,7 @@ dependencies = [ "bip32", "bs58 0.4.0", "chrono", - "derive_more 0.99.20", + "derive_more 0.99.18", "either", "frame-support-procedural", "generic-array", @@ -8252,13 +8135,13 @@ dependencies = [ "serde-utils", "serde_bytes", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "sha3", "solidity-slot", "ssz", "static_assertions 1.1.0 (git+https://github.com/nvzqz/static-assertions)", "subtle-encoding", - "thiserror 2.0.12", + "thiserror 2.0.10", "typenum", "unionlabs-primitives", "wasmparser", @@ -8275,7 +8158,7 @@ dependencies = [ "primitive-types", "serde", "serde_bytes", - "thiserror 2.0.12", + "thiserror 2.0.10", "typenum", "uint", ] @@ -8324,6 +8207,12 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + [[package]] name = "utf8-width" version = "0.1.7" @@ -8344,18 +8233,18 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.16.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" dependencies = [ - "getrandom 0.3.3", + "getrandom", ] [[package]] name = "valuable" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "vcpkg" @@ -8405,46 +8294,36 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" -[[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" -dependencies = [ - "wit-bindgen-rt", -] - [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" dependencies = [ "cfg-if", "once_cell", - "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" dependencies = [ "cfg-if", "js-sys", @@ -8455,9 +8334,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -8465,25 +8344,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" -dependencies = [ - "unicode-ident", -] +checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" [[package]] name = "wasmparser" @@ -8491,15 +8367,15 @@ version = "0.113.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "286049849b5a5bd09a8773171be96824afabffc7cc3df6caaf33a38db6cd07ae" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.7.0", "semver", ] [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" dependencies = [ "js-sys", "wasm-bindgen", @@ -8548,28 +8424,24 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.58.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-implement 0.58.0", - "windows-interface 0.58.0", - "windows-result 0.2.0", - "windows-strings 0.1.0", "windows-targets 0.52.6", ] [[package]] name = "windows-core" -version = "0.61.0" +version = "0.58.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" dependencies = [ - "windows-implement 0.60.0", - "windows-interface 0.59.1", - "windows-link", - "windows-result 0.3.2", - "windows-strings 0.4.0", + "windows-implement", + "windows-interface", + "windows-result", + "windows-strings", + "windows-targets 0.52.6", ] [[package]] @@ -8580,18 +8452,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", -] - -[[package]] -name = "windows-implement" -version = "0.60.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] @@ -8602,35 +8463,18 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", -] - -[[package]] -name = "windows-interface" -version = "0.59.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "syn 2.0.95", ] -[[package]] -name = "windows-link" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" - [[package]] name = "windows-registry" -version = "0.4.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" dependencies = [ - "windows-result 0.3.2", - "windows-strings 0.3.1", - "windows-targets 0.53.0", + "windows-result", + "windows-strings", + "windows-targets 0.52.6", ] [[package]] @@ -8642,43 +8486,16 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-result" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" -dependencies = [ - "windows-link", -] - [[package]] name = "windows-strings" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" dependencies = [ - "windows-result 0.2.0", + "windows-result", "windows-targets 0.52.6", ] -[[package]] -name = "windows-strings" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-strings" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" -dependencies = [ - "windows-link", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -8730,29 +8547,13 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", + "windows_i686_gnullvm", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] -[[package]] -name = "windows-targets" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" -dependencies = [ - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -8765,12 +8566,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -8783,12 +8578,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -8801,24 +8590,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -8831,12 +8608,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_i686_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -8849,12 +8620,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -8867,12 +8632,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -8885,17 +8644,11 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" - [[package]] name = "winnow" -version = "0.7.10" +version = "0.6.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" +checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980" dependencies = [ "memchr", ] @@ -8910,15 +8663,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "wit-bindgen-rt" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.0", -] - [[package]] name = "workspace-hack" version = "0.1.0" @@ -8931,7 +8675,7 @@ dependencies = [ "bip32", "bitcoin-internals 0.2.0", "bitcoin_hashes 0.13.0", - "bitflags 2.9.0", + "bitflags 2.6.0", "bs58 0.5.1", "byteorder", "bytes", @@ -8947,7 +8691,7 @@ dependencies = [ "cw1-whitelist", "cw20-base", "der", - "deranged 0.3.11", + "deranged", "digest 0.10.7", "ecdsa", "ed25519", @@ -8965,7 +8709,7 @@ dependencies = [ "futures-task", "futures-util", "generic-array", - "getrandom 0.2.16", + "getrandom", "group", "hex-conservative 0.1.2", "hyper 0.14.32", @@ -8985,27 +8729,27 @@ dependencies = [ "parking_lot", "ppv-lite86", "primeorder", - "prost 0.13.5", - "rand 0.8.5", + "prost 0.13.4", + "rand", "rand_chacha", - "rand_core 0.6.4", + "rand_core", "regex", "regex-automata 0.4.9", "regex-syntax 0.8.5", "reqwest 0.11.27", - "reqwest 0.12.15", + "reqwest 0.12.12", "ripemd", "sec1", "semver", "serde", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "signature", "smallvec", "spki", "subtle-encoding", "syn 1.0.109", - "syn 2.0.101", + "syn 2.0.95", "tendermint-proto 0.39.1", "time", "tokio-stream", @@ -9019,11 +8763,17 @@ dependencies = [ "zeroize", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + [[package]] name = "writeable" -version = "0.6.1" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] name = "wyz" @@ -9046,7 +8796,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "cw2", - "getrandom 0.2.16", + "getrandom", "hex", "p256", "ripemd", @@ -9054,7 +8804,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "sha2 0.10.9", + "sha2 0.10.8", "thiserror 1.0.69", "tiny-keccak", "xion-cosmos-sdk-proto", @@ -9067,9 +8817,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5950da92cdb6e0fdebe4513a1defd73b6c4af7d1fa72ae5f14780451c535bc2" dependencies = [ "informalsystems-pbjson", - "prost 0.13.5", + "prost 0.13.4", "serde", - "tendermint-proto 0.40.4", + "tendermint-proto 0.40.1", ] [[package]] @@ -9085,9 +8835,9 @@ dependencies = [ [[package]] name = "yoke" -version = "0.8.0" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" dependencies = [ "serde", "stable_deref_trait", @@ -9097,54 +8847,55 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.25" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ + "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.25" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", "synstructure", ] @@ -9165,25 +8916,14 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", -] - -[[package]] -name = "zerotrie" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", + "syn 2.0.95", ] [[package]] name = "zerovec" -version = "0.11.2" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" dependencies = [ "yoke", "zerofrom", @@ -9192,11 +8932,11 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.95", ] diff --git a/framework/artifacts/abstract_ica_client.wasm b/framework/artifacts/abstract_ica_client.wasm index 0e72e8412f55e9b04d99b3e01d311a47c8e72ab2..cbd760b7d9a356645d718f6077b12b856fc07067 100644 GIT binary patch delta 128055 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%0D?7jdL(t)jiN zf_n~m7j`q}ao&ZEdztAF}cp$Z;c&l0Uo{eETWdWuim!VPWZ%Y!vDT4 zRP$$h^;Z3Sf!V%hRt}ZXM4rYmOLZM&_Vld$kO04yt?nIUj&dvg_`h7~hHZgLTd9jj zm??EX;x1X({ptJ<pi=-AHgcud87r&3KyO8%E->4^5uQqMbO5DMQU$ z%{|#_-%#^{+75w%Audby;Q#+E)%8NNPqLPYNIL0aVm4#XeS+rzKFRUDTB!@onRuYC z{xI_mbM9Me_b{{jg^nBr`H3sy{Ct*%@%>Vxx)l~?2my*&^&l?k`Y~Ol2~JQ~4mZ1- z6`Rz^RZrR@sUg^08 z@AZ*pTTJ~C46m_Xc}AJ<_(xao{Ch^hS}j}E9&KK2ys7RQZFZz-cww}e=!`X4H6L)T zjnyR=naK{%-CnJ_$c)yE_mC)XXznFWFyI%$4b~-N&5NUcA{?~&gz?%~Ft|8?d_I;B zAl1g1-J=%oqGV>xM~&0Tw~XWDC&rmQqCPF7PZky(*doMN*N4jm8 zS90?u=nr-O-U(*QNVoF&s(6Cg*?;vs(|y8$^i!3<8$Esco7k31%>wlP(M!!y0Y)0P zd}CF$%gmwRK`+4-XSDjx%S>NY9x<=6ndpxTFxaW8>!W6M_19(Qv&1<*ce&XmL$hLj zR?wwbL0mS53e1ja7n!bcT{@dLISu|>FNWT)8TG>KMmP!4XLMU_9tACl;j6+!kwu8k zqQ!rP_YG854DoRy~QRd}>mztnG7;u%VBsxd&fJyXk?rh&jR}_Y=zAh=&}X zuVvH;_kbnQuS^a#4yePk%)v25w9x=E$k%d}KHE%+D4-q3dr)0H8wWPvP3~-SRBR?k zI=h9fvtZZ$VYbPSE^dXSRQ1j>YhmS#$}+q9g|A@p*l_al3CQqTmKlQ#DKl}F{Wc3E za)}bzrcIR$%r+OeCX^&9IFW6(4jyQ@XB^~zAoIl>ERjQMM~*oVI2V`eZ}c~+SFV|R zw#I&*dwOG+&oz7gePch%Gwb7i{;@psePg!TkdH+T$B1|gvxSWF20e$_Vvae`u}$p| z1(sKjYq@%Hj+yO@Yo_XPzj=jGt{%GI>>97_WY}hvU5gU)h*_TE-K#3@H+!C~C%xzD zp0J&2rlL-q!A_M&+NZkB!(s6ib@4oNdq?-U?I4bij!*8HTgMqD^eu>W&woHBdNePi z#0aBpME}b<&I1Q!#S-h{po2xMU1Fzc;CoYMGMV1vtp}SztC*g z_b6>iDMVMWKe@Edzg5vCUvDWd4F23mpDfL!9h$Dm0#54(%mi~~nHur{>|fE8n;w8T z;RiMM0kg5WbDMhk0kes@b(`ArfZ2_bV+-+%VxtOiiadb$u8Q~IGgT8J%Z z?T5;{$Q)*F`A}WC$ZXU!&`KO!8)f1jNZt6l3IzTjE?$zgH17GVcYT1&^7- ztNNDRuS%CgzUugvt)?4JH|WuJHtwCv$4&RNqeIx7$hcSC{g(DtdJg#ChQfDj7YRQ6 zuaFztbHR^T4l;1=_J0)u-~3uzB%cGQCkC^I^*vXuT4Az66SDE%Ei;)>3|Jx?$l{JU z>%pH0j5&F;B~jG2Yeb4#^rSi7xiEHzIX_F^6}$Nbv#H-%Yz2#`T}QU>t7*@hovZ6e zhY6ccE^+H&?ZYO##VT;K6z1-)YOf^J&Yz zGqmL#M$+!!JofK2=%w>PqL$V_JOU-R7dy0xEyM`2K&wS!Lx06_vNZ9_CryG#De`eI%lfA z`^_=xpCTWlc_B_jTdC+nkkYD<$S&sGDq#riUC*O4KgJRA!aI!^ zvpf*V?nvjT559&t(xnu2zcEwMh~*V#clAXBGp4Z55D(f|cq48S9xXQyM7qW2tK9FPU2!Q~IRs4*KYaL|ISb7gb=bTyF&HG#?6f_qMx=f(C+`$z8|4odz6fn>Z#^GK@EHI zeYRBUR@GAJFKPykZ8$Wz#2%lT*yHel8~I4YPOw^4{A9K~`yJ+@x1Br8Pmt*I@AsOH zf49vPW)5l^?Fc6V(rRbq{lW=n=(TX-)pJN4+$nR8XQnWgTx`KzCIC%)P;4Q8i~;_2^)Z^EsVQgAUrSB#3^I#Vm6b-u22z6fAJ+oFZ<6 zEa%x2k>gMsHjX1|(>qo4tr|B!Rm7<^4Md8$IZH*3G85HL4aA&UuQFU8MxC~D%)`TK zL6T@!MI5~?N%XD~6_+eJblUQ9Y0&H4r4%ApT9T9shGPK9Z;6nOfn)JbjLJ+F4WhPE zX1h9Ws;lm{V5Q!8TcrB5)g&mGBYSegu!>`l>Oor!@i_{Ia6HqF`#A=QHt?t|xl&<) z{Va70w6Ml3wbCbGqVZ3RojEr~W%d+JRi6vPy@fA46R!5Q5e>{kyVM_T#K0>YX+;bl z<}s9pcM~Br{6tkJr76d}OC%dHxE$ofyzRu`mJjGGm3oK-rO3n1?|=(F;KGXCYG!*e z(C5|>1^F@Zlhb8LiRiL9<=VPiJ=Q^7N)nC9X`+dF@*_1TP257^lW8K&%=}!nX(z6w z@RD{&U-LQTZ=w#h6D?z1(Coy{0eI+huGXJM*ZSPb=I#kiqg#7~y3~-BRnnl6@uzLj zY1D|B9Yms8yw~68lW2^2XfHLgof_Lwq;pFqj>O z?}d6`S?Zld)8&hR4CFu;QGbAggdWre5YWchtsD;l2>P>g3NJ0~qe15cdRrh1!2aG{ z#eNbXCwCKd6WlCm?1IPB%-n4F!s*nBj3c^08>=QY!s&U0 z(`~NL`?+e@UDO@oZ*l>Na){@SMoBO!c33mB>UfmWYM!Ve<1ac$qm3{0?K4%-T_jPv zivhPG>pgTHJxT;NpyK$=GQx2?*{YX87YID5!oG2eJ&g={5tOO$gEWQi_X;=~@mT|_ zv1rRDTZQ4JQ#<2AWP@gL3b{+7i}l+4LbeVw?DXj=;fPG0o)Tg9!N-+DkvGB)pWzF? z6>ktr+e9hCoN$UmktQa}+{$kp3Hz22$Q_RSF*9^-v_j`rFCMY#!(CHm=H{@0{F1js z5=pjO4@4PZXX6d|Yfu@XHpJxiWBx&jR3bRvx2+}Qs3JfveY`cR{&m7Ps^O~nmc`~f$rxkvWr zIubG93$^UQB&Rl)aYuxwi+K^!zz|YZXh+{7)C%(=075*7d1owJRN!2y1lVkH%NNWu zX6O+Lkx)<`3_6CZxp@(}f+Rhd2IveWma}Pp0955c@eePTfa6CmO0eh3M0f0|0D<#% z3G3${dm3!i-D|WKb+OwuEsrLghIIp2V0E;+=v3`pKH6$y?RQkW z9-@)H&d0<>UD-nnH{Z%qFZK{|w4C1SA+Dm|Ha$gqXUoNFR(yz<+EZLGX!sT<>waXV@+rMhzMLa@?^s6Rf{%11 zpY#rbM|Avjc%@F(k?9)V1L=D2S)Z==o>qMTZ`H?YNFTj7J>5ri>2xTBZ`gZYe8W!7 zHl%Uf5;`ieCO*5bAVZTXFbV^ofe>>&TpL<6zMtaX0VHhL?Yd z=?K=j|$|m--_`ucS}7 zHn3M7+&yxh;D)O;{KrT$W2EpoxCrmx@YKl~R5(|pr@CP?&6!>vDY`c16Mw2FAte%A zk8xWH{KZCSL_|)2OPqp`@{R&c`7BFKA0<-yIECrNJ@{u z`M<9iRm~u)JMS!-v;ozOzBN;DD=>oSfNrgaI{4RUY-RWzF-8odjy^g@BsC7H(d{T@ z2P8n)3i%j{92_HH-U;K)F(TdR1#JAnz};EY3p$x4RsXdwFG{;&rPSkJg<^`vH+9*?AkOjk9hEMD~*u$V2^g|7b7YmbiG*grKbFR zvFMicA?K~;P}vEyzS46_e>64BKSR%$O$4Z>Ijc1 z_^LFuL*d<*;t8T#P3|Yj3AY|Z3*qNX{XRi-ptj&CgEz=<>FA{*t%V*Aspln-J=lQB z9h1SAiL{tfZdW9nA~_~Q)twQ56b@MNtF{MndWtxVv5t#&dIS=1A|R?W59X>(my4F> zfh;vMM~)$puSX5JLd2T~v(%ech;;Sj6&UU>IdG}@6_ycs>-st?)LYlL(GZ>-%28iT z#Q71T;iO48`9e}Xa+2tzUYm$3f*)m_DRHcMJWD-23Hv1qRXBx`CW{GNLx!BJZV^JN z1Cue_$dPiEmm{xg@{OK@v-?ybBinDZr2gntB4)@s-c%z)Ty$;XxCqxpm#HO*?{Tc< z&&m6_UB#MA5 z#08ELzjFFlQzqSNoCR^RW#)Asl~V z$8x3~i9c~7$SqyA1tmDjqaKA5h%@PSm>13(@0}_plgq>dQ$=^rGG5Pg1F*CcIXa!W zDc!TmjT^POm3btmaN)bXJR6)iRkK3$YN1Ox%i7lY-H^`dgyyJYQ$_Q0)}oGmC0az# z4nY#))9Pw;K6NdbE}BL-kCUjBNwCN4KV6LSxmE$tJ%Dqr`oPrpS?ZPPqE)K@k%c;` zQolKJK{XPdx(`typSV?YBO=%PRx#YOm4^Z(a8V!x#mV7YK^K6dF}H~^=AkS#={Av` zyw}N#S;K+TwNv2TA6Gj-hLG8#GXX^W43X5)-2JSrCOqseh@i27-*T6T%h0=y=ky)e!`m{jjE`Xn4W&y(vlTFPEfr-G=^vpltkHfSPShEkN0uml}c|ipo z27}V{IAWU(iA4yakQCFdmLgCVko(wFE4iYxYuVL_gLOQ_BdtGW7^G=+0$HUqiw9AI z!}(am`9$jgyBk*}cZn^v_Ry$8E~tf<;UvsocsI7i&$HAUcMCZ8%Tl}V7H#bfH2EaD zj3CkF8VX^MPzgNVGkqba*5TgY7+i$+Tm6fjxe*T(d;lD~Aw0GV^%{adKQvhd8m_JI zVE)eKr2|K*-v1+-b@Z3As+1yk+C<}|_YW>-IpyH@Tm3LkG->WHDXNsj=7CiG=9Pu#a$L zGk;Dj9X$2%H5KpdT~V0%Q(aZqi&_Q}HMGkQ9^Hrdn_9{kr(b53?)pUn9<;1-r;b}{eIE{vSnU#Sd{ z>>jDINW(zLTIEOu*>d1Wl}nkB12et$8*~Cks==9JViT@EvmnZzO*0d*NS0(#&~C z8`>r6Gft!%2c&$*eT2e=Ln%>hn{CuDTyUfo)b53qLx)Cgcc9EGsmKzR5$P73rx3oh zaN^O3DysLw9S=N0EtoWXigV44ACPm+j_gGQkl12q-rG8-L>6;m>G5M7k%r>=?f4sLoqUS7LO(&(=GE&_$U$llS z=b8Cpa4SW5qgxP*&7P6W8L44**{^67xhnC6*&Ez%SQ92Kz?t;;5!G{nXgBQVBgmA3 zjU~l`&r$mqCukyw2g6PTrQ%}!Z$YUd+WsRbmF|!nQR^3oqtU8i2{ZRn9Y(<4?xKMQL{}6R=KsCO{ z8g55i02PN}=ly_|13kIA0oBj|R7gibI6#Dy0J)6dT;t!R-yh}sD;9}JRmw!W1e~d$1^l`*8`Bx?L49)3UM?=xM!hg zS9>wf7dC`|eosH}v#3yXH=bA93q|{yekWQRj-&PDo}$(w@vAYvBx*5E?y;*XDAqNs z-M}H_8MH+7h8LgQC1CvC&M$dp2>_aJ%u!z}(cC$7gej!TC(Wj-i+_uu<{aCH?Na+$A_A)&d!4f93f-Hc@%^KHJ$ zdQjZ$*?Cw)Qr1J_@z|$mDCos2iFrY_aE2C#ZRqufAW(fu?R`kJf_Z!7!=f{O`aCQe zHh7o{0Og=67QV0>Nx4S<+CXTO%Y0b$!P|!$9~SlNK2N=Z+67rj5W!liht<)CMdOU% zBzrI6CdL=J;dk%9A2L!@;WE**uD|OBR=`|BQJUoK%f!gYWsI;*u>zYt0#$s)4=TAx z^z=*L9W^;Un*_d#1c!$gib{J#)HQbnvKd9lb|MhIoWiBY)IDf&OSc%aCS}LaNxOY0YclIc zibP+THTktjG)gM?iK1k1KBf+|)<7M)Eyub;`=&1!DNXY^Z-mYZ4JP5i(}W}VHtad> z%2(@_i+PE9;bGZz1?!BTo+&hb;D@nMsmYIvXW=KK+7qHVe!4s%ngHjnctQ-u&&nsn z7(||YLiEIA;@wt=8;R3@YK2I5o|^#=ZF+a9V=J@?OUEaLuSFg$T)UyYiWl&A4uYAG zHo9-hoS??jtl#&fXpe=z`bn`YZ7XL#{V`q85>M(eUVEDR_T|&uw^l2~MM#^uQY4~pkFFH)#$#&TN-V&~ z)UK6+UQdsFM%;uqI`4P}>+ofj{H*9I4DU;-+#l|a)CtduesmG>Sq#-0wd6U`K{b9( z(9O(SpM$jg6^fc?Jgyq8f>iDi>H=|iVWeBdwDrw}W|j2dU>Z4*LDSq zN2?&z`(#eZ1J8>D!?X8i8oA;*>XjG7wIGU#FQWD4x@`4AvFL_Z3uY9Hu0g@_V!)WM z7OaM;&_%07gQWR1ysYrvh5BR6K0c6R)CdQl2KG^8yff}GY9r$4if_P;*xGEB^pc+C zNiT`rX@Q<_gZ*wZsQs`-XvD`7_(I&uE&d+&i(eMsdMbW#+JDI!k>=Uzh8C_7ANcD9 zd*H7YVv?8Cj90`E^y1A|L?h!>b?6n*7sKB4Rgpe%E^XQv4m6m~^gwF*e}e-yGhnn+9&>6VwJ7>7xcuh=dzAU7#u#>=pjJ|N# zOhnri!NtEV>~l}7nz}(W7K{EURf{(OzDv-6y1*BG<;-DRvXJKo?d3`>oQ z4X>j%ZWL{kHxbGaHvy##@Se`pU>R@X&6ZSoH8w#ej9#_egx=3q7jA+~A6FTB%@_4? z8#8BVqHK_M;O_Q(bRWXb!jG!?C`Z z>9dz{qG*Vu zNRqFEl&O8S!c*$wyzFI6jP|>2qbMMn{hqj5Yy}Rld{3lnP8a5S#B11jCrj0Y?Q(EE z7yDVYNApouMC$7m zRjK5fW^%2!-7U3>-100nrj?0?F{`-I(E(*wObN$;0(sxVY4``xsX9kE9#h_jP-Ae% z8gFtOByzMve~|5ZQCYSFqUf`Z*WYy_@UB^>*t4{G???Z^D3L+7djDe)Q;V;Fok6C2 z=33cQ`mDWbeeS8r1j*<5AXDke9JV$;b2SQue2s%FE3eE! zb!X_82I}IRh6wbJd9_ls^)GnH1-`v z(3;p2KjW`>?2J$|ZLE&>2ucr#erj8#NT_j4=K>nTl=hu$mGZOb+~iAEIDnMU)qju$ z7nEVonoTRb78rdORKd^UiWol>fG9lnX~!CiIA2YGg|rKC#urTsd#|hEKn5ME0@<{m zSD+~UNs{<-wo-UU*;DYZ?-)rcv76U zG7tRM;1^Q!KmYH7-}>JL|Ji>R{O^jn1^*QTl-yJ3a7qC&*R zKI-6mnEe!gLFY%bwX8x+K8;$sc@6t{&RZ>%zV%Z~Egd*|mA0ZtK1@>mQoV1;q zLOXY+#lmFa%9F5d*sE3SS+vjEDc~i6UT0OYZ$F!gUA=G$!fH4qEITCzx(*4UhU;vu z!Qa7T+a%G!1~jB@VYTf~MhU$RFk}{#>@L>qY_H zSU*i%Ynf^rDaV)xv$enVgUl8EpL>#{2OWg|&SISV=I9b7ivTgItLLcsxFQy_G?&l= zrY2-?y1|rJSNHprW2+Wb8Y4T`&Vn47WxH6iq{s1Y%29tUh3~W7YN3#+u#+o!MaXJ~ zr)Vy~kxt=#DMMVmH?Sm}duOYWmYia4%2yjG{8hF(YRTqjxFZpxhK0+>$Rl*7jK0Y< z3X6V;CGPe+^~M#Vo+=2J7qQCyJT4x5Pg4u@Kdajk5;uIGtuG#Y5g}Vs^I|+QAxYa< zn|*l9QXvz@LkK>DZnp{Q;sB5A>0D9>EDQ*M=#s+9{EceqP%$LNeWN&Sinl`jFcdZq zl@7{P{@+BoCg+24=wsR%ql5E+bI9n>1I{!$kFGIBS9eDTnj&vSw)zug)cw&o(mTHM zQe8K+Ca9NIW}N0P?3@Vd3%tP-RNkUay}?|#6ihKuZ*nyHi_?DFBEn7oeOovvqr+% z{S&RtSJS+*ap2wiG7{Ff@7~Yl{-2yft5v^y|F=FP$lvpZc~rm=M{ack5D>NA%K=wF zR6!w#BP)Yq{er09A*iU+X`F`T9`ZCWC&ce_K!=2Nc9=&uDB=)D)L>l(l&s!uBr$Q- zk)N^i#b)7N+ZXJ9aZfFIXM@$>Z(;*QyAG7QyJn$OstMh7?rr<|rRP9*V%fM?0v9ghor|yWA&B=r0@>uyl#{IBKmno!INw0@y z!Y$_Xda?yFFRLdzAahwgyl4V!KCENw#>p`Wc?*JCMRzG^ONB^lK;M zu)m&MrY`O-JDMNlsHyd30;2Ql%TdNcwWq#(oUVms#LM1}7hlItip;MCu@?`ho$>M( zBFywGyjg;GI9|pp;g2N9So4n@{W$#B39?3V|VGf{RrKks;-C(5+iUl&jXM+rAT`q4>@Rf7hyDb&dW8pug?k8ujpa7W7Cx{NYo zyk2V{8=IB6>dOXll*b?2BT0Tjv9*%rLxd79B+E|p`*pIk+iqP*WgTRI(F$~#9OEDh zlx*-n0K)+%QjPV=*%2F-QlU9&zfX4a+s2V(D_=EEkyljP`3};_A_}7M6{;Xb)~k2I zjlyCi(DA4rn&qVw@IJ$~J{_B3>DYVTqGF%Y zU)tixA}cj4!H%{qUs!^+X$bNJ`G~qARVMa-Z!;B2)X8wmVAx-u7Blm0%G2mH5RdV8 zo+nkiPNI(btDP04Ufd+Av)hNtR9Vwp`?eAd<**E`=`l$EW7wq(Em}jv zn%MaDPmZkXFOL;~8>sK7h(>alqu62Z876VcbV+s18)`};IWWfQ8D&pX8yA~(jOA)a zBN^NA6i!(6*6l0`y*`jJkI1bFUmsn}Onllq3)S!@pec{4yPL=^ z837j%NH>rUBf5%0nsRc3kH*-0X<^w*7vrxt%TZ7V55VnBCEw02 zX)2Q=_-1_cJ%o(0>Zhi%mWd&XXeN7hb0!Hu(;TkBXAs|E*hQPD0%zWX=42&f_DAFk zwJsrcb@f;?88avpA@#E^RS=RduNbx;_Zan9k5UzP9L>HO(Ofn$3pS}cn@heUy`j1M z%v?W5Ep8!mOgx_2prve^a*7BXX=4l!dBe*=^ydJ%q=1zOvQ2F%>zSu=RZdIU-ZwGn)TozC0{MHF;h>R?>Y2+`VoX8 z9ha7ms)em(5^ZU#Tcce-za6W=y}X-;JTRjRnrB#ChfK4o|B@W*r=onuQ#0DgMjbTH zoYj1oDzC~+7WU~`ziUXj)3Q*p_%K3vqR-CD_K*p!!9}sQvdhJ5AHXP)Wu}1(7FhZQ zuqF|89?{H!FU;LeRB%-p~@)zxQ`Jxd>C$CaB3igYpQ4rTug_t%R$NpF0q+g=&mUZCh|YHwW}z`d(; z)UHnQR%-Kwon<`gxvsOE=vm5qEV!-hon^n|r4Mqgz)sxK2L6WGuag*n>^)(qyr+==Wk#qkddRxO+m709*7iF*V9pf|4`O@Dn@u>;$n7adwkl`-tD5~Y|5_NfE&TPn z6K1|_7X=)?Ox5cptC_##swTZ;>(0Lu4NqZ{I&i;$E`8r-0{Y3m)t01uo%4uBz-Md-*h~G562AEsYO_d=Y(pc~8Sx z*|6R?S8UEv8NFo-^EbT0&|4;VU-URtutlR6)Q*^$I;lKCajAII7#EXva2n#_xf%dr z^-Nb1PUS0^F2~l`No}!P+gS`JS6!bj8^y1nfE~lR?XA3j7jt@+dMaI}lMz@uTQ&&S zyO@gVBa`Yom)~KI@r7f{3-5fInzBRi(^W`_>Z0n+X>okWu9(^G}xM2d&7d)W0p z+RyPuqy`2XNk5P^edIk(y(ts)&IuW)FC4~l_C&~l7^WEn&O8@5%wZVsGh}mzO~d1T zmC@@tb?h}Wl~9X)(gLA&^q1`wF7uwlQ!eA(hwve~3-~wD=tNh0<5k;!lCR;i*WiMF znCPnL>H6c?(N9kGQzS^lKxn4lAX=%)*RSa>pK}97tIAR5Tesh3Z`0X) z`Z|Y5jzoR4bCt0UhEY`qX#Ws-W~aUWrtJ+ht+_h-f%e1w_hW{t31DgN`Cw@-eB4ZejN{?)5Q7KH1<7548iNxV@b~>O zvKL`zZ9>nBWWf6`R3_~G_g_e?>t4{tc4GAn>l@WK%!?D+xkhxvD6G~0byrY$ATpMd=c zX09ARJj3Pe-I~DfzkLdXr_c#Vb`!oF+S~d+(D`jY-Jlf0zL- z7;xW^TriM$h<)clg8EsGDw-@?;aaZxa55Megexb@$#hY+>$0Zmo~vZCr;M=xS8E@? zN=|b^V144QhDaFo^9Wvdy=+9tfA7_D6j7Y*S7QM-v&UipoTq_eAyOlCGg9Zcn<*oh=a4S;{v+#=f zjnv5NWUEMbXT<9eGh|Qy-C?*IAeLkMb#io|;mxlIyOnFMNPcuRh-mI*VQvFQ#`FZjipzw|Lv3ThizN7h=2m^NNJ|jWZyHmzu zhH2CSGdt=|xgjt*=ZWOI{}UwN;P6)e7?QgH&yD0uRQWxcU<6}2dh(B9`o4eZ&4Ed4 z(tRKoAZ_-2atLAiy!$|R4`cn_C#UgSKpApC{R0k-WO8Ne5buquEE{C?SdLnrA?Lxb zLS~MKhjm~UY$ATd z49}JYW?t^%GGmNd^|9$uf6kUo$1kAGMzd&i+BCg$ID+kfb;Nv*V7p%(F^?nIf=EZ) z&k@YZ>4>>_dix-rk*(65!Y4<@nltgv^&U7i8=5U^Bvl3vn17oJhgJ`PS!(($*;v*1 z3JBMY$&S}+a{*j6qf48_fO*#uJtyrWNT(yinGy!R zmLzngq$Yz6S7?1zT0u-N@@{tWZXKtjS;9koIH_bMvHq}jt?{Y zI3=p|#ff#dCU-=in*+f*&~CY5T*O@T{cd@pFzUSRfxIY)LDSU7J3@ z+d9jJAS3fKKZ8ob$z8O4D(nJM`GBEO3ku|wSU5)uWP9_(KLF#`e*nfW{{W2R{{W2N z{xcXW7lW0-k!R0hc?Zo)(L=Ipf-8>z!{`^^nb1{XhSYrv%vd6eZ!D3W{E{BdxJ1bT z=BXTYfzne9PzlOhDjU@F&ojGbCMao3WgSU}QFY~=vb$Ovh2_1cKvq{pOQnUWerl=g zif3W=FO_#wt0p`Mwi3mP9(0Sn=rxknXAjC)M@1osvHA5ukPMs`|C!D-P*Wb3y*+cE z!s2voQkJ;^y0o;41FlWV1`65ep%bfuu6)I7Anxf&L(w6%{7EDIAE_kv%$2C^kAQW9 z>hb4Cv_7xG*3goTL z%(xWDk4ZjnTco$_4!tFs6py&gq{wU?c8ZFTTla8yy9xV^LY&6`z#SlAKbdw>7-sAwpD*tINIKRgc39*e8h6Y?TBjhOia?1mmw zPdx#;j(v2?6Y}0*V=;L6^@--fOV^_XY5T8SA)7V)f%u0|DMxx$DaW(OShI*S^6?%M z1?}u}>Z=v9c^kitRa_Mtt2o!|1n`J=Z!XjQNoW^AFA?w z7a5&4kVOHM4GizplkyhaR-g8iY=*9@r{rj(NF7GVL<8$QEz^^4f2^i;z_i ziCwT#wmU~%=2y9@+B2A04T^d&8Nn`^_7ge943O3aSfn{0s4!e>h%+>+^ck4Uegd}z z&w`gOTBWu=D|^&%Zd7AZ;7Aq+=Im#IEpDbQI+N=~#m$6j$uNedo&2bi^B2r0-XgFo zR;lP!KtfzzzU4WbowA-+^PiJFQ=D2zYR*(^F4?BQ>l;aon5L=kp971s_IZEt!K+|_ z_IPgL>Sg?b&9YVUGH{Wm#-h_#R#%>IpJu`zP!q?s*9u+r}LA;!6;u!n*L#OLB&9?Tb|1KEf}IGl^3{h@d{- z!tvNe?s{4FY?;R)$5I4j4bDOm?UfwqI%QbOA_9b-tbv9SL}~LH zER~1Vku`Go=;M^Rv+41%j+gv5$Wj3{T zWQiO(_9dG49tP=;F(MX?2wo6+m9lCEgX29gi&+yCNdRFu4j*5zHPJ<(HnkTyS=7%Z zvQ5j)9CCS&oxvfWhn!s`+F2ZlE)8ER8&`Xk=@#EaDuD~&wX!ocbM0E0XaHRL>3)z_mHM^s#r9sG1w( zhCXL1j<WF*WvJ}m);O2Mx_gWq>9+Ye;$Sp@(NNma@t4$lwi{spjMrZAX>hY##m0E0s z2o){AXQOWUs*SRfzvb>cRc=Jfi`S{Tn`GC4&c=a#-Oo~lIed|Szm6`OZ_7Rn9Lf-y#ib1Dp10-0XKCxm zy#$9IQ44PCAqP0{7is3=~9JLz}z zZ?|_LmPPowcje^ZmN@+A=kMZ3x_7(WE7 zcePsVV^ z!Zx;&xb7d{LnpT7D&PCSxpfdPzAuM6qJM0-yb{&6_hrL$XErYONt&>UsB9NbK<;#K zzk;~G$8eMh<(S)k04lQc4VC|a40xWw`*)Shj! ziQjDvD^Q#atAa8R`?q^5*uPzGs$aLtz%x4h%7RniWKaP=ME2C` zm6v^pDl1A=&#h47#BY~re%FHzvl`<(7legK{av&%kk#dbV_5H9yir}UT@LX_vTgU4 zjp`*t`r8Vjm|>S~1cKVN9Pfcm%jD(msyXw1s+N~Q#Xvh@8K!+dWV2;5E_pQ@$0owg z4qF8NOT`~a0RW+UdX0BLmzeb~s!|JIh6_2olvqb)*hYl9cZW>Nc#2Y>1*;QnC#DGd zO($48+J=K{dyf;W6>TRY_=^*)8ErQ~aPbyh)*Ed%L+~{xh?7JY1ix~E)uZjE2tM?l z&Ri|ph6h7?qYh@o#OUyEPI7d#-3H04-`BaLqU|^Y_dCJJXuAf2zdAurv>k(B&IdYk zgl_Z$P7sb>sSnRPK{$HdPCj6_IAM5t?U{ljzS^ow!_{jyB!BD#VHZa2oV!hJ{YZ8f zo40LLuPww2%RrVMAIsSdmX@Iyah$=dPZ32D&Dry@Osl?h2ZbEgtiKvnDB`8zg}|%J zPI-lqqn7NH6Yz6vr|jf$^QtzVU~530F`q!;hu8M%e$ew zWy3)19lN2|1he?mZaD~WODcEEbi=ddL+a)S`6^?NOjVcc0VBC9D5|HY+zq|8NA~ob za6=J$5z5={6dp>UrEX{eg;u(ukN3(^_9x89MS@56+~MT_3z9uE;HVW6<C{@q?_%AbhF)%ZnhJ` zI+ylZuG6{HWA;IVGuH~-1nsM~?~~6alsiqr?Al=|9`GD^H;{&f9!1zMTV|}~A#;sd zqagNK%MWl&VZC5I4``Kf~$$kg6b;D#yxhxjZRQ#aby1MDKC9$Po0$JGt#adks_T-}f!Qa7ZB)D7v;bVC_>INhKgNjIcN z(hccBbVGU&-H;wXH>AhU4e9Z7Lwfw&P(cQdj~mou=Z5syxgkAlPKa!baJYtODcaU3 z>L%d41r9nIYZXpUu&c7N$}V$|6f1^>QIJkgu~TsfQhywltvosz5{tIq%LZ+VKhjei z$SkJVUy!&NPzCvo7C3zBTqyHD-^(=5s*hc?sE~DP1#;Z^9T8Gn*t8G0vO8{x8an7a|Hw< zcxV;_O5$x>=R%neevqp?MNS!&aTL|-kWPzNZyuFTc#7Q&Qz~W37#-3gl`wlIv>kWR zah~LTTFM#S5NBz-l+Xoqc{8I;)$GyEePJ>_2bZ<4QYN<9=`6s&Wa81|JqZ!j^N*ZnfhVP}TIGWQV@aRW!fsbTfeumYuRb z2zM1}+GzfFafZ4<^S|aN`GWaluDbfT?C071IW-S5(ie}*cbcEv!^4P4gY>0>0^a9n z|H0ilMuT#lj=LPoABR8xmw%Q+&8$Pzyy3(~jr;{X_nJd$+Ap{`jPNtRz#^$kr~9S8 zZo|qCQC&5H8rJ7mnGsw5CDrQegZ3^CeVJeK$*(d~dbT);>hhD=GxD57_2^02B6e*^ z!If^>zLWBiYDDlsy?s7?zX)TkUT^#%>zhqOmHQDIBmV<5^44>D| z;~1AQsE)<3)PaDh0%j%nlI)dEjGFARj(axm*ZoviL|RQ^cXG%@wnI)xJrrrBd5*iG zk0Px`u~`SGoSSnOBLpTRCd#_e=(8pi%)a2P$3sF{oYRpF+lx5#4Wty&)`-{@9CB!g ztwX^4#2CxxIk8s{jOrg_eeT)ymD7nP)vUG&vluTeqP!4irG{g%?)`=`9EN8@r03|eb8os+G^)DwkoiY$$&u>TgNFHMuFCUTi|BV!L#v7EU(-xANq==ymdIn)jAi6{Hic;85AOgc(^SliFAnhG$nfg*N1= zv1!(euFL#LvJzL`c2*rl4_W*3;5dqb-z11@D zEe<;Gg;XQqh5N?B-0#)2_7>~cR<*ahN~_x^>DQa1R(7!dr`CIZeSbRSK5N}hR%hH-y|9y&Sl98=;%FGiH%D~z1l8_J2(=e=vYJHC zr-qS4)w@8w-O1`^&YiiWvlZt#MKfp5ovD1Ct@P^ea4u5u;EH2`n%dcF8tSNmx{mWml&MjJqXob z7i(zj2FjzA8Tu3I9`F5XP8X|PYqt;Vr?N)T@wQY_Wt2T7AlA#XU z+s$fRKSYa6dp+J1fTp@AFexuv(2ePH6~N(#%Z3wLo$*;^hn!F*qSL(#v^LqI`JP*ZU*G3MX~4 z_X+w=jUJ4*Sb%(pioOwxLiMo5$LMUZx9}dxQ@{7HF38{*?=dQZ+~madN&1ckZWmPs zO_W`EltS)G4Gm?6kF_O_a~U=T2wk%QU&gT!M-cBPX8!11Pm8&Y@mwyyIO9MjEJ-}bgf#pu#F zLU>Q*ss8C!Yu^!S5*}H`xlDK47eR_D(q7D%LW8p~-I|z@$xz%WEjmZ2I3z7JRO+-v zw=*ZgR_ZR;rA|qeH^3S(Br_O}T@Vr~ z3JH}3hoTnYC`|xPjK>_PQH{Q!dSbZ30f}K5K9_98u9| z3`l@%2(QY*C9ne1@+fHz-@6i{mPI~W=PJ0;1IW0ExW*)YF6Z_=t0)f zi%U7(eORYBI5(3S(@q`=o)*(J!+V&g0vdp2Vmgkc20d|B7E&JiaLk4DexIlQ7=)Sq zHBSv3Y_(3(eU?bGG%7J{T(DyLq!tdg>h|UNq0$&5rkSAsCfI5poq@5NVI||7<2_1^ zK$3kRxUGPDJWrJmwo**g9X-TqLUnf-Vs-8JD-|G-2&s-R0=g~GJ7d5Ztx-wPUO@FA zn=Njo6;690rr?DkRsw9<-XCJMoU9uFp?*OKDXrw@xKonJX-)_gF}&!tPQW5(RER;HkC8RN;OwwrH-)@s%tul zm-}W+CrbG780)&48vDR?`V6o(L{o-dWF>UrA*AtyJ?%2S`AwI(LO-#!chh6u>jhw3QeI_j2>&Xj^=KGIuZ?? zGuG;ac_tfD~zJbkIu{WCQN1 z)-Y<|RYuz57&5N~(_4aF`Vy(TpdhT+lEieHBTTvGFCM?t zYIw=%R3BZX?Z@4uAkN3^^R|LbMbB>v?NOM$(vWVJ1=p(e@AYuNAe6GBy-(B87nS24 z*dO_7#AQ}{vH6dUD(foGW>Gy47rR4Pe`vo_hKU z&;&d>Sb2q2x7iUoUt_Hw|BLc|uR~ZnkX*&l5+a9V(yr9Gqn+H}8HTAQ4i|N!AeaFP zn&g`2rYk|wHsq`MS6UyNuji|)CR!~?Ra`L9s^4hwOjK@zRnT&V0ifR`OCsA8{DDt1 zGEmtz(Ha`RGdpOYeWbBD#4+eb`$^UfspWY{hqVQ8-?SrOR5%x5o;>?_J{4V}UY}%* zi+tu!8a3F|sKm)uXOBD9YQkizS>z&4g!?^p|75GbS(>MIOtxBxt$%J*e@?dMP{f?8 ztgFqMW(YXci(!ZWn`}Ja`DW1{?=8B%fbnb*r=av>a=4Rnu#&c3Nkm z-w%!=6xvHU?QkCgjxz7=Ypsq=4^YjW*=!FJoro%eK=RZ_*vO-HUJLddwVu2dn;2{| zn_LI_MG1qiv)XCVARfM@8I443sa)k;o^cpq_^Vugoy8WNB`96@B;h7qv4LaL&Sppa z5WEV&({HNbePae@FQtVCQocfUydHf&l&3Dg-s+fiA}44j;BJeMa6Yf3_ko;+_J^_R z?dz>1^XGi^_4QWkQTmZ)kPrLRU&3)N39?A{Qpq;m`!iv_Rtdng8Cqa6g`$fFKtWR@ zEh2D=!L=TaP*>exb%;F7h!lg?J$8dt&piHvT6=>vk;W>1inY4lFP!YkV5ya~5v@>P zPO&blwTv;BZN-b|)2r0T8v*3~Jaxm3R*MEjS%@Tp0P9BhRo}0vO*EpsTk}-$jn=J+ z+DAO-4{1|l@Cj$L1|^!;>_{90oP2Z)XRvU!jIjs+NBlajE`!dBv>~u86_QlFvlIJt zmP&mh`qD72$_TE?-vic#`rFBSGj@5j%%DLs^wFSon6r05Q3}L>td)pyJn$xZ1-NCk zy0eG{-(X{kHq!vvf8n19+U&d^Q@cS3fok9kDG^3yVRi=Oay*oRdfLn^byLX22L~v2 z1IKceopk^M#^w0x17Y+Qf=|s=Z%?!8KtlfcG%Mcm=%^aJB9jJX682QRDv?K#r%yKM zGyyFjpd@CdMzEB7Ky;ZhR>PP6oi|%!%ney;>&;eHTkb4O>gb(j{`O&9yNA_4d(g>2 znAl~Ex`th2iud(Am2rzT(EI@G@h#9x;D(1a9c*&(Y}I7C)x^Lhxan3Sh@5YoZVjyQ z88smV>z&$ztnW^@dN(yw!?p77RaN_>YE>90F+QTpyUN zjN7c*=C0W)_BN}9u|nCmftr4TMULNE&VUjgI(VR#-)1Fvc`n^p%(mKko7J@@Pdl~@ zxX{q3q3X`Cd>ITRfJZQZ%ODX<_;5&M`53{_fLxe@f}@yUpQuLnDV>GvWr*(Fo-N)! zc|T!>!yO_Q-F+jbBu=fFVZ|jnJ+bF9EpsI)G{9fsxHH3Q>1fPwxf64vl5e--({?$N zL4Yt^HKM_Z;9h`xiy|cq_(D7otvHw@%vLwtZgs8CrMx?7Rxr+fCIWO7YTDXr+wE3T zTsfu214*1d66I%Yj=00Rq@}a*fxk&1Eeq;yg&$}0Yo=oo@k4u3?j2T>Caj6VT19(M zADh;O*Sg+?@1K2qhc(W~RxR$tPIVlXn|DGWh`nI;ow!Sa@N0Kk?X*%0pfn(Y z=I(J6<805~yR5eT9i+x8=aqw905+q3hw~J2FRNf2u#ldoYo^$p@Jq{;GVE5f@3L+% zzs^%X+-3C_Yk)|d?zZgMMe}GbT^@Y}hj1R8d$-lvv&Ic=yxVH)+3e&jIdQjjjp11{ zp9;e6cuXEUt$E}5=!3fQ!Pz8xRH=q~Mj zhWEuYMdqtNGOSr$iWgHgPG4IS%AgQ7$uQfTkqQr_Pa}B>Vt`>Q-ETO{R-HOp?V8UH zs(Dk;_xoI7KxLV$s?W48toabJ5!&hn6?q@z_uXM-J=3zHHq+2SIaUrHc_!qZtLCWH zGp(e?TX;wp5x{t~0q@n&bYcaAbU_3v2yYjc9G_`P10MT-n`K=Quia?VL6tp1!Y~t{ zQQy)0lIgQ8NV?&(;f^dIAAX<8vRc-Blc0+}gygs^Yl}#_T^bOc#0NjP-;ZJb=B0h4q#MEk_1k3 zX@c;|X>{e76T#^0%n)~v&s*3mjdk@UqD*|3X5dranD+s8#qaqh~ z%eBoiMK%>hP(W=lA;XQ#Epy0~luXS`&BV;DGIOiU%uLO!%-k|7>tmb#-p`yfmve8Q zZ{Ob^zdwHXy3TpeJTvE+nP;BondO{w+ygE2K&1u}jmlYC=*`7C1Ntp5NQA0PEyprr zg=7blo~m-zjV3?ema}^)Z1XHTXm^)$_gQx5zJIHBh^gB8eLVPc21eI$){2H#?+h3e zz+D$4gJ5Ftb8PAm)j~#_cvQus(rB0<`kpt=7C3ADmljgZDZ=Kn$p5L{{pYj$TpuWr zb=|T!YQWECaKj8@OjONrEzaW>9e*RSCY@z<{6}4qyd6@-llq2-=_w5vJysljo~7E4Eg%Ht8M1`6G!V3I?e!Exgi zHTz4p4m>u3*kB2+?!Y(Aw<0&qOdir-&m?wu5iTDi`7$D*bV*L8C&xk~g8 zEdbSmhCtQCpD(hGCA*1ea5PqJ&={DR>qYzE z0Uqix**BYvLS(sV6g) z(aj;Zm*vpAHdowQ&4xs5Sqpl4L=i59BZj7P$l3{xF%Hm-s${(q%RC6MwrddhIOIVt z8a46(IC7>PtHr04EFn?Jl_yR}AS9A)8vt6pMF>q~bd z01up_Ptf}C{b)Y*ia7HUi^QJ5u`1TYu1XWf*0304?7fDyPWT7kfo{I3o_HHJ#t6?Er8 zpBQxuRCROxg406(y_q6jW=*s$YlZ7&78Y*K80(V?8}#pOv+rd#K)bP4^;PUT)>`{x zt{A=!84oQJPp!j(iCzIYdvL@UHETiB&E@(i3-EUkn>e>Z_4(=F(l5w30JQ&^Z(1UxCB%w<(jKUN9XPTlosq%KPPF z|0^s!^eW8+sN+zuiRR`j*eFM<)>+TOLRG7(J6rVb=(e84)Ch$kwdLzsM8rR&flgMV zT6FjQ>sh^KRWISL?kOsEDXA%Ggkz&XNyY^zzzuLq^!CTYr1aAK=nXKschK8NX{x8l zk2qQ!`Vf-}&s4})%SGu176xg3aRW9IQKLP8eN~O*_SHWm(NGaojIJUKag;j9RJg%m ztj>p#YH_?lmBHsdF{$^c5O^82QS$QmMw-6KHh|B$c_ZsjXO{oi$fB%O)eT-{tF87e z)Gy@l@81NiVy~3&0$#208hfe1aU&7;!Hxu}eXM_kId+zd7dPt?d~`D#QL^7m240}0 zTo)+LRm<=%EU=|^>3F~swi}U{k4n-jlGLypwEiWd>42Zgjq;@YD2+njF3?;HeaAJS z*}Qn=b(UD`no-Jv>hrH-1Jr(9G6lUHv6Z!P>|76aXi^tV`u6xM;?b>a0G>hHxRv#> zA26gu{JxdZr_nlY!+!cn6*+esJe$>G*EV+9eo?jM#y7CLdP^c$%5!hXeBs;KaC;f4 zY4Y2i+Rj?yGe;Y?L-no_2e)IzYL>XRoz1f^Q6wdAVtE&DZmD>amDFEF-AS4Y-*@q$ zNBwB=5*ww7J1`SlBlhiJ&xKaWobGA5ViDXl5>HpNXooCBN;hr9;9TCeYIZLUzTB;5 z!@KD9j>}@szx_|5YY@j&$Hfux0-g(ZV?lAvtiZ^;_zX3d$HMFDyoJcS_6i6hm-QIF5G01| zgZO>3T#N%zXPu}ntuN497?0z@Hhg=-g<}oG;Or`N6Ky_`U5$a;LZ4a2{b4}Fo_&}K zTwg1TF|=riu0{Xe2QB(sm1wx1g&W!nPm^2aD=e&zSEaz?d2)(yGyTI_F={^x(;Ku` zKpoV`li>VvSzaBTVX7}WW;?$8x}PEB^?{6*j@p4dM`H4J?Je12b6jjw{G+v zytRMh?b-KOQ|)=ZCA;b6lC{NLTxZxuPe#C?VffH?8;v`chXHpTpgPcURILLzBm9g< zjnJPop!B|${fX>S)L_mZIbb$~3l89j(*HyK^eXA6nW_&v>0`vh_m_s<(1Eg7SBtEJ ztd)mn@8kCDcOKMT&GQGP75~pc)?F)GD>{7uyN$DjAFvlofqb_6eKk};T)!+ero50yOe z5UXEO<5e5JOt4<25^^iJK#`g&YMf)EEJGh;F03(0Q`IZLUl!`-QaS@}E+MA0s|YUL zV(RY?1*YMpq+rWhDQt&X;{dZM@e!Y_!J>cv!^{tj^}u14fVciWbC|Wg$7r*@djG)A zP|k$^x>YO))cYy&k3DYy-t$?D(5!SfI zcH|#n(cp055y|1+BkbPLO|prMTo_>F=wpC6kFqdBefrav)-*b0p*n?x+|5E2W6I-}9;VmT z#2L1!%>}|j5NE0)I^THwfw&_t)~h1015X`eVR5n|us8bK_)W#*pn$n}m<1|6Sg$zE z;N_gtQ9V~&J62;Ej0&LlO>>2W523IP%OGbcI2dahO}M#yLk!G0xd0PB^qP~`jNJVn zvZM&lvFXuNBH$y~N`uv5id9(=Q%m@H*38YAvb_d(?xyGZk^wdtNnkEi$%dGqmyXkY z)Jzt~o2s2_fd*TWMEb2R!2i~%I0WdSgOxmCfdMC|Wzo(mk~kZw#)5-ebc)QuH+#HYvEh@h?d%v9g3md=Xn6V@QeP=%)G@t?4^ z|0VkMPguRC@)Irk=?}=1e$K(@V^axNK4GnBP9J`PxyZPD^#vBD=Po^it@gE|_czSx zPkxlrR05tOjsCAsu+*S!ic32CAzhX2XK(^?2RxxqS(xs=VZhOO8moTx2TNjWMbKGk z9^%fj*d*P8(h-S1YL&$LrMdx;ceCB+r!M#LTmBB6dnzSkzW0St=$76Hl^O z1j|mc=-P&Y#)|NAaquLIQUs_&?)INZ2gQSXiMR0e8$2W=mLvg#*jfLy6kiu$m&{&ZCsr?{uFxzOU<(p*w>Tj z;(VI8atcf5rxzKHLFDJG9h!B>=lap2F`whOK!uq9Ih#>K6LuQw5?5APWQx=c@IvpN#zBQI;dp<+!sGRv z`oUy){8XmJ^{Z0Abef19OseD_xJAfexX;+gqeX~$U$7zne~Hr8{~}6Ty+vv3SvI)4 zKAY80IiokxbTj~-*IPJDmmzr)*X)MUF)xc_2X;Nqu_lpvA!uK0%;SuVF-yQYvy0YS z>td=U7x5xtdNVSERy0saDXSOWa-qJ?ered2mh+o{1M^ZtItL3<{%_3Nz+O`Y|tk zPWdv`SG3yA>N$KdmyAadZi$}srCgm{@Flyqn_Qy95em9JcA})95Su6U+S;8)MQd2X z1Gp|LNU5L0&ciP_XN+3W<2>s<#Hcx%&yYkn=hBHYDyjyG$%%t0)io$B36ZO&&$2Y} z&bO?7AdUXoF88hOo@YbD|It(KTM25UhH6-9sq~MkXb7^L>r{S)9cx(xH9Ag|7&m0} z&NJrj2n!Z6zWvHPYpHWVHebR8=4`BMFWK_P7e zNb4p&v9)5rB^G9kDH?5P>%L!OG11)sD=)DoV(HhcwW*Mr1}Axio~3yZ6vXdevq%z^ zJ>N*!`WyMcBQ(2dNgY!$TCraE4UW1Rq=r<<)9+FyEe?}Z`FKlJO$m7A<+rR|cU`p5 zmn2$P5mGXINr~1!gdji~W~2ATu5ZDhyTX^gWrLai#&=7sC!h*UO%O6+*;_YMwJ5=sTa75PUOOC@>}qF^jW(WgD({j?y zCyGXwVV_ot-j`W|i8t4EDvylYtjn+f-&Kh(E|W7M{F*i4k&cZ*&lE65}9Xe)(Lo`prf9oTUt8nGQ!99RV zkP8QRMK{fBCSH>U_}Oc0MDxF>%J>?IJeVRC4ZV&dz~Tb~;yQ^*nhzDfP}I53W=1?u zYMC4vItxQv`q1duiFVOY^D(}efv~njlMzzie$iY$c-$QS_YSD#@&(Cjl7tL^ z{L<&~8+c^iGn=@3gLSj-RL1~%{s?un-ays)KeAAts6!Ge{|(%_h}#O4WzEm5gVWf) z#U6dM9~weSb*-0MsERvr`)3w!-$HA&w3QqG3u_o{e6I#PYuMcP833L)%1o-NV%#q* z(O#)CRsOlhKZIwAq5CihDbFQa2#ZmG7qc1jXeKKXZaKk2hX zV)?r3?<~C563Qc=CrJODB{kf=LEaV<0{wm08XO4M`i)dB4zz9l9Y;JrnJZ5H&IUy8 zl(9ztx;)UMVo^sHnk}6V+!X2p`sWx`9+nqp?d^Cp=4otsJk}eoBu;GN;ESu`HM+@% zM1*Y-ItwayMf7h2<2A}ih2@h67HbERY9}p;7cso`2b+cuba(iZWk;PODz#50zqWmv zm{f;!((B=y85Ns^wH~iWPr&^CCrj0i;pIA^)<)Wgct`4A>?iFw9+ml_c%qfVNv2i}-M#~Ag=2|b*2Ry=fvJ>6a>ByA04fQ3S862}=yO0z`r zjc^!Jy}lb56+JBi?y_!mPU!chiG;fCtFP`dBpVTZezqv)^SCB~h;bfi`rggf}4LGP?y_7-;%2Z7&i2f5gn_QRN|hxyt{VcZ7Qmb*i%;*@XC6;rB=4fE$|X= zddm}^_QH56G!2j-gC9BzDrIQ9SY40DYg_c>VDIEN%d7i_@^?5t%%%x%c5u7j{9>zz|$drukz9bn*b2p6Z>9?ux zT4E#^50S^oaeFQ<>Db=QVz0UI`$_E)_pVF3Q{La6kkO0 z&R7KqX~>(`-@Q*S4vKZ0s}!%ZhCqzRGh#y;@>E#4|Ba@e_^u((3f)Jgj6?I$Ywm4$ zRucww?>;dyiZ}L7n?4S2=tG)_;zeye^7**%<#+k<_r0d#$gSZnKi87)aSOasPIPO; zuWm&Ugc1vHacU^o%_&a&?dUH-tZskL$q`pp` zuYqKzlSfl{*2yElYCZF-pa=1*A;qb%$2h zdUHNkg@MH9(R`ZE(1-<1c%t_GF0ro(uh-{$5=On>u^Rw4&pyRfXOhbljfp3s{k@~5ZNlq^b!rjO zln_s%^Lz1@bB~~z>P~tC%bxSFq71$~X zp!F0%^{VE)tF`lXDL+Q@X{n^y=`mw^p$>+ejWo&uNunH)DkFmkiRDYR-ABZ$v3!Dk z6G<8bsoELGr&;YQ3@EBv@(1km6tc$ihw(hl@OXZYeWPUPmAztfJdfzCR}M=9`0@bh z9E~pYhZo zEP8p4`C@efj}Cg>XhwKUb@fLxK1l$}Pm7j`JOV+VM83hk^8>xE;&viGomOEW**UKD z9%zmSx_wa3Cn=#JQBUXznEn)j<`=;$Ei zB5h}AtfV%4n01bLwheEp-QFd(wc&|z24!7pMX5+h#X(2ouC*z9jdm4&NxWCxDy7qD z;f*#sD)6vJRuUheUDz$QCGp}AqeLh$%t{|cuxYpG+?J=4Az9XzC(xrRhuiYmbl`eu zJH9b=`-i5Ax(*mf1h?nyVm8SJ*L_msYjW_;pq^dFq~XFE^Vs&h7wp33_S_Yy$RW1) z_?-B=JulOK!ILo^AXd5r9oQ=_bl{=L@ShGmKK6a12jPi&h!05uo<5~*<2nc+2??Ef z_b|9hm?pSXzXKTkzP2MzvTvut$d-QDk&kHqfh-zL?_D%Csc#JVp01114B;s*MI#D2 z@zFs#tMZ$2I#=RSCmt1h$SBc^S-B%kPfB<&+uJRjHC&c;hBYs6i??vhdI$A# zMY^geq$i#Bxp;d@MXB{f?KED8Kx7(^q%b*+H>NN>jSr>pjWphb!Y|TzFAAMKcoK#8 z_uw6I_H14c9*4c|>K?oiR*OFG!P|B+K3IrvgV4H?uiOuZw^K<9kiG@d2}kP?w2p>j zjT5R+|9EBJI2=Yw>xo+86ku*o-eTx>$*r=n2RzV8iIfY$T+Ii-a$Gc%$XOF6VA8g@ znmZXeQs4IELzC54(XcF~;iG83Y&-qVs#SZAy-<>7ai}yLsInsM#Mc|o{P4=**}vi3 z8`4BUFCO9ksv5qwLpB3sGOe-~f0fS54d~7LM&2^Bf;p=NV;^mgM!-`~TYGa~YouXW z!~~3-(mNkY`toE%?m}d!jD!NU;~=}A!%gx> zU)}{I9r|I8^j}DvwVnPrk{(!-p{yUw@=WngKiAMb8b>UqEUa| zrQvHd)?Dl9e|m%)t7;K=%7i&B5m5ToQ~UGz*4XVHI^dQEx_+4?(da*YdFz3D`Jzbo zvpcnnXLs<%B%E${)^gm&>$nHN+d-H#fIn<6`;JP0;(mSre=1mSOn7-dv^=3Xe#d(x z2Ex9bH0~;%8p!XBx@hJBM#+i~4%BfSkg-^Z`hFl^f<~A&h_^~AJ3z%7>u<*FO<(bN zkDA9qs}=g2Sac)z9gcQnSnF2*G>Au8YpUU+9zlYMLp6M;8ZC$D)fhg6r)gkx^$^}g z!@D%k4dETNIhWXATCYd{WBOJtN<(WTIp;n;NjrW;7FOS6 z$Ens*;i48oE}hId?4CJJxu5sc_Lqy@_w#THPv6gnw)mRri_t}2;G%b$;AIw$cPK8J z-dL!|SP_Gl{qU#lWgqDsE6zT^yV{pXgidPoAn)Dcq_oN3lN@6`fL zdwxsCD2B>v?s5-SHJ8*tpel)sn_^H~UE5`h%6!sHt-E0ut58DA#j;2ES?%(P>Z!x| zVQV9|A|-o_c^B;i;7#}Rt_$Yca#Ey^;OWtZ6uFLlW@>GuWAlK>7Je$e8o`U>mE%?m zGsWGKRDHR_Gb7&P2VFK2=IZ9BV%11Kx0%XG0~5RVSaeaV;)sDJr$g5mrUTM>`-pS0 zWTWa-HGE;p1vTY3RxVbi^PToNG^fH7Z(_tKNYCX{Mn}#b#hL_Wr>_#f=P}9AcUg!+nDiht=zn$=f$EB|wsCQbqjvxB{@?KMt$&a@M{i zlP~m~aC7%$JUPpIGR`qu)+ggdS$sl&^Bqtyj<#bmPIGnCL(T1dU&D*Au*86G=DKI( zx@=A}#fZ3Uc*~fhKb$S+=uc*IXH&UCVR+_fIkejfS$kbb^cW%bXY*$D<*ElgxodST zA*F~722y$A$1yxYySP>OkL6J<)Vx-|J$4(MKGCp^H08z)K_9uRLXNbLg&9S~g_E<2Cl}@v=1eG$S=+X@r2wlg$OK` zc?OLT4W8upgkA!)f%FH2z6f)sOtAQB;)y3=Y?^9fx>4SgJzY!o>jKj;tO>Pyr3yVi_Lz79(k zMOZDCS_l=kdf_@=_#M!i>5q8fmWp1~D&a+K4l(`y8$i|wKZW1-!p|yP{aOisMza=* zHZypM^`_W5gI9>-FY?9%cGS{~iUnyDehSCox`he1#C5O5E|NgDczy~}xn;7oj*V-#|~fR2elm|0t7mhm%M7k`m5lShip zGr3JTXY&Sr6N<(pCl8=57L#W2)}k{a#m6&wFLCZLI;3(Y45t>Z2gJ1sznV+jb|4_=J02= zAP1hY=kt>)9S%z=qCdqCQe-jXB;YRo4oe}zw^0 z#vq{qe&P6?@Y8V)#Dg*@JjRVh|9LznCJ%I@k=|Lez;Ury6b=FolDK;QJbuvX7?S~H zv6R|F9Tucn#M$}0W#HtjqSkFj7Zgs-D9p|&q&R2YNoe2PoT9|SBFhjEleqK|ug&L) z!nT0-s}+Vg5}BvO!wdKzzb5q^77iF!Uu;{zGh<%_4gubTkQnGe^5M+LE6mBre%z_l zL{4_17&!|a+;t%z-@zK@kOQtg=&AAwcgA(731g90V)~vBzNmJ7A@A+C19_=`&W7PJ zavth;8`vM%w}BYAh<_A3y@97ZPH!L*7xNR^pm3o*&xZyN3is?8#E*WSPl@Ri;n^W! zD97B;VGYEc=b@nyhA!ddBW{Ae2=^_+k4BKfb8$_IL}8^b6z1qqs-wboU}^(}{eXjL z^z|0|LTu3`2O=GoOr)>JuN{60lfs~GQTR1nli(3T}hr`PsO zx7U*CCGGN@5aM$jWXQ$VG&fq`%~-H6StRQTW?g92o`)5%WCAX1PJT zN&*#D5~#3Q0v~H6{9fc&(^fh?^{m25&nis4Lk*#@(z7d_qQf$*%-kO>MlRz~T5+_P zzKr8j9nlU;IQ9I|sHhlEAy&8ok{@Xicb4;m+K(~1f-PAI<=J2*e@09^!b|b_@^@D8 zwSC@d;;@w9<}@^^aehRJg$R{GQh1o5pmOu4WaQ;$JF~{-WQ{MHJR#X>v5al%5CzZk z3DIRuJ;%mQaB3bKJB9Tn9@=qoUS3MPYB{CY6eba%ZdRBStBytHOZ<_Bxy>9Fh`yy5 zVJC!r@I%L2#!|fa`Xy-WQERwe+fMgE)dsD9E0iC)%v#jZ0+V zAh(n>hZG>3hmdXn8j3F64(x*qY2ecHGbZH7tAv`XqMS)cCmK@unK{K%b8_;X&W!wQ zC-8OTC*yGoAwx(?fGR|P{w-iH2;>!HW#l1rwh$k!<())O6^|*&Y~hf7G#(*&NQEeY zh+RcRImJ$kWd-6fh%DaeJsxr@63g!Yp$w?w{QR6e=LMt_civ^7fZ@2w#Ejg+-25@P znI%?l7H`7A1qFG|2|2|X@ai(0Fd@!~6k}-tdScp}eo*GPoUCH;^adUp?#!HA?9454 z4g)RJkR=^qJ%q)vBIRWs)nSQo&ou~XWM`7&g)Z3*Otyc0z??-$B62xS{IQOANE+NyZ@gg$n<8Fy(0w_DQ*yI%oE1j8iHFQrcuM!3h$m4w zhADB=yqVvocwHv8#fxllld$~NKKLfnJX*?Yfu0yjJVM`InJEI!h%A?ZAlRGH}b;Z14tVL z`jAA2B?4h$q6mJK#{~B^u!#?t<$fal46iS`ZQ^iyES6~?nt*T-eqo}`A|4X=7ovy{ zdn=v4;>RcEBs;q}$LBmws>l+Fcp3vSt*V!8;^Efd&aL%9lZKG`zh7%{@HL*Cb^?TB zfZdLif!&Ujfpam!NIT~Nn{`=UE0MOD&+70y$|Vb-^q9g*k14G582Ko_w-$FcL!+;6 zQyuj>pKjHTCW%#Bc$8n?wmSC%+X`^MLS$}*CsEN>Jh2r!Q%%~5Ra@a3j%+77Y~wSu z3+?dCGoMwG-QHoD0uHLdX&;0N9|3lHVe-6G`Z1(8GvSYbJDTu1U=j&MPne`V5kFkY zzk544LM6b33=)O5%nhIbiYCOSw}JOO*HAvjw1g}$g`u9 z-t7%KiDkfA*G^(DrH|?)&c6xwuoUT})#rDrPTYZ=6>UjpF|wK`bz9O|_oHSbkr+_; zFI>|YRd@lKAj}I(e@s@|Q8F>3uqcOoWr$9)!!iQlWB4VRa5b)JEUNVHaoxm(f50_$ zm`cCmh5rC1F;nSLV2Q>U;S#!Gq$z@M17MOvm7zYc(}Y8SqfIynxUmTb0;?NPd4qvT z?p1k@8W`;)8o$MZLSoUF-S8WNUk-jxc6NyF^=;$Cm#ev7&;goh6R! z;#DOpfeKLSGWwV8egFg5qZF1klP3VMv1*O(z% zrgf7VqP8V#YEtWDB+Tn3`tQc`)hoJ*8M}G1cCwq;yPK!@IZ||W-6TcuJ-kEkFazfy zq#Mji5d-(|aekG+B)hMth_%Mp?s zpqyDmciM>ms=L^=mnZu9r#fUe#-)m%fdhI1lZtu}VW{r6PQxW>rS|v{OA3>Pqc%~P zs!5o%(zMj-6Z^1Iq9ygv9nSlENQYA^?jd@=%a>-Z?BS_06;>)!VWl$FO_XX>xSl0NeB3vn3sBa`l>cyv#$!e-wyC6It=dZsge~| z_f=TkmnuKFw|Jz2Hxzeo@pQ5BCtf?KkHazP2PsOF=5itllzM4 z$M}ro#{E5;Nnz#EPslAQBA;$_ZcbjdbJVE3fx6f}IZz~j$iw~S0n<1E9{C|u?iK^T zGf>R`5Z$Hlg@Iznhy1)&GDs}_h$jb>402dTA|ExDpFUHq^CMPOx_->XnCEv(9ikUXI|fi$eub47E3Cx$G}?U<==Y-0NrWoz)$Q#S;Ar3qlxOw~6jn95RCWeA3Y8Qp?^TPLg z;Rn3%gI@R{FFec(KdfUP+)%`PirMP)`>XqZ%JZ$-xd+6qlkgmUAJny8I6|85^uR=; zfMyb~k68C9npluu1Q*WI8tK$y;SUPG&vePz+||{sWfBaM`3bx$e=4s zlLWfI^C2Z{2nL8ynJI9&%xbume!h&Sy&QW5VTW_9v6e1}iTvC+CxA>WlmT;V5iP0B~%2XIY>TH%Mi z@CYxQ;e~04ne*rBxUIXu=7=!gurF{le(HwpaUCnMSaS&?aeIs|630f1Gne?3gw|tq z4Hpj@8XgMI#Wl&P!ZUFlFD57Yn}RqYr$^zQZj9%-_$=*e zt_ZxsLrboLp0ckq(y@7!qvEQJIE4=a6ITi!_rjlf;j6&ZUy44?>WTlv0+e*}6v1C0 zCdIGtT`z1w0p@fcFYN1uZC;qxm(BTWTT476{JjWhL(81O;e}~3VNS2>g`IXorq)KGq*qp0cG=>$X;Y4{9 z&c!7ud4;>-lH^$7=WyA`?PSFY{~O#$1Nd`3y#iMorr)QDHO0=PGR zW}Irm0@qZIN?+!MS9sx7UU;>R^W6o^MnqfuRDpz>n(!Q4lc87Xgjm=qTS&rCsuw()!-FK=Q3U7-{QY%ou-J< zzw$M~=cag0PR>mc;lE+hF>$J1-o&XQObN?(Z((Dk98H zs-cO^H~1atW`=(8!cTd1$uq!CQ~8y^q$(A|yMcQrm?B1c6_5i=j-1Lc3D`{kEzv$}PZ7Q#pk7iit;l=P7O(+=h5_1=E0O(5rHL1DpA&hXx>Zs?zUZ zpqTMZFZ>l~&3rXPd1&w&8BEqA+y&mlJQ+HQbTfndfz2{S*xX}3c;QQ4_zQ_mGI$pe z<{Qw$pjoIBfTK+{J`HRhwI|Uc=215c*gOax1*R#HYOze<2(t|4BBHU0fN+cnj{`Q> zcp@-)zpB7Vz~(NS3`}}nr9T5qa{-0RfJ@9m8Q|6A4&X+n41~=sQi>KZx7b`@b01d$ zo4Z6UzAFZ{S}|YHn@EKJ#WS@hpAysm!c6JdQ{v8Fe3>?Wx>)u%R*Mk+_BY?5Jys$% z-+@EoTPix-#iC_JslK58TB(?Rmrv1-m5Sf)^0b(HpLWRe0`EgX7oh?R@gv4)wzC|+ z_b0#kh%Lz)+;@h<@+>f|lC(kCcZOJHwJi?6h4^QHPvJ-TkSzbkmWckEEsnkkG)1#@ za4Ym%GsF(yVE;0QJTTJ))M#8wyE1V{v&FE!h7!pBxun^-0```D5--87WUt3{Pn_0RM8HRYOpBbaS z+;|kOsV;41iRsLiubrGF@ZN!?+OXMT7PrmP&f()BHros>dyc*Xb9s(#Tz8@n;z8j( zz^zUAC@^)hO8*ge^@+m#ql>RL+>fOVg;X6b$HxZlyHWxtHT)^kR zB-NMah%KTcmVt7MH5xXHcA^*ITg+*G=)GiHD+@ZN#C> z6aKa-NeT0HhcF58q=FSDFV>7(y0Lg7z&0>V(cOc1T8>kgDn&A`@Y}d15m5LVu1V$- z<_o_-Teya>Ss?U-N^fJ;O$Xxh18vh|4lL03>HkIu>9bfDI;7@rj8HFE1lF+)EK&KF zB0ouj!mGXTdSEkuP_!QO`+!MORDQzLCkh|(qW@IKJ=_F;BZ3r>$`A!@7iGeYfn!X# z2{1_sDjemoC8wx-vk^}f?A{!QD!QgPRlF~}9jaiwv*sRu8nh^5sl(PkO3|JKZ31Xx zoTKwwI1^Hkh3<35VQVHEKFIb&%#6kQ5?v5T*p9quM-+0j0zdkD2H|x478|%2;T-&)z;8Z&tMF5QlW;u~ zzn-%lmeof5RD{psw-Ud;8AW5A#Tl7-InJz%i5XeB#g992wpbK|*chu^g7v|g=}zzg zV5%7T4lVFIutfYEVq2q)ctI?!YilM_>)Glu-=z>GF=;i=6Ytlv)zO?w#i@F>Q`()S zVsof%MnI`BZ3u`(zw)U~eJk{7%w?mqf84jnqTrx zuex@W?XZvb+zN3j8isTG3Zcayys$zfB4qw6u`(#y#MtVJNint%t|E57RboeD+d6H_ zs_KzVZ28uq{a5StOM+m*W>^${-4HZ|_W_fxR`?xY5@v;u0@G;gzgk2!v&|^+eMv7j zhwJeQkM+WN1|FS}hqF#theH{Pc8i~9-rc}-PnEtGn1o*8{lGMkfa}Qp!%gmp>cr-@ zLhAr+t;0eJ9u`1$l)}S-smT-`gKMgd!o(GotndSbX-98r@F5gQHe^3V;fL3jO^LN7 zvq!72UP~keqDh?15wj5Z38epO&?!u6ljal)tEwN2v(2)WbX}+W9LmI+G2KAnN$4(` zpqp_UFH9prr3=uLVN>`?;Aj)hL{Fe~OWXw6h%jd$Owz3im<()Yh`N##zDl3qML!0Z zMu|!%Y|fu6(@Say79paJDZ^r5Qn0E3!eoZc*vv4cn;CxID?ed#e!>l?YgK_1VJ=`f zu(^gSywaBfn`=l|uc6qSV4E>?$$DMK)OYq4AYE=; z7l_1doHxP1K?=E4E1=fM0a5rRV44T^-6(i#TY1cN&`krTyO4A%OszvM-Sv&t+gjT? z@HE#}ed~WLB54FFJkASG1g54`>BNMNMO;UC?2c_>b4Odbwq%<~?gZuPd_#=xWQ!Ty z^9_9;sT9f(DoV!M9t7J?Di3kpY9m61v7=AvbUcek3mnla?T_D0Gdu(aDw; zcM|ua5qSw=48p>U{4qE#ZP>Szmjcp#Kf_-y78x%J1lqbi&%lZJp9JscN1hk<97=`sw(|# G`28P3=?a-zyI?$=ZsE&<;&tIisH+X?rF6P_=`?!=t~!M z{~dFkavfh_U(soaUB@cm(%(G)w5C08ua5Z3=(Mp=Sk}mE)|7iaK3~7ich#J4t)8!E zEGh3b^-6H<@5QAlDT9> zy6K!(*H8bGmv25VN_9PQ#-E(JdDH1@eF z>E}c>-JRg>Ih(eecj~K8f9b0>xe8jL?Cec{?n=~vo^rn?PCw&}&3fUiGft-!YjlN` zQSHmmIqN0d`JbDjhShK7XTIuXr=L@lWv|@yl5>Ce_tu^LJEy*S)8@1O$Dcb;Cd=Z@ zn_dFEn@>IWRevHFMpe_YO=tY>@BQBI{HLCGR))eqIsLqsoY`}$e#WLhdDWk~KDS=+ zs!f~!{M476dHPxB0PlNSH@A|cZvXs8vzeszdK&RO|D|y~t;ca(Z}NWvc=d!bE|Yq* z_pjcp{?onsSPad!#wX%*S&}x>iFjGktk=ifAC1~yLRIxKyKL5zW~14Rcr^tET7cw> zR&-Twrqp1Mgl|`iJ{yfBN}@Q4`Hz1|4EQ~NO&)2~8fj|K*^5Q(!!LN=-{7iVtLbxD zqv=qVq)9y%G=_>O0%-lw1P!Rz+GzqZf621u$nyGVlr={55FM#E6LnKRqo`310f?cX z-fZ~S)lqANuQUQ`J*t-}rNi_X+`9kxR9)%VY^5k7p`@UOTi zF0QQAv7#J^{hx|7!2GYz#)_k&74%KLYXI6Yctx`nC1Z_ygGteL^GKa5P?nxogOnBx&gx!?)F;KBv6Rlh4q5BXnUz^+{+jb_x9h zQu>UzOK4CO%D)<<3Fbsz^dha-xPW#L1GQSsR{{7FjoL`VD7MjPagYB->a~%{V@7Ht zwPTKL9Ji_wEvt=;L{IyT-<+V?T2gB)qh|Y~*(6$q=xRJoy{-M0`lFsU+wD$A|I?QJ zjl}21pW%Wpeac=bX1`^Zz*gC7Yx{UU}Bb z&pCB{bV;*$`b%H>@|Wn5OPgb7Y$|?T-pn>{dc~{G+PvwNr_##VXPxt>JiVe?w)s!> zTD1^;OlvRSOySdtCtvdNSHA4eFmg`)ol}2zz8n8>z8fbFzwx`Lt{r~kcTW8sZj7CJ zDq8#WQ#YM+MjE$HJ@w2@r=NT3pPc^6O=&Xv%OsBSxHT7FmtN6)ee>$(8=6-(uWDY` zd{c8r^Uck-G|zeYD_;7tv(J5Nb7%8y&9^rnjAxTy#@CMhBL1`6k{{LoEq)}vJ^60q z(fDJ@*W&jj?@vCO>}&kp=vSIQXne2n)%g4IKgQpVzZ-ui-Wz`}ejxrvyf6Nz`2P6% z=GVu*o_r_ycJi&{Uz4AWyeIw2*pJhnrf+U-t3OuzLgU@d$I{Ch52rs*f0jOy{v!Q$ z{YUA)r5Dy-U%RSyW$mW=m+Jpm|7QJP>R+#4()wBBw#HvJKHd0KW3KT~9LW4DgoHnw-{TVtOc`}Wv(#(pw3w)5-9+}!#+s^EfW&hi)K z+1cItYP)R5Q%TfqOeM|ENU}ly+VKfdZ6e}gq)mDB{E4XD$RC`Yn~k!!UC!Gr71!D$ zGx_l+MNxYsk7v3g&zp$bjrPd8q}gi6d2~`#>#N|gVHI?TRX{ySJI$}SP%VByEzGpWRJ8 z?WOt3nRb%D>(V*Kb}Ub_ztlLj(-Wdq9Y|m*ne5bTl(}5ltyhOFeOB}v&yGghQQn$? zSXR#PeL@7?X-t!oq9$Lpb&x3|%CL$SQk7?XQ9f?(@G(A<-)7C%+i~_e-*Ia$>1l3F zG6|Ka?ogXxxA#A2?~g+ElQY?0Euji}IweR>h_dWMMxj*L_SDyU5);_92c5vKj3HR} zPx1>30pBG>R54)r2Vd{#E6VS%t2Dbq*k0ayH_q?0yUEbIN&YFjJ2Lccn%`}A$KBo5 z7b^7rB$KraofDlVZzV3?q|rRI!ggW#G4}?I@AAVXKfY+qH<2ITy%bC&8^qQtyNi|| zw_YXiQ{>0^O!m5q7GK4$t^D|;$MaL#9AX)69F^MqEeBoLF3gShnL4Z;E^fR(Xmjki z17ygbULuBUz|enl$y408Ac0|TXFCr%fn8QnpA~a4!Fcb~u#vJEgk{|3ce9&hpOi9} z?w8!n`mDBW8k;`Ko3hoi8NTrsf(0kbYqA@k6k&ronT@H~w3?FV;T$A+{k%?+Qm;(L zRj%RG)wOCS+xA*D_c;v=y_*etn_PU|mmcS`pn2rFzZ~i ziN40Wslp4yNf18bSFSMj3@7>IOJ_QDU`~(-o#;e($NL3N3ZhF!Hs z^i@;Xr1m@{M(iBbI__hq&O4Lpk=iu>1RvI#G5Ou@FPWkLoiQ%w+@+#UdZ0Pe8Rv3aY|l>kQaZQH zU)DBvmUFq62jb10tW7Md*;xVJ6?W?!#jU#|Rnt8hq!^CX<2pZTGu@TKWO_1KYvfZi z-KPn4^?a?`>OP&awxK#z2PmYHXHYm<6!L=yC#{mTj^-EoY#)Wnl1{AW_c@qU-D0}?*++pz7C41wx>R@oQ$F|PSMiUIr z6mNEp*7wd-<2yyA)>3qeNO?{(}sH>dw0-0Cq#SW?os&!T#;v;mF@boqHodR6Qb|Ld3N4r z*WPT>IZo|98h2Ld`=PjVtiJcff@2DFbtVNvC>r$x5w*u@wlY2q8!79*Kyttylg(aC z50TF_3p6Y9OmYmQPbCjxJ6+?(h*qYPD>O)Z9I+f-kRk1!Je}^*J#j9S^7J(+j3hEq z0c7%wP#_@JPN(}4?l~B)NTH(ah8~Qp%qN|k*a{yfGwqBIC`pmXdOLeo6g@lM3Yx6z zHuj(bY6lQ(_tN)#BkuT5M`%x zECiWPilPmfZGD4ekZMQ=$u z9EoLq6u9F+Z6DQXfchK>c=b0vGaDV7KLq&Mozkn_#`7i`Om83)&gAR2rqk2-diuKL zkNJAWy5tnTesf*&V!nQ3UGgHnj+1t1w81#_w~w7p*YkDEbh?(W$#u!`d>yqenQAvS zwx-i|9%tJ%^b$`wWS)J<%L85S()D;MdbvcrD3*8hZ89Jb_&$jTCwNL~|5Z@ApV^t~ zA#;R&N#-bxg3NX8$b5W$TuYfsbE7z)ZUVDg(H;{$>cvYiD7MfXXn-JCyT92ZTD=)? z2&8Hrcb+LqJ+rfVe5??#fgjH7uJ)AIeWt1LyRCBtC!1@t~O(R1g1U?@`6$Oh>~LSRE$a5&Eds@;2?RbZj9_@pQ~1 zJ>OpGv=g!uLru`a536o!uiDt&c2oAR>hqxhI7nOp?a_$!9%h4}4-G^6HzbA|&H^WUuPE6! z7e-J`hmjrH%Y0>LWgc}_IPrGObh1}0jN-pvEDlBIAG5xV7JZZX+uPqU$IE)S@Z`qC z>U*)T1(B1Eyx0!txMnyyf*RTzcmLhvLP_XW``>krGCu;7CfO>fP1no;l#Om)Vxe~> zz3ch?!ekgmD*lmoA*bJ-Ypj zAYExEJ!LxG%S}Hb4hOPAoIJS2QIL`3q|9O{T_$j0uLb+K$EY@M1f$vLC!WP#*|a*MV>koVcUTL>oeS{>0dLOReoP678-e8wnpWICLr{ z%5fB>L<4+jd&I7Gfda98(K`%Z^TmSiWxdC>XsaCV#2wgw?+jJ@v|cwjCNN;x1!ydPG7_qL~t@+ki-VQ@CKj57vA7{zVHT5{#9;+(?3 z#B85NaN}tfJ;kIVa7#?wrnpo&;aXJ=8CoDSe<%&fPS?h9EkvzJn2A?|fmx#63cp*3 zx7JP1&L_`NJ{XbS6s1a+Q$Jj(mnZ^(2|-6CNl{41l^MMJ0^;ogsT~(FW4p4Lag5x^ z?y$inniatMN7g=E5TE}{gN9+Qrmo!szbL5frEr?lH$bupfa&D979OXmG@pZ1K4ogr zU4PoTrsz5UbzA^avx6>;5gg@H*@s_8_Z63L?^CwcmoZtGZm?NU>ZO7q{k@k4jnsJ= z9{1N#J|Svi9$`AguuSPr=;lvqNmA)%QthT>=%>9Ebh!(@shcN6yW%b}c3C$}p00`B zflxV3mtGdHiK6M~Pum1AH1+BvalR)Cy>L^qYob4$HkjztY10wI(XIic>-P^paGKv5 z3&Y*oI-WC_>9ZzGT(il$<8FOAdI=5Jr_*zJ;;#(W74F$=tAkkZQilgOpT%HFiMi*$ zU4k>EqN$mDeOZLnPq+rFsC=vf-eU&dMOIa9bH3WW7ru`LA`QNtO0o+DhRvSX$lY!) zG5(>k1R>ytKg~zfDo+$Q!Qs(1a?F%)>-Rl?4oR*nJ&zl<9pu^TT>q)xM$92Vh}3}W z4Wpr|C|m{(QCU%@9AZ3_@Ww5M{D#nS4^20{r;AIC?1(M?JD}M>1es5 zX`Wv0Xjd7>(@I5kd8et@5vkJ;WRW;|6gw2;jZP|j*Ycx12!`BlA_7-y$?>9S287uf z%huY5owX461Tv372cew@cfy`Qd zVnC*0{*Q(EX9EDT#OQ#*m_|3&WIQ#&BU81!ntk6SxLuks*J#eh0k^Bg84+06SoqOf3fS!IRJfk1~Qv9IJzUo`8FC}pjEVH#|cN<>v+MIrzy*K1uxjwcV zG>R(N3N%|fG0doPm5!>5-I2U2$vl$(Ji_*EM;jZOd5dy8f=Ily$7ZW!A31sR5+C;|Ews8Kf3OL@Oc@$u{KDE zAG16Ug%$_A&LMwOk62ls7zv~wWSx4ToK#pONy4DEwGet>m2jz;6_(t(!~&e{Ze!!b zA59?iYuS}%bDHe3wJ*HE#5!-t-Kgu!5*$>)xbjF85{MWgkm_R}YnTWp6GF>+Ci!aI z)FtO)rJ7uqWcp(Ah>$4lzmy7A(PuZ_RNXFsUG3UBz6aRV@MXu=KI=Y;biBX@JHSLKDnFx{$OMzmC_(YWK`Yi}aT|8A0LEFm~g5NU2hK zQTA92y{H0~OzE;+@9-|`v&=@;ZThXgr~mahs69vW0Yvr=@rDezYhqQy3?~vvOv&XA zjA~FNR|EBq`Jt=R+!Y+#rZTV>@Z=F~8BeaPK)!M)4Amu;`N^6aR3Zkiv*L}INcM57 zas+Q&@ph!At&v|^z@(3PMvXFQn z%6=drz&NNVvm$85QJ^ms3Da0Rl(w#`r#0BN9@ti9Q^~fL_G#R!gfQ`v%c7zQ=5EzE zL3KNXy-$boS#(x%-V@toVo2kyl%`mA141)g)279`G9!cezaaxTdeHAXdVwcOqdqzN&~R#i(psF2hopHsKUf>m0jJ?HM`hl^d8|2KM>{WX!L}Ajh;}g z56^cJPoa}4uJRjEiblI-nQy%qukxGvf=AaGcl`FKF58U`F@^DVOVlhK0|6)5>m_`V zVX$huX#x^-!bL9<7lD0ok&w|I^&L0eG*b_f?R^i3tly(2l4 zDw>YW-VC$MUI3Q`1-)C`vlIoLs~S|iPz2xC7E;o3bFy31f<|H?B`s0n9dAqGc+k}T z5RH3SteB516-i67Vm`PS1RY8%<}WK`N2Y0E88Uc7%))4>S!fpUpjk-Q25IgSOGT$k z%3mDK!EbT)(M6$D>xHElOd`RRE@{n*%rK+~1!!r%h=~C!uvp-^@G_d&i{@sdeA(ez zMst-luSISDq(}gah+VLRMQzvF`=}aNbV*g1O)~GI*elupCaB+CsNcj}&16xRMAuI6 zv821ra=aT_aLBXouP&h`4a^oAEQ-PAM&5*{}r#S2iM&Cw`odTpo)HzoKKNlq%% zYGTqzwKj2DwT7IVDlgY_39TfuB;G<5G^l@W`ARLWDd5-^Yl5r<;A8&w-4=W4lGP7vXiISkadnX`(HX6* z!EsE`JU)7?OZ6hyT?uh+Wl~O!k4UNV!uo!QJP8behza;Xh+H&iI7Fv7i0ZtyzJzG~ zAVet4_2a1Wvigs>4$~nlPQ&#dkRU7YWj2y=$m)T0$rXHup#x>a$LW#B@${NLy-9n~nZ{uX{Bq4>m@6q&3^d@(& zk&Pj%s#+6yn0+-FBACf?DvA`=rLn1KVqJ8#wF`%z6b&awO`@rZ3Xk!wIKj_! z>C#0%34Ppi1B#;veK;Ao@4_ItARqX;pzS}{Yyt!}4^?p)<~<>dV11b&v_&axJVb>^ z9EMrKkUIL=rs*IPev)NTU?wh|R7q+SnlBgRjph>*w~In3as#k~S%^u;mn`P+ud7Au zZRGB)7R#XzTL_|gj*e*to_o!-3)9*xV+n!=$K`^`>~shUMxwpvH9G3s2s@~6r{t|D zD0zX*jEGY^t+!N6plWces*S{8pr~OwX-H&j9ur8qMuDmxv-__oSen^w@$UVb+;B>q zeMYqdY8Z42v-QWtBMKE%{f@F-tvMtKLSo1_8vrm8|(Zymcz=h4XTPkY~m%cB?uA4x}^hWP;Ve6a9+tAhkn58dM!5sf|N2fXNm-EiOwnkRKh!fv zha@CKM|9zet>8q)8*$z>$yWW+Ja|o!C51R(eE`ZnsXB<|T6y-DZa{-%LSFmlaa@pZ zsDL}&6EaoKm04_)r-c0i=Tq>A&9Tj4T@;0c7K@2$t1*98n5Kb5x$fdL$4EA*RR=tZk-)ZkF0oZ)9iyWXQD1J}vkv zt+xIlDN~FTxvhKGkpwc&DlXtzBOI~wz2GZ9I{%1$H?pr?Ol4vhrK!J&NUKXQ$VWxb z3S;)PbD$I~ra9~R0Hie+n{9^OB1Y)}HlpE1bEo|1p9-~N zW=IzY#r#za)=W?}uQB+V^!52*Rmh{93^)fl`zaznfe z*U$>>F4{r$^P1nf3N5T<#X9WAjQpao7m_?%A?PN9In&|XyQzcm_Z5Y3Y}DD8AaM-(Gukv`QIQF8u`OCM)Za!8~B6T7LQ#UtqcHE zN_)u}v`2=EpU@_?a^yc_A~dL)EFPQFw{8j&D+k2qyE%we=vL%`ErdumXvS%!6agZ&**`-QagsvL-8f#y-UH%d+vzA7ALZi+=VB({J1cJ>f*kHyzI-Y*g=o-uO;Wm%0 zbtyuWd$MnMXBVP(NzAm)7)Y4@YZylTJWZC1kl`K+V(?g_CuW7SE<0Qj#p*Wy8xM}O zoBv%OFFxC*Q|Tj*Ou9!9`SU))Y?x{}W#}VFU;&UlBDipnmA4>4ZXL7eO7^I3b;xyS zTafoH@|IeHp)MI37;Y9T;OSR zfvBPp8SsjwiZan7W`B8t1i_jZiNsU{GxQb1s0Gc%Bw^Zb^>%3gLgz|K9PErnba!EB zeX$ZMP$F?Dg6O>4X25dvCk+7#LWv>$QoQGoXt4{i%}Trtx=(LN@^*C0F9__PH8w`> zl0-c{*8UxIggz&vw47$oi#^V0k2rqOkM*{J>kw?Vk&fbgYc%_enE}Ri0R<9$et-vY zz*{&Xt9eT~NyQogCohMrB5+_n2WeCpe1^`A{aw|uf3TS;@uVmhtWq==~<7lw$=Jn}~kf8Xv>dL!)GOd1um^OnRE^-G~%^DeHK!s6!dx z2UbV9_t~2@W}(}QhT$=T0ZSK+mc8MCs<`M`?lpDno=aBhJLC6Wla zl*vC~;Iiz)8bd|P`^GuWFSYtxd3wmkS*?c6X6GGe+=j)EQRs&y&%B{P(EZeLT@^tK zjZ;q@ zo_z#Hu1r8`dMWsp?4GSC3tIYav8{7lwWam}@1DItZ0qw+wm{$l==_Kn^w6Sn;Z%Z8 z7&9KW{c-=dHLp~HpKPtj@`XfI5Gf|^zGUx{_9ioNDOFTCdT@X3H^n`XrD`U@{}uxf zEx;X*ZD8fegh^a8Bn=qvy5M+Q#8K|e_BYR=yFRCvF?%0X08b-dti38$Y-lR1T+5+Z zr9#x)Fb`nr{$H47VzXv3?@;od3k|2q26}Eal2QALjXZ)vWS7 zwmfZ~;c2W+KTRk2UH_PTH0fyBniVjwn+HtB`JMyD-;WJ{onIaL{z9OJF+M`j_k{yS z-bHM0(-CKpe-~QF1@8gGy`W6s=Upip)y?=+$_pM){@Vn-4 zk>3LNyZ35j4%YP?5}u!j{1b7}s_JngYpZ4Ws1Z=+W#EtC{Htx!YzF zsFh*{RymQ*y6{U~c?~CbHBFNW|AC}5x3&|4FOwZ+-45JtwGTd>0w$>}7VI~_{`4P> zCTtx6F>5O=v+cC}Jo#hN7EO&40XPLKND)(P8Zz!rb~cSmgpt`LtoR;iwpcMQS0mR& z6w&UK4?BQ#c#NxYWdYiIWRYQgS-VNdM{;coDp_CFC5JcO!!Z1m`r}Y&4TVW;xtuJ3 z@hIC}8RfZoM%ja?PSvuns#?PWKgV6lz3`x1F+L`HMwwXPT1NSUrt^;D_F6x}&S1s! zQ$lKyUeBZ2KVaA(LmM9A?^Oo5ceex$@+7?j^WaVx5i%KM1;MnHf=qp(SO2mP`SI55 zipHA<`o^1e6dS^LzmW01h&L>Y*2a8;8*?iZ9a-jC&$u)9z?6%txgGG5YD$8s30KTY z6-(mgC&fLqU}$$%mgR|Av~PM!+1vOai7 zg?yNDv;xw7CRk;t)!ji!fC%6vkujAcUi|1o(BiYSI`ZoWM*cZHBVV+t;|I-eBZol} z!sgvQ5h!kNL~N4EBvyfG0yYL8G|Uf&|Dvn9C+2=@B4$0uh7w^ZSm7-{e(_PPC{?TnVpP5u_4| z1WWPAFw!Zd&BIA`Ux>Ynryi=Pkk5zJVH-P>HQWSBuMdsEPexKY`eEypZq1>@j+2SoIgo&lK1YrVKT9C);_bJ)IGSEmvb6$EZRmFU}lpIJCC(!n%Vt!yMhM~?6 znTq-A$}lfc#bn?0vSG2Rg~uyqh*vFEINS_jwEGN;gQi-FR!tmO{#GD?1J)-?rHBUr zA_^S8NQ$_|D57(uQp88qCD`N%PZ0;l!nk-@I$GVzVwTOr3YCC~QLF?l7v&++XXp5z zl?|!vT+xSg!qOMzSxx$|n)(;zy+$c<>yj-{l3F9pU(0L4^)6jYzuK~r?44ADhH<+o z1cZS9$Al4Vp@mBtGZOO;$18QAIXzWGqs+$x5KCU_1tB3at>0G4xR2}s|AC| zt=_|hX8*9;Y?h<$R?E3HdnI(YIOxa`1s?yZR3YglXbaZW2VdTsQ8?c2&KL<8MUItO zZ5yW3-E>{qAQ)kL;z5XN-ixof2?Ax2V$1EZEnh*ORa`7vw^XJvudS?s-E0Ims}|UF zYJ048TErV{%^i@ar+c@}%_`N@Rw}a2%0aMe2u^-rPd1AuT{rn8124PDkJy~+DH}*s zdpcs>n*$C8aRRGD7rkxlB0D?GhUnTSDkrw%nQWkHujc60u2{?8t5j1gE-dKe4>;#T zXh@zbrEN$UFP2D#ao37M5u0czjQckY`w1u^2s}pU2&3x8? zkbLWQHB}87dJZ*wsK@Q7!>a=t_b8w@^iM>A4O#%A-}I{ld5ZkU0KcHr?xkx>fQ967!U(xG z+!duA*J(QTam?W%G$!cUK4^wxccuCaxyBNPTpM9G2t}%-ZyR0U_lR+MT5^<7p)KmkSsdU*il(4 z532;j*lGQQp?i?b%XM&JkECcLU76i`As;49$uvZw;fm0mK)1G9uwOhR2)$y-*syhi z#`U&L&<7rUBuvKeP@`R`JdUm)3=1)0CKZvn#D`caVhzM@5EiVu=kf|HfbJ<43hs&V z`g>Oj-U}5K6Qdp=YtzT(hOHAcQZGYwuvf8_;ZMd{t5XYWb+o)-VI>%}kmiiHf^w}v zGgWv1YOq?D?TDqiKw-}c^%sI4lp#yI!{aaF65dKI;cSQKSR?5K52gzN+KuFEaVY$ot9r{zc%Ejzx?1KjebetV@;rCGNcicC{&rn}a5n$*@{VYutwi`lN>PBL2bZkQLA8r3QT z+ON6z0IO_LT+!@{ou#(tm*nYe9K z`zE=t2!^aE7ftwpn}OOJa3e3->@n-Ht@OYVDl|@^k*lb=3N%Sc7?l+>L{IeXP_FA$ zJH-|qPVGFN?NEMcBE8YCDYo@(hw??IDWn4-BFL!>9g1#Dq@yzlXFcxiP%ge~ZdON$ z^yw}j>e&wEP7jfm0L}-|DGnmJp``x*>xD>VyX1x5%|#CJb|?YK*GVq`0dARt*_g7| zDPU50i<1O?qjR@`1TIA19w+^qm^@*&LkR}-Z1GIgWW%~RW<%(w-;C4vshb|`l? z%l#}g{lBmev=O;AJE!rmodrW6P(q?76ll(+cIS%Qnj9UrJD1gjE^#&W2Le|i%JF@$ zdV@x7bBP7U=j2TG_EHJSka0rlv|tiARrCNMz8YCEKz0Uqh-W4CWa^K_tyEXo@I@8c zRn_d%GqkA7%#m^1q>7c34x;DF>nR}$T8Sy8`TUHv9!xE9^g*Nb1y{=`m2vNO!fKap zNLv;5dLc|Wwk05X(IJMd!0#B=LJ`Q1stLKN2t}Mxh9V#<2cGYqbF}76^3aq)5hRdc zZIjI5A}c_VUv7$WBnxsBJJX@TfF$Ttc{MphTZIZ(xi}!1Cv66>@(j)ds4!=Oe3nqV zso`N@g05iUa_NJD1I8`;C%b)+e6oWz>lrLcX37l!jqSG&#E&;9C3V94>|tk zO$Gq03;pk#tLSH+=`1L(^7)!|(bK39v`?KB6;;>7Ky2jff)BiOwKsC#=qy45wZ9=% zGZavR(M$vvC{-tHSzjK!AAa=_U4j!=wCZ?zkYD10Usxg$HZ033_K1jfDw)LP;p2(f-9)dHj7!{dhK?A@RVN+~X$LHWz2^p8fy}Gi|5@fm z_9h{S=1GCL#l>-GI@ON;{%8~VDMd_FV7lBRB#9RvmYjqnAVtS!E3kgZ-XAgUjwg<1hU2FZkRT@gW)9PaIZFUAZ zTMDGvJ5&Xdq_EbtfwW?b+q6NziOiYgJe|GMT6LR5XKxfn=rJq0kMA~R9HdN(@M|iY zlibq2=(YXSEZp^0-B!j+rRvq)nycD&U1*1@?Inro`hHqaj%05O%=q-Qu&S%m4gjA0 z6JX4q7OeBxm)+PV8}v^PZA)CzuWc6Ks;}}0>liDm?BC5k32x3wC%hKx?5|-rg^jzY znT7T{v`cy;-6co2I`NNQ^ zFI3uxw-*lJ?dyTm7J)gI)eXU1^T08O+f&&#;r+u8U!)`3IIxfHXy~YmEwYE2mCRL2 z9<@QySQpuTHn5tq=Y;1#3<^DkX)X%)@K%_Pr3I^FN2S(13bn0EI4+tB-1P&xe&A9o z=e${KWIK(_*>z4Y>=`tYfc7 z_0tT710gjrwq;4F*+6!3ki+4W2J3=HU(WjkRqig%Iy@JJpKNHeEs_@yGTu0lLh_mK zAGvR{p|h`8RzU1eCiJ^(U2bZxEL>gPxQe}z`Zj@TeZEh9)_T;ZY@Jx@GyAFVhdCz& zP%D&Ytx%rqu%|o2m8aeG%Jab<i!PfrWwEMpoKvNq%%yUJnt(vS!2MR@~r3Ws{Uaww$(axNcx8}Sn$#d z{WDB?_SB48HaLo!do&w$ttxdVzY5J}FY)TsOrK`sq5J%D7CXe$RgcUn<+bgf=lH0Y5Q(H;HB+OT|eNY?KNEU>zf+bU6tz{mFw+#UT767 zh-ctWyWsQYAX||_PPV$yHQB0B+#7NpD%<&3dkad&d7rp9K^k(XckB$g!B0CdZP~cx z&v7_fb98KsQ)O$NSU1M=u@_8?VSKUW5pyZ-p4LC5&z~5r-eV>~W?Hv@29K%R zq2-NMKFQ*EonJfbHN`}Rm1B_%E!XBLL!PH_aPLHUbc=r2y3F%!c*L;K`bD3__kmc4 zUHQkf>4I`(*l3@fu!*YTXWoEG6wcX#Vz8;&FGyxl7eSD0<(fN8t*%Q*xWusF zgClaX>opuiNi@hddeI$wY&{1i_M{A(!peIt6hMXSlKk}$?~q-jep`Cf z1@Zhoq7IpnKbkZ0M>j9tul%{GMlZt()p!7YT99h z*8+#pRs70QudBz_`9AFn7~2cKa<_8;4U?t1QG#vN<`1qVHhCEYGu%b{3vt|gv``IUF^?NYqt zZZK3LNOLzyy_I1}v2gQY+#JSKh@;j%#JzX`ao=$^O|n70<$h3Cm^HRh;DLDMeW+WC zZ&~(Te&s-yAC>HI)q~h7CCP;=-N!w~XS)X7$A?vcH)zb2e83qrawWklIGs*0Yzvq1 zq005X%Jp8Zji1C<7%K%>0O#CCdBOeeqgZI^?juzexLJrQ?I;Yp&dC zrMiduAW|0xwSv->8?tFH?_f6+e%*U2e%(V)`E|!)Y!{lv92p`b@{F`M=pLEy-W-GC z3%?F-k@*jotxE{J1i$Y7e!p%{)vx2}QcgwgSk7OSPxlp1m`n8O0xIz77L5u#9S~BY z!uxbRs6bd1#;Hw+F6ht6Su#XvS&Lt$&knr7mzt{zLI%af#`fd6{jlP>*|qoF>>91> zhIGJlvpoHkEBd^)e-n1)wLLV{YopF#=5rD8s^{}Oak;#;F=a7%Pdog4TiI~$*?m*J>(v545A0=2F)IQq7n-6@fpFK5fyTkL9OK5U!J z8ZVP9u#$5=6zAkL47{3lx`-`jnYmO@kLgo)QgYZPlk)18vpy5Te67Xrlqv64aLu#L zYUo>>-)Vh2<`DKx8=B73xBIN|(Ixh6Kiivzz9sp$toox5Vc#^PJ5S$=EqYO@+1tf~ zfl_)l|0CRqRc+DTFfH9bZkjc2hsodvYWv$yIncDe+4GRSm0x3fD|4*O#!)s_9#xR0 zX-C+LNHinMzx)@5EcWxwF0>F0c@5mmA9h2O1N4>R2R3-ju2;BQxs2u8m)cEjD7H1xoP)NKmS@f=(@3r?yb3!uq z?lJthsO-|T+&zL5pqkG513Ddz!kR^iOUv2Gw^@?J+b#!q)-q}9htU}ldf0==(P4X( zO})FLa_8grs8TnYFa+1k0%jl346UAPH+i!=S{0$quzQW(@~f@}THi6O^^>$$d}x-O z!b-CcXm*7t;lP``d03ObP=|{)F=>VDVDULvz92C)X`BNNmWN^f1pW=ukV<4`4iX)DUfq2~$X&@Hf zX#WngnUBKYKP)G;U-dLW*L zqe1R#ret+l{3Pidq(fg9Ca|x%;W=CcR{E6RRSFs%UmA7w_>`}^Xz^7nOkm%y%^!ht z$qsgWruWbHdK||2PwZ-9sDI8%;GWo9+y;gv#@-a4axsC>W|aSvwOJe9W**2Mx!6;)cZL!^45WH&EJYXmQHnsQqJ`mw*v0YaSX8oOe-%#e7{ z!KJs*CeeA{=CBx4EsXx5qPGVx(HM*^B?i?)Y-OaA7}TO8ol7OQvXz4xPrd4>`K3~_ z!Tqyv*RqC7ZX?X)NoI#9nJE8@i;Rkgo>g{mhL2$Ce1Ycc4U7rLLW_9-55sXd_;~24e+LJ{YIUAa{`(C*3bI0a zJty5QB#=Wl48tFGv_ciEdSA4t?5X0w2C1it`3Gsy9r;9o3nK14)V7dj0g3^Et<|c1 zE;s#U)1JGu41QVM#QDp;De?9GdHNcO`~0XK2J_4SfjV?!OwdLWs{b$YQF zAjqtPf}0+WIsn}4hn)g$lKd)%%yx(tiD2A|&I+hZ!D(mP` zq}vZDDEl1)gWQPh>H~WJL3^JASo3S>#v7JUM^%~sS_O7zJ(3PyVE5PJ#A7nSNKei_ zuIw8v?r2^y)_RumV1iHr&ScFCH)Kr6m zrXA~FzRPYS+Oungs@9V^m1(CZh9^V@&HqJKxDA@^v7}VKaO}~r(Zw1ohqf5~s2JWf zo74T)yW^pbgEr5V;~+{R{gWBEv-8@kS*xXu74*^UHqQP(ENQwSL6lEs*C?6LZgmtN zlL+T-}L}W;Nhbv;Qf=&XqH7(}16W8^seEZdNED*Y0PswMa zs1vtAjb&MaZFl4&>5AIa3qDs8x@~-HTUZsF8&yzwSxk;7O);izRv_{<=~6-`XY%cD zP-|~BzSkWcxj6Y!+dfaD#>m%jD3K=N^g(_zzKI{-BvKcYIGRi_IbxOhgh)gSu(bh^ zRAav$y7m8->m0~d^~=5nwLowRQV~ z=JPJWmXp$Yc+BUUUGqTxHZOrR@ZE(XbUiM|ZhN1pAEgi9wS=kO(sKT|RiShS){K7o zfU0Imk@O`51QT}d+5t&bpz5O=E5=q+W zvXiFV>i?&m633T$JIlQ}m7BTa_FZ5Tko=2|$A;_(?zioyege4R*a_BaBE`Cga*uNF ztPX*wXOHraN-qN(+a%2kQSTn*x0xc+cIA@BJv)9M;yua(lEdK{WKz;UpZQ!^&kMOVin7&!c-h<)S|S%z2e?HGJrvW-n{!(mM81J`St z6sBkcTDWvr89eu4qvXU>dz6PmkP8F_Lk*fJj7ziipsB*#Gt<&|yF3y($=PtgTV2;y z79f>d4EKv~BsSX%MftfL^OI}W@n6QT$eS-XPT$L#E?=WDA`e;=i+LxPx#O3v#o477 zyPxth+yj5@OEh2YO5Wg0G%M*!w)+xd{z+~}gToWIV!;?2Y}EN<+`t@Di8eLIv|*k1 z@uEd+BrSo`)$v?S$~MN5#l^v@|BS3tpd(-&=Q~tm{(IS@z7T6C)WlgSq1}hec3CQ3 zX?Jx$2-!R!v<;Z4`G8R$!(~0O&C&*!&M-cV^*3% zRppmigl5Tu;Ow1(#`Y<)^On_X zQn3*;aGw-uK_}wI+D{mNu=75**lk#4#ZtHMiuqx-%du5eY*gISiAR$p;ZRRM96DIL z=C}uEitGcL{D_Pqey!K$C~il<;>>LA36Ziz3|rLGL#{V;8{y1sezD;^?N`ps#?%yr z3!(Debl8upu{iC=is5wsB&oOTMq+1XTU*pPNm;{fLt*^rj~&&17fpo#LUUXF_*zTZ zO@1H+X4o?P7jF4scC(PmDA;}%K-GJKkB6w|93R1697F_i+^O3oolx292Afx>_l8|C zS|5z7m|u{9Vo$wQM!+WBSaU%U)|^AtRVv=t=+um^m&z&jV%*wT*Dm68Onco_NdCe~ zem60N!byfq22X#@{Rn8dK|3rRn{4fxhwriO>H7UP1oSWK#Kyzyt-!CQbx_^b+Ru`p zE8BJ_s=JnhZMSZoSfP`cFut}&w@41`1c)~{mQ+k9sAevMYNq<)AsfjcA;7GRbH^5~ zYvRa=9We9V7tYN_`BB-W40Z&7D*LpRWxkA&v(hj1J?Wl(z)I8XZ6P>T@F)b7z_p5n zR?84_17*m$TI+cPFKEib6c-5`z&_3em9{kYtB3Nx+NZ_~AQ1f_3mT(q(F z-&6&ZKCsEC_U^9-30?^;x%qu_;Rae&{TI}_?L^+xIz@f zxUthm+qteJ@Y2pqrHt$)^IKD{V!Ypm*f5KSi<{Yp>G!m1bC4ka8P=w z3X4hbJw-3CTP&14?;k)fd4Hgn0;%BpPcIn4+j^VEWs*4RS1+*3p z>zMygW%^w2pl1+SLei5$x*u^hFbGnoUK9u1)$)&7^`nO{i>b;ceVIC+w#M<1mPB2p zg!;U_uWWAE?5$|rMTz453K@1OUBETE)!8qFYvjCuA&${#n?u)!I!5w{Fc{1$FjbkG zwGf;Pq`ch1NA*g-YUcK13+nO&3oZ=2JatDCC}+L9L8k>o8z$7ZA=x0fsx~Mi5@?RldQC{ zAKSI^?IUG1o^t*QrT8mhK8(`xb>}?2aGC&ucb=G*!+Da%u&J`bYA>B9!ErbL+wp2V z#gxvCewdLr^SMs;VAvMzSmy_+rrUY7zouRQXhZNX)^95B(4*)aqhNYE+p>A67L8LpDq2 z#vhp=w~f>Lf?XPyGTz0w79k`8O^V_cze5&7<)~>#Y8{>FqFx#0_emjT{(3P|#vWQg%DgKn4fU#&apWVj2l8gp zuoN`SK0))WXyVyXp#_%r%wS|r_VgO+)EQ2{6nkeb@y;Jg8*KECsbv#Xf+Wp8uHQ}` zG;`^QEza;PPc04AI>Xau)589!*8inXz!f2rg^m9^1e%-ZIg*Y42P($@9z^br9sb8VIl$@LaKR<>_&e1`22jfJ&)P5l2^{nu=y&R776pN zZMiZDJ2ZQFrAABJzi5=FibmxIZ~(0rDPQQra;Z2B%O4e(h#;^meNn}-M0iqQ8OB)8 zVV^u+Qo0aEP}mg~SngLFV7aOv9G0ze!?H~z%&#BRV2NcD&lS|ps~x=J??bI#XEX!0 z)xi?AYNCfu-|+z?eLfCL{UpO$XY%3f^aPYKN#Fib_#n(st_tjjgIRkzFfd z1>97I?(;Ym-C$oiu528tDvs5bapwf1!f(#lQ#cW$(cz9sGK;Ub^WE08&%ezbAU>1i z#AOV;g!)axj(4@Wi<$ z|J1y-Ok<`+Hp&fD1j@oJdN3j8?jm+(YTwQ+QEi*UuK1a zGxxi98>FAN`sRLrV5QCC$tYKDhaFyNle{hgMWgHFhE3>#B7Zz~)HCJ0^|flEQB)>S zF1NC=zGknn($V5cH|4y`N)N`A^JNticx{!T(4_1{?Zyi3DNSHbX7BN}pB1gBn7~K( zn7}KCnZObtM&gK_q2}*r)v99x>GSM!`kicW^gW)>@>d$b=v0{nJgD5>f-PWX@i})8 zRCdQ7_i!wUen!laj-uMNUI4WgHgxX}s6c-PSZe(zk{|v|pf6W6Q{}K3#EnjmA#K20 zy2xEi1X7N2p%^UC&2hTxt%KOQCrg+Vb}qt1s5S*K7~sa*u>iMfEaZ&Ymxvm7KusmY zJ!lapr#L&9G#na|ZH(ZV-y)W*;AA6^jjCxkquXDT zY}?|vo7T50i0uuEX!<}x+648-s7Hd@$3&{r2qvhDX#_;|a|Uc&KaD^g&gwEOqkYTJ zh?_=8dZrPKyiJ~0rx83mNO_w`x8`jcL04pTfn2kPl`Gieb;wAxc!}Vs+QXO)|136e zIF?o$7A@&zH-}@@RJC_QO=7^k!31b+Uob9a99XhmZ{*`3g=3AjpES1amz>O6*w(d& zY?OwlO8qB9uLwN<^lRr(S|KM&28K%SwNh3c4P-yHX2P5I+cQCqA8ORw7sNUnyphUE|q@P|bR=7i`h046@EPwKU3_t2G2F&MGod~z^ zh!&3Leo@cQ*X}@Yc36sNFQ@~rltzZeq(7d!pSiieK>W$0_lcoZfi-mA(=bw~grNfK z@XdP)xKd!*yk|vVEua(-tHC}PCa}tydgndQS}0Q6H}1Xi$_7y>&6P-PZn!ne+BuLF z5_@9L3Ek^BaA84Y4=o^wdJOk3nc?1RLI2oH^je<<{mA1r-2ZRKyfA-$<3&9p&Y!?dMaIb-tmhVee=J#3YP~A|0C@lE$`L`aTu<$8l>Wu+Azw^XmOr``ThQoFs_3+?*U zy#m4|d#e>Z`h?d|m+zU+?hK`irI`QXQk;nzGznWF@UmA-fLc1jb(`xpDlGfTxQ@#-SU&_K7z-ofA~ofyb9bhUspHBNfvS_ zP$ZXIY$7hRIW3P)t!o*bc^KhQ*|ro^-gT$4o`8SJ`$N`+iJCb_xvA|1#LYvgk<^dip z1PQ~H%_!q7h2zX+QyPfmHs7J96<~1%1XTlQdFbHR)WO8uJ;66&aj$%|0^e_!H3J@& zU7iU_A^?7VVO_E-G&!UNo?<0hc15+FbU*D77pk_S2t?SRGW)n$TjUr61SX_A&)A^R z)XQ_H(_L}pP*MoeC*BimOpa5^0`eZg_cRjgV6bo8gfli7RK z<(z3!+SfV2O4a0&``NoiA8zm;O~U9K?bY&Y(t_B;X7&yTPV<5gsp;U&MTVA(N&uTER%^1JEOh@Nt-bjOP3 zFHF0wXGfn0eAiHy)TTZ5OU-vDPKxgF_Z~~S%hn}#+Ywg2_s#Zx@h~g?QePNI!-5bs zFBazO>KY9ct0IPVb@|4rZ8w3pyJbYI0%e?R-8pisSlC<( z3!cj<44&KJ7D1;3y$bSj@@)&~vKf$co3O*>q#ZS0%WsDUDpJoX&MssUAR;DS^XIMC zG%fT1gs(wmryUZh~D_Y+v(3$bznO!#3v@UsAC5EhZ$yR$` zU0att=E@(@!Ml%g?O944{<%aG@CQVy^fe<=as0ERuW)SyW4r?Ih~ykw`+gEA z+*9^bop?a+k1!GzT6Qc)(NqEp8syL){nfZ_6XbjgK24cfp9g!(ZYwXP7wV}sUK5h( zNPf@GIRyT0Au^xrm=dJ#1+D7ZXqCqy)S_J1p&TM}`UM&W4}!h6hJJG_yIos@DCH=c zj=mVTwMfiE(bIF6C$NS`rlY9Mu&&|#>4+D!y46-t*V?W2m?TLzeRlLo1gRmD_9af> z=U00{BF0^p+#`}O+)pQW=^9}&r*Fi_9r{Lq+|IWjR(0cV96^b1h*tXmyc^@7^##{9 zMEWEhX{#gKQ2`+pkGV8Qy9B0Pnc?DR$#iODhb_RwJ$d-?5N_$X*#t=}K3^}lh1n%>TLKqD0MMWNC7+u<(umdt_T?q)|v z!h)xx_oGmhUtqMfCVGEKGdFW76e=Ccq44I=s}hT@SB^N;k6T2Rngi;=qAkG@?KuQw zKNHiB8>XnrtXZ>Vv%8&InMxi_Ouosqx1la(0NSbeLY%-Sx62y=Z`{h>ta=V2-bCFF z5Tm&}#W5w)?o0~0yPeBkqavJ6)R$RS?A^C8v>js;2nQ@${VQWDqP*vJYSgQVMSDij1<%rPi(4~X&mXZzG&30P zJ9=@i1$tqs_h%;PyJsSIPWigZ0Nzt_o%t|-Y3|miUpqGoU3zz`uUZjh zL(-#O*=6MO6(W%vRT9ZwVDBLk4aX27c~P6?&cTyq-c)GmA&@yMD7;`BL|~{CIEpE0 z%G1MoYOWh)oN4qRG1habaA1P{aSX^n2y!4uS;jMcPfszaR0^|WkvfZt zR$kgCMC)GDE-k1k`C1FXCj2SWOoe0}045m{k9r*Zm=B2Q0YQ%PHJ}RBKOnbVgjgEE zY4kn`UZNH~u?T7YnsPr~X18OHRkG{GyO?{nNa*Z*{2aHA$!hi8jiQj^xx=)D$_R2`LX;zz>UqwP+ zcB8TZ+Hv*?`?e>X%_+~oY3kO0P{kK3=)w0keJ2|Pna}WYv0SZOm3C{j9%$IqfeefJ z|Jf#B%d$90YxTxRb9AgVKCx`MCB_0JfVnMWV()DkH2-AgjP0NjF4^lXTtW`++B(M? z`bPxL^42gI)OwQ$`gx@Ng2GqMSbEGDfz7daJb*-eQ$9`qek^^}&;Jas4t8U5czyFU zv*hAK)F9Y=NJebv`@iT%%YHFfeN-2U2Vo%syOd`KD}ZE|P(eW&Y`GJtWL|=qhv?>O zZyqoXO7UR72NBoWnGE4FlNZaHo~r^kWj`*)?ojqJ`>FXk5y=BXu}1M=&yYy=+CoGV zIN1c)kUEB7=WC0{&d>^bn#|s7W_yGqJG5g5yD2qT4SXF9mk)&}Pszra*FYOlYC`C2tmcTKoD zyg}f(%*SN~=Q0?Dex)9i)PcfteXZ-w-j28t=qp_GV-EH0SR4O}3K9roOiXYL=wr#*eVk7fs&k*J+oRyR>=2<#aw zUKwm&sm23idY84=LkRYAu)^kjsc*>Wo;oy$x3q}2EKpSs@V=_S28QEiuun8J437Rr z1|Mtv=f$!*FisA%(t4(3N%s9|6dBZ>{obE( zWkd%hD|^b2vJ$nS%+G3XQC2L)>zLf*;z7J4s{-@?F?B(tZ40F|3x%z355qJ*O01hx z$$4H}E2tQ!NO14H=s1E-%&_3SusNgc@k|S)tKx#pI9xAvs}q!2!Q-|bL=T49TP5t0 zPvNvm>xXeX6425v*Y8PFASd~XItV(`BML=R&?bhe1QG3?%NZ6fe9e+QB(|M0LPKrM zdh?pn9N#I7+rl{}L!NC8l4y@I zJJ_vdpVA}UhVC*s{4SpaVi9y?x`O4x>PWjTC(xX^>>_I~&5KpscyV!lyXBJ9-A=-- zmAr-Ts1N+V>>|sHx<0|zv=P%eY%kE7z9^47DQE^l%CbMSm2xV`>AZ?&YcDv?w2#9c z-OeAper`6(-X~DYMo=@V+0g@(pxR!5*0U=9kVSV&r}+I>(C+4wBKK?j)%jli0(abN zyt=p@D=~;NZYkxc`ld#~o}IHdErMLBmpDn zhL|3+E`GrBQ=--%#mV^~2olY`bJ&h<+c{o?hT+UZTtN44K$ zwS2^lX?}n87ps5MK%-T+U(?D>VRam_pb@mWBkdQA-V>+Kkt|Sn^i$rWhj?s?MPJNF zx6`xpsdG9aJFY{-z^%}P;+g8nim&~2#{AAzqzt~V|BF}PFz`rEpFPL6xEzuKB)4o6mr?KPat%1Mi3;nnW*$m$$>hF4)#>v!v;mQIZLct8 zNMaiB{u{))9}N^~zlx3AMSEg^9-uvBg11;q_r9dmI|$fhwZ=ifS4Jw?AhiI?(D$v} zW}$@^PdfP!hUlMrws%fU%;t{?Dz<;UEp%N`7ry~e40v>XyzIIJgnKc2yM{^aG77ms zDi;#+f(AjTuodrKhcKrV*2mdmPu1PjlCua^VAXmpX+`ow0FnQsB%wM>0=I@hoJ3LC zf`BUI^P`o}X>|ol6<-6`3Pi0NZdc}hY-!7wL2Okv3-H*YM|56Vj zo5@7z)Fr_v1M^{_Ig&%mU#S7ZVVkFYQZKb|)d<}gWN@}j2%&8)9Q7Ve6POuT{0f`Z@?%&HTj$u7#BO%P;6 zt?a5-R+9`8$Y)pl(oTY%h+;N-Ow1@T$p`!0UXH9rNYN-mZ5@>;uJIPTDe(5*^X)t_ zTC&}J^klPxz;$Lu{EF;@g520uq7L#1+`%g)(;mjbeEmTf%)_MQ#hvj#8Kea~-NCG3j2yqk^9(04m*M=UT)^E=t z+2G_u|F#}HUC)2PrXHv_L@QfuO(eF-vu(xUtOhcmZBq_C(5>_2u+2VPvu3SK^1&N!gOS()kZ(75<$rK|Ld@W=L||pF7lo*H1YNLVN`2#nq@FE> zq-0gGl8j3&jHL_t8(jk?$(%0FFLO9jk@Q-RHu_~n8&$Es2&<#CIreiB1RKK0Re{tc zWMkJ)e-Z@Qpt4WRB`K^Ao{&e#$eMO4yNTuN4u#-(tY39!rQy&=zid+#RIBD+_y^}RV=U^4hiK;WOZccI0(LI8gitbsE?_iztsx+I+FPod?1Vp#JP$#Yg zn{b1fVtS<_Q1kBMz1SL_qS~Qe$~&H-+NDcO(cINWwSE(@1ESi+)Nq7R?UADA-*q^t z_K6+O{?uahyghV;(cY2b-`wyN?JZqmx_I{AFNXH)p#^B~rRBy4)$A!{zu4??oV~Be zMZsXHb%$)JtC>g_lXnR~miQTGmuhHxGL{ZuWBbs@zp}=*4)ko(K|rJCG(e-zo{6(d z23k4yAhc2$Ea<1YM{{=ZK!dNYo@lpZ`cT3j)7Mc>J8DSVm5~0{-_L*gRSw;?TC>_i zlvgy%gv+vvN{N{7pIa+C!STT5Vp-KmPnGOEjy-eNJ7k3~&;QQ88{A=|{N?D;af_OnRK$YLzU{-)W6Qhh$~sJFRf16$woww7H@o!2O#?6IpuI9)9A0ddRMX z)k;2Vm9&=FL-xC?R-Y>3|ugs%?bnf?+Jm4UzR#J{3>CN-j8_=ZF zDJ%8<(CQn{fBtyuC3&Y>?~ZqgmYNkRW%1ZHD;zS0fz*{*Tmf#kJwM)C$*%oXf}&9+ zD?NeTW6vK|se}aEJN8ovRTN2^?WpyC4ig4y#qsr{R@+2=u`)_?&&2ywm_6pGv$s08 zdc=~hSNPQJ5PBPo&8P@^EMmh1cxs55n+D$C#fj!7B>s=ktXouAS8%Y*dLO*?R zDn`}Qom*wK2;dV3a+WzHMM{t!ibI78OIsIk{;+Q)iEY%4eHZd!`TZp7+@oO(`TbO& z7s75E$6BiV??q3e^thSdiK2~bFX8f-ng7UT`;x6&>5VX@IA&symvT6TO33+*Y}>5SPEX`lIq%$ zNmV~T=vptpTc*>K5$mp+Q~Ci8JO2*?Y-?Bp3UBrRvy;@kDBKo1h_wp>qt(+Cnbzt>Zg?_46u^qN%}2<8viBUpo=6H4c3P5EYb@Ld`BQPb3V%TvqqwVROD zT9C`vFLC6eojsuk>XhXemQRHi(wlt}Fv`$Ts&+92AuI;)E8HLl_6zL;A&*#wYNNfw z>K}MM-C_IkCSglvPiECx*J}gjq9=arpWjVA!xX1De8cy|LpHP@ec&lNk>sxHTsVs9 z`m=BxiJv@O^u2cw*+wjkUVt`i?HYPhl;5L0$HFf$&MDI=dvO~N?O?Fk^VP0TW_R7# z;R^*H$ngL==6Y4|1wAbJf{`e0=-Opp%VWy#vQDu%WffMau^(;nVEn^ukXe0r%fPd8 zR0>`<$=655Zh^RKnqx+zNE^q3j;UzHy697e8N}a7(L6-X^2a{&Xuy6dfMxwg71%TT zfo+Li`QH{6%+I#)v`wA`IkeeGaUMZrN%Wro{=hwnP<0z1h}!+YBuM?jJ}cIunpSda zQAO6Z&9>tQklh|52Ta6^9V@mZhMX;9bS_{;x@+Zw@kCpMtJ;dq&#jmZ1zfS)8jpou zT6S8gz>(;`YRO4TBT= z41?3ES`E~N187XCIa{D;@6N4G_`~t@YO?J>2sma9>;=Yu)j$C+*8_@cJF@Jw!XP-; z_1BpwKoX9r__z%?rsc4@u2osHb{3+iy_^X#5xeZ5N=OTd4k7zr@hN zMlc9>J)FPez%z|sfcFKDD9-Sh7rfmbJg@S5n?OvK@bO~+zTLn#t0hfUdMLDhK@El0 zKe0Rua=g^@e(-~yUt13Ubr-u~d&u=bdY-$zdj7=e^dYb3*9JXrYpHwH_CxUTc&XXv zTyJ_T0Uk-`yk__J1I1JY@M(IgQ0;y|QSENM=pI*b7|-g9=SqJ%?d{oXPgzed=J$qL z9M-F~%mU?JUk%6z1aK2_RTS<~h5NiPs{ViW-ap8$tGf3*_uSjJyLDUgF&2ryPUZAP zRj>7)JZP#MN#poUbh-@K6J}5nX7JSThf|eTf+vrF@%no7Ss#^t7Q4TQTBt090Q(;al04vRI^peC%= zvFQw>s+QHw5gOuHsQ@y5_&tD!W)VV^irR`+5KHq}(o zX{=K1$YPV8X|v|Ik7%$uHpTYvnZ|1VjD+B4GglJdn?P=fV7n(sKp|`n(-=%zy#}!B8L~kDnK{j_VN+ve^c_0Rr z?$JweJ|IpXQQY}1f9k|ykk(pK-J>48W)1=sXWArVoTM1!#tAXVO)&-;pKin;8_$bO z;}etGOM#+IPa1=qj=_$2u(&Ywb=V9({%t4k7RTJOg|+6 z-sh$UV_uH};%IQnaPhGXVl?TR9!%yOLwmG~XkzxutQdBdEo?lxOXN%t}Vd3;ABuJ-n`3 zWuY(zfpBFWXytY^Zq9pF6(iA?`6xiZZirY5 z>18wo9uOxtnOap0PdZ~qxAaNb>dMdL;{-5vmeE#?@b7=zE(6q9_0mjw%XZY)U^t>3%`cR}D|UA}oFo*5-P#7$Tr8}G z4@G0E>LO;Kj>{HEBAZ4J%Z3@1FS}}3mYFhrOt?>1Ir;Q9z+necPU!@k|;L=CBky)qaC{UAl>s?Nm44rGbQ;8=jPZ zS>0wge<(dE$EkX&-Mk>(ls2qBU^h3Wn?wXV)o1MHT)HW5r231I*F$2HMy67tOMf6Z z>O?>@dyea!G_sJz6sP8}y|J!(tACct466>=mzDFWT&AVzd4Fg1=_#pxnr#Tq4N#6^ z%SJYeEk-tum@@$UJ-tppCP(Q+u~_O)3cYyLlmr4_g^~E6`W$>n=FWo$mX_deTgtud ztwQ=t@tfkEiW>2+{ql#GvS*7ds{&KvLuzE$SAer$T_BF=`w7{aGtP<=QTD69KS(Qh z#)NeG^sqhONAuW4dv#-bexrX}ANnK$IL#&Q0EMYuua5bKER|w#s8aoBzi*cD!#t2` zMN_eFOU|O?t{UVvxE;>LA-Ds$Zq)WG;1HHivnLTEb$A z7}Ze(;WsX4;%~CYcd<+kDv)~MM@1BcAHE4cd|Y4FXt~|cg6k9Bhe4VxY3P#CV8r_> zekmSOhPW71ZKocEK2>(~)sHzTgd+BZU?SHb{8+H5kc)R#c zeRDb8{Aas)0i2{3i^I3j9)*MR^9JX|K7LpC&Kvx2ct%pcc(Xl6!Rhk`>D}L}-<6w0 zYk%x-zPqv0kmTd3z`>S!-xqab=;@zypBJ~BF1c@Mew?E9cE%O!T5_8+c0*muX%*9* zR$a?}ISo~dbu)JU(NeR4+b1W(6etk&bM(^Bg3Qw?046WnH^L7pka8KupP`E(dx z*)JXtO0_!Y99g_yd}xuc)5eIOZjEFuO}-J|EL9o!|@^oDoq%dvOyw|Mw9Jb@KyKbVS* zRUSD}+H^L$bfd+fB)G5_5V|Ic?3EDiGLyohUEED2xX)4ff}v2{qE*$?DqlW*Zt~Q{ zSvH)ma>Yl3MnfasP`p=6bY_|Ap&VE43-2 z_)C)j>%woafR0g_ZT^P;q_xE1$hl4OmL}fs4|Ep0V(b%t#!H%bA9rHneLRXu_qoZk z`6x_CvNb!a4qg*+PBH%73w|^;KSB4rAZy&&>Ya!|4mlp2%vZ%3nb4sVGT; zY2z@&R-ccx#+~P8KVk=e>kx0X%_nckCgWkSuV*gKF47@1jL0@I$SJV$^CPfi)n^SB z4ySr@Sn^#X&>k5MBP|FBSU|0-h%0(m zH}QxyF^gRL)3v|PIH%*Z86baSt#ANM@iDdHSXdnf+F%wX9BN>`X3eaJrXE~tGeWR5 z6Z2UV_e9YGvTS}&C)!}18q$+Mn=Rm;BHFBtQ%9TRz$n@@y0~~fxG%305|6UEsvn#x zJBmImtdxBfqQ(_sZDoF@+K(-=cOF9WD^?ex=q;^mwfz6$%T8m=z3tqAkB6dwnd;lr z$c8N|YUfC@AYimW(X&N=td58Do}#t3%YpVfWrw%e1pI(s@8_Ctc>jtc=#oaa6Lq(11_WSa)LCqGi2JBAYGUlHhxVA1^AB*yPniF}g7LPQ#cv2I({guVf-BmADKm zIUbLHg^>EYrcfC9<{AlQ)p6kv4PchxRgcz?C_9)2Ixo{vKlv_V9{SE7a$G)>Xbc%p zq8VPXX9EccVHo*llZ3X*o^ksM25Zt91p5AfrOer-oeIn{vd_syLokM>5mD&p>QYFi(iW zugsS)f~2mz76oxB68C}Ia>(q#t-4<#@3t-Fs6`u<1 zO|K>E2BvfPWlOfOBl}@Jvn89?auUQSD+IcN_#^M&dy*$?kfKU!)kc4Qr{?D#M1 z?LuB7u>r4%N7NptAx-bdE^zv?yF`O_WW4~cG%#UPpsl(gpNK&y{+uRz@X|@qXP&@M z0}OLlop;_OGRSucf|+6FlPAUj68G2wo$zi94Gs3_g${RuZR3@$*2lZS`iggHO3&_> zxT*5ujgk;{eq=1c&aiX_!00^%%La!!s}x))KA(71!IXMY$H0GXHk+)tyf)#CUb|s@ zk|l6aZOMsLQo?{4)20a;gXfgFbhH_UYT^$RL4!IWA52COX{5@Yaf9|9rK~J-W3I=1aEeos9-K`*S zKb62T3$*OXLt0HF3r+R8F|v!#37>$BB#Rp}xb%%NMs(?+7M_gulJftfRj2IFybB49 zj$y=Ru3ge(g_(1b^eKa2G|rGgr#TWth8H0OacR*Qo)AYB535&$Io$Yj-4M$pqW*B> zJc+sp1y30IjnZ7!(LOyG*!AKqu&_~Qc6&C(^x8r+OGd0%XSR#SNK6v~%G0ES?@-uf zQez&NZM*_S_}r>)5S>KsX$|7hoSp5RSG11J?73Ni+(SIj=|5}eHU@m5tA|tgLXcap z`Vzkq$hywu5Yh83`OgjeJF=glGxS`LL)=jB5#xF+yJkoB66lAkpCw6-rVxP0LhDf1 zNf>g%la#m~B@2u!VSDK%J6P3Lavs1r3jvr+Lq4>))T>OylMVykr;LHzJd5{fg>H&t zagwd$#8YM}a)?QjsWe^yYZ_!>P<;Gy&;^ZFIkT!doNSb}VEOT}1uVb5V^nIC z+JO&)x0=+7?gc+8-0PIO7o5p(53AVj2H!Bfjm-)l$tN%yARLGzonz|NPo*(s0Ik_m ziQ#nkX!RdV!dAx>3WcdBA86}BG@LX&7*L90u;dngjX*!AZ9yNMypTv5<4Kbd?x`EkWl%nPsRC1o**Dy7jDk;fH zGlWmY)F4aeZ*{yBOwy|!w}YmV^<&|zwiQx+U4C#pypoqp3#Q{MfnL_DRus8HU0D;g zs)BxG=t&QcwEGX%ZqEA*)R2lRk{q{arhk z)%{&bN*iT!Ur+T&Gkg-h#mEP9Cuq=YrcnX2%qkgHMn%Ie4{@flWtkUdO+ro4iU8q0)1#-9DgspP|Dy(5h$$M!baogT zOu;#fva*4@E`7;4ftesIO#kSV8f=;VFI0w;X{>LLDthvyOfBE4$W#13G zi~IHsdv{hOoh;72_`(e{otfMU^NGChgP*s4nrC<86;!34>CO5U>t$0w0)1x<=d|5* zH5URLdjJ8r!XCY_9n==V_9@tfmoQ?MRHYy$j+S3(9s^5kBg3k;g%ISPYTww87C8oD zKla^#+>m!VjAtqUF%^J7h))Her-G}D5FF`?(O)&*hoV32@lJkD9=t1?#a9@f$#F(r zF6N**@7Tt%b~B1%Y5j3@$lNR^-F)e!n_Kr3kBI8r9=>SOBMW0Uor(62kPH3ZsA<|T z#a^!7l&E3^V6ZrHi+8X<$8TbRj?#hQ+hAS$OFTI~B#Zv}s8?-ils&Aa7H#tS1msBY zw+BA48&f`OcutdyS2~Yc(OO1FTXF|)?{=nQ?q)MSWeSHmXvS~Pmm*~4i})=wZE@G! zuZRg5#f9iCQJ_Zj7QSl6Z~5Avd`cL}RssBYs)5Ul7`0yY5JKE#yha_bP&Z`3;EL=G_(>Q+2W(ls%P z8}_NlG!$}8Im=)H$P_L+m*a_F6k>fwR*omyLoPQao^$&Dot6r?O`E4gc)B@8{LoB2 zIH-6`z-nre5AmN?i9L&xQUDLaMvYCZ%#4N6Dk=Qcv0lz#N#@sRIjS|JGuYYRj*U!7 zx~Tla9oPATBMtMiDVjk3T0`eepUkb<(;h$9iU4uiMtC`Rvdr?@!swq~3)$O4M)pmA z$qn)(9FA@1Y1=m@Tip8Hs_(M~_hxr69o)SciJO|Dv7OIJVA>$H2+`UiZmSC`IJI%n zJ!}!TMfcjh$KihiqFj#8?GouoLM^l%Zd@PHHOt@pWy4kRbzu)M;HcfiC(Jxo>^83+ z!b8_bYdF!vF@{2e0JvS@v8$TR2pUF26gR@g9#S?9hAnVb+xea2K8j!ew zeA#!yjckl%=@o}+8Q6hyy&Q8?aj+fiT9c#1Pz1i#Agta<_i)Gekn_@!2{6TYW(||o z8>(SC9!QIwMzlYi2-DF3ld7Ju9WKGd^%zV?ZL6MbBP{!i`GIn3|Lz8kVl1_W$I2De z@O;zZA)G(7*BRzjL$!gUOX+}hUsy4AGPGLcx?Y58K`9F7RsXm8e4g(4Nj zvO+YMs3>l}KkgI5@T*5!o6d9Eja7wqhu!x=&T-!=s2l)D)UjS`8XY{F5T)p_pC+Oy3C!n6`6~9-;**Xo6>BbpaN{sZLDIj z?^@${Xl`}_+pRjHUoQg{;e4SN?-oYHR2mbzvjJisy# z*X-)!8aI<`wxEN*&h8zZXXvW>Lbhj1C)?4fi}$4H*}4+h<lmugb@{o%0B)PKjKYzi!soFhD9ReDzB63NODMp2!f zX1FenCB=npfyBTH`*nfgfhJfZwCCIoy(D_lbu4he5+HOMIV%(fJluF#*Z%N$RJ0T4 z)ncBsqez+1oYG=64MI|@5RVNn1Vx_Kuup5)785o@4y&oD=$_WFo=p_Lur* zvx2RUexeidDlv~bScbBwl$*q=rZXuXx|J*8v(ToE;t4hJYyy7TV^e)X`$g2?v6Rg7 zne%&n-0Ru86p+$hr#8z`&GKEV|0~%hJjb5xoS<~s*GdC7dc*1YnOr&QGrD8@cv-5= z$usZ1yqdmle#R^$zII;zlm1FJKWi^A5Ir_M8@q7RM zyWjqofB4G}eJ|TToGS;5uRO3geQ@!nU)q20(Bb8!&dvLVgL3Z0>s3K)prybZ)Ua#X zSELmq)|dcmTF}jwAa-_3mXV*TaKNk(&CTLHq(NoR){PtY%&!OE8-QTL@H}nE*}(g= z<#~IC1t=ytT<*n&KU|!91<;iT?_A&K*TJ3F&YxfMVtL-R)!cP^=AU7S)@(&DpHX~U zvvTL~f*Xb#ZJB1a+_(oA7MJ2EUU@T3WmL419bEDdo!jd5Oxe3qJ~3bqsj_t?p0}2B zXUk`n(>DzB@m6qWHDV#-7w-hORv7I?G<^Kt<)y3$W}pp-&D&~XD`U!(i8Bknn;_Zy zEE-vB8?Pq*I3%uj=oGV3}*_tbR4OFZL{d@PQ;Trr60X+g+lmimyRWa;>>RB%z zZd5|D&5B(;lZ;SRF(g-xyo*~E&|{hg<$0l1O)g;o5V5{2yajVT@SSkeLSAI+VO(;1 zn1*9l;ZhKm=kq6|E%wUuoiOOGoPPfL^DOHevV}@D17-e`7m^?kl^aT`@9|#;imqPC zpu0C#(?8F$#Q*(rqZn0Op3-`DuXwGc>$4gCqWKNllfG$qf#)5+fF6i1c)g_hu{nQi zX8r;qG}X~RZcJNs{C&-DkH1&n{wQR&A8S9^`sPoD$*@nt(_}mEl*egle zY+OOwxB%hVCImzS#Hz>(vKTU2d*&W(HA2`LcRmlmW*SlmSalzw0|2}KLnf$anWIb-3@tW72?HqH^dESDAdF~@+RFS|6<~r+ zNi34??z!L+tzIG^HZ;KD-d2fCo#X|E4MFQ%Sv^x?n1(64j(F!|q0FzdrSEG&_O%j0 zk|(M@pGh>_W)eN@(yCTt|29*vCJa{l?NF1%s{2j&#NHpWZ&AQJ+WKu&^GuiPFbm9H zK%SO;k?$SNv4Bc$gVdQp*l2TsqDhDhEiWN5h>tZke>|9XJD4+R8JOI`-e$9B6m3xg zJ$d|E;n3SMwM?}-D^M$2YM}U@kZLtV;)YxCu?4haZoN`S$m@Wkn6*C4EMuT^!;tOI zSa7h!Izg-lR3K;Xo*UTC%?z(AF+6fq+|-?-UjnrX|E)tu>WZiBpfM_^2s$dKpy1)y zz8MkhP}#?Fu{|gSXxqn>T%hp~bfe4^l-O57M_*c1u|hqq{O!1`SF-!0Y7@XcO=MU1 zHw}Zgb?U8*t;{m^`5aW*SMgcjnW3R|t87d6F}?0~7kj8dxaDfe3_~-(B$lwHuRMD! zJxhG?zZ%Ld>8mbtDGh*NPXriWQ;T1D^w+=jg|GkleP7otRo|Oh z{O1QhdGnv${iXMQOSj;BaOmPkR&?_`t zfTjYl$UD%CWagt_SE)rw0}ISRnf=9`ui8KC9~e$A7Ps(ycHeONz;I^qnYTcS>{8e_ zoLVez**BayFr3vBvpmyVTz^YBbzs=@A2|;0fW0-Vw=mesKC34@b^a~snSJVFMh(o^ zPwVwlIUQTCyG-wu{rF@3X6m^4raDz$29Y3x$M(^>y62icdW?X}1A~8^%6m+-_&5F& zo9)Ew!ukYpmLa7z&z-t|8HXd0S7CJ;tHbXRi6RxzoMz4_{SI?`OKm(|Q?ok=Yk}#Ci;3 zl>XQnh&;5HIMlECl8jDdmEz0%qp-3j$=ck{{<-cpeg-TboQPM?Y$}EHeZyIODTeEW zxplhE_6^q^7!LNCM+FXTM<3d;yv33yHNnhdqLFohJbY6tB*hDsDFwfa%fSLP*F;{m zY~Sv6<5ZBra5#CE1gGVqz34QJRG>n+f)B*-u?Yeeg!AjVm?1#IR#N#n!vWL@jh53I z1>)9*z|7BahavDbPme>r?f?yHWc0GG92}TmSIT?VEP^a47O+S5X*nB4=NMSW2$i&# znroawh9`0;`ZO!M4q>DN(1Y$6aLAh>+8* z5g|uSx=|sgTO&eFsAgPwkYUOyzBGH0%>aLz;tf$hgFxeh`t@Z`;tlUv;%&yZQ8SBt zD{T5$Rtn>iB$_tyX5z(U50qh&%mft-gB;8h3VxACB)dkeDf6T&8@4a|5-S4>29e38_`ZzG zF2-ect*A?hX=YpwAhMG*_I|rJ)iqnJQ=d0m+hc%>s+%!bMHW?u|2IQlQiQ;q-+6;n z+v2khE`Be&xsLU`LKMLxq6kI-MeqWG0=`tiaW)^se~6BCj89@?y<}ic*oX$d7eYy| z*mrZouew=G&Ko2)Si!^KSwYQLlF7@f`^ubWOzWvbVXd6H;o9K_MS6x^&-Mh#dlfkM zJy%SKJB_71G=CoO^_5$?ezfCq&NigvyLm-}SVYK}Sy$#wK$t}Oq@B+EoW&n#sq?Cv z&1WkIF3<*7GQY6Up5X?;jwh^FxG_JVMZL9-FjjKG)*)q^(0IUy$q$+J=efacrSfWn zlHXev{i>eFQqyO+A_Ia9L)G&E43#&(AB|g)qR6yj3!lGVaY${LwqKX*SMy^VzYf0L zpYGYdPf=N8|EIErIzcd?(=W}wBLc(Qe?p(%R%6>aT83+WJFZU*?yu|fasTbH@Y|#M zWZcK}`Az@r5nUs^9@gjF_WU7z{+0hm4vPKu34N~Lo7Xz$&lPb`un`uvptc6a#gE`3s&;|_g(#D6;+ek0e&#z3x7r~07(c3b%EkUmiv zx9anc{kMbRxBdEL>`VH5m;bhpONO`Cf4Py5xA_m(`w!RgL37ve@%#S6&-o8m^8xHH z<>Sr%!&Uyni}|3F-F*DE|L{Wp;R-$miu`n{L;eGTL7iX52XEj^SGV{NmvD(w(9xOD z|II99CUg&`{jVHYf^c$+r$Q?iNdk7rGc^f=a_1hWtQOzZJLnU>ZX|L&g=9h0O_VG= zQc#-3g3~4suu4pV;KE53BSEHClps@*JjjqK$q;%7tc%)~_s7fo%Bh=ygA!2Y;NiC2 z;6C0Uh>yXT_!!{W!7YdbGJw~W>x|#)aFFqSh%6DfRzF!ez%f;yU8GfCV;zu<1n*b- zn{M7}JR1>COt1Lw0pm;YV4pJozVFXGedWo1$->E#%ai$U{}#%V*+>T`xa;*2Tx|*O z);^l~41&*!{X%P*$-so(8oBw8cX;bL7KtHT(<*Kw%>s`ql#?vPe^sdrv60GA%~b2P z%)-xhd>Cd+tL6*E8DpJ(>B_El#$C?Gq5GC4<7r}%SnmtD6Ds?>lX62+ zPHyiC?&2;BINN?Z-7Vf~-|f;NLNwWl*g;46l6MK=)LZHCL1fh#wV+)d=RWckXQRISWwR4Zj zDPCn0yGnhG^pNJj$C5TeYS}R*_J-8xk&-Hp`Zq{99>EO2wtM>kcG zTd0Dpawk+i{1V0&6ZpcrrI{Mjm7)ebfz%j##J1R}d0HC%Q94{ehk%0om$1cd6qNDJ zVXE6OG8Ebx-{YqZU2A$yLO}m8OxR)vs>%8xc-+`xH`0u?tRv1whXowusZY3T8`r`% zn8c{Z5VgN5=9DMY)e7Q-H%TNOz3Vcb)6^yFc$ zqiwV^aCu;@Z%rPSZ?#)PTca3r6t&=@he;>`qa!3c5o)1wEzfCwj%x=3$^vd@Lj}w5 z9g7}Fx7Zb)m5!W185cb3vfa$bAda7tL1KzG)EqgoZ*?&E_ikBu%X)Zb*u7S%F{XpO z;oGE*2ZJ6r2ka+P-H4j^tvG%IfI;E!5`Qbcw_h(dZoF1r!{AvwAuS-;WL@&;0j)0& zPEBXr^TFj)(;4?qYG5^;@sPa`b;hImhR%4baW@nb?iII-@5J&arZap@QD-=S;oB_@ z1zXl?9CPIRTh={HAC?dSRr}`(`in{!*lYVl^n1xp}mm zY$+r#E*z9h0p@qbDyg&)^Q_Hq6@w%L=NzV+-#T~crnlM&0dHP`Zm7vj^t8JEw9w5b z8!U9G-9!vvuPC`T`K0S+zB@$1&`{)n)sH1FijJi_7vYb0Vqr%F&Ne1ez%a<(kACH87ERmWc)j4o{aBp zRL2@8<5xc_I+!DE>nSGV|9S!hRI@>gj8CqK78##h6Yu@9kf>4<)C~KV6Bx+ToRB!- zch5X0ylYi~{sxnXvy?4Q75cUgQs?6 z+7F;n5e$avO@=R0=Zg=XTs(0VOYC5srhqSHTPDme>`DiBSn9&pQrud9R7s@EwhPjz zSsm-B(txcCkj`M43>KSK)mt`pNL}yq!%=vH+^SNQZncXXBgsmSus(hN#}P&`jqCKS z9~~4`axN%YK^CrP9&h8n{aaW+vXKtnqWOJ}ukD~xdz#%%woV&>rHIqEX@VutBqjSaXaETzLB{h0mY?Od;t9Z#}!i*g!9AVgnuS>7|-MOc@+q)K| z007G^b=c_h>uOD_b(FATyHt14^CA0Pd(0n>f3>=`zq6s2b#n6Sypdhrm+zb>9q5S< zE-z)()aU{1r5B4xz{G+jgh)j-EGY63hyfar7@<730jc^Nw$Arfn@79WoIqekJGQ@n zH^mpcTnRa2bzP9}8Z`ZJXspIYg61PeN8Xzy>E6y!-Ac$k)R~_FBmKn=8J||dAia~y za@1&iK3O{;+~=ocHrU+1Kh#6O|0(8lr29f1P^Qux9X(I{K4LAE=5VxVsEW+ z>*M@2YI9s~iOS8+@rJ<9CO;#b;Jt9>_n2%Aj#sW$EI%TUMCa!FRB#AYK{ol&LmP1d zn&{s}Qz8iRscQ9*ZPc=fE3`)4zXwKK% z8FHay_?94I>gjNkM3GjgYYwKr z4m-bWJQ~Cn;P7v%H)}onIqUX>l8sn|iy zii0EBA|V0nEX>m2oflZH^CI=O7aw6sZYs&5K~3@ix`4jsDrL((JDqmsLrD@4Buf_M9(AN^~m z)|T$B`Dv5Ys)S_ZSkIa@`PdAN zu1EYkP)nUU%w>;qshuYcxIq}tXQN+^wBZi|&ZH%S;gRe= zdR44`UEYUh!~wE+*ktSJitnA=?)YGREq zW3#&q)(&-CvZij6eULaKQ~}$PU*`La5P>L$dZ6nx&{~7;teN01YX!P9=}(B=+X3Lq zMw*g>GG++4yWV?w!LV!mb=jUOGD0Y><@3TqdeWfC?#sNsR-6ebFE`_kIueZT!A9d9 z85Ku6;_f#6VeBZ$6HOjpg%(F%m7G7;i4w1hOmTal`s4AfKLrU|koJj8pNEh=Z( zUNbI_0cxmmb{m&lVH4~Z{B7Xq+;C}jNhBL5)}j3Co5U~Azi@lL;0*cXj7A1Pll~m2 zT0Q`E%%af0;%S7+rj#-5ERRh z^1#Bhz07!{A)c}Pv89}AL!~k4n2=#&`eyAGVliqVs>J_XZI+QMZLUB3$fwh!+rdye zS=n-d`E<*QZ`?J5o4X6GyNVw)8*y}%=E{LMb$dDY5PXPPVG=W){hHPBx@euo-7Hzx zDWR_|B>ww8FN~BH-~y)jf*ixz;tLrLdQqUpx_Kh9lnXuh&U%gy>_&(Gc+=s3GGon! zTg%yB0E4KRhO-axMVswpoqaVr(b<=&wwKY6bkFVM(JgnLp!46C+H*lHY%k=y z+7=p86w}T4(k1gsRu-%YH}pGI%SarH;Q(-dmgz^ zZMsUCWC9^+Bx_^vA$0ahN2>g~U9Qh?IXKR_tv4?>SsmwPn|t7hP-%lMf3{@VkPVBX zPh3`mBMBpH#=%XC%Yrfx7i&D8e_ctatQ$A#2KH0 z>EyZ7RGQU>;jt?i9_@y@S9n9v*X4xyOz7L>1_>CaHP#`8>e9?c(_<|tROF;uc4WnQ zYa9;)LCJbp#`5rK6K>Vl9l=J7eL+}qBgbY;r&xZj!w*J;syY%?u6j*!SJ&>U8bBrm zHHFCsHSxzp`OGqbz8~Ih+c@lCZB*S!&EVQcI2O1xBp5P+x-;}?1ea*?_~nvX zh@gKi*}Lh8Qs`e2peVl_?dEm5CHUX~IQ^ z#d|DIMgDRrM&-_53e*VWM(}+TlooPTz&Izt&p3Y3IC?%>Ph1)`AwJFB0R8bOFu^AH zeRzC$j+`|5?)j+Dw_x3WU(k2#sY2feJN0P=+Zxoz9ASI?y@zy^2ny-p z^k@&sy8>D_5?6{d9uA=r`RL6FD+ndT_8p_j=YrOfBl(B?3AAJt-+-lK7ffeWuo zAgRIP;Q%ac7mO{Ohh!|F?fedpEy4u!Z3+WXM$~e)XR{=KHu$FozLv1GyMCW%R>jv* zY}sz{P=LYqFYpR?NAN|pa@3b>qQspxot9+D#42ARWcrg63W=png7D7FKlXpgP2Jm zUU}xY>Lhf?PHL!i9(4)I50NIF5T!C3gg7ocq4^*TPJ%G+J!!%`YUclsJXM5wkF6{J zn<31PbaE|$Jx8>WA?DVm+TYhC%}oIG8Pih#p-C;ZAX|unjJKm}HOUC91=%-RWO8K8u0i9=4h$H@DwO`mDpYiizc?Xx zr?EgOhdXUjk$u5%>~SAYO)cHMqL$r2uK`DDY5BNLEoN${!zwwf3P8!p^@fv|YnJC7 z#M`wKKN&dnTk2+)zrhVwXkVn;xZtsICi7O%3_znV9Xfs_2`Z8nj}D$PPrw&Xmqm(NURg+s9- zy9@kG#tl68jzkx1#<^2h#D;r z(Khq8g~%Z_yz~q^PT{rE&&bE6!NXVBl~e4gTFA8>%mjCY!iyi~Hcx_yKOTqT)b>vv`ti~vtt0(cl)9h6$Og=S9 z{O_^ud+6Si+fwyDdw(60m?ZxDMJeJu?IU}Vja{%AQJ$5yRGq^F_NMPMf!%L2^px!q z`J{D^C3KPmcDKDhe~xPDCkRJd8E5VMo4M zzhjrMZyq*7-QmI)#}5DnOOw?TdcNAh-RJJ9jy$L@cYKt;#lz|WJ&HZHB`1al%o>AQ z;xono>S*UX+uM$&d=U9A{X-eE(Srky*>W$>rBAtu*46<8=O)%Y_+aCJQbMQPCbr`Q zE*es%Z?2?XCWbMMOAkA!qSO`zp0u;uivzX> zp$3Zk9XefpEL^7bf%mop+$r9vA;>L|g;0Fn-jdw&eYZMCx~t?M86w4lMon&tQ%!z| z5hWS9wc1Eo`NNvd;*$YZW?nzx#4Y4y@j!YpfT%VCh-yCFcN{%&}IMIGDOPQ@UgDSEvS$ixK=4y)xpi*sbKPAQHA@|C9V6uJmwlR-Wtfi65WqjtR{! zxMM;RyouT=`5IGIofxRLJk3&VLH`y@a1e@Jj)oKo1W`tir${j%t8eR$N@E`1@J+sBeZ_|kNZb)_QJ{-S)SnjfO~BnAqC z8Ud`R0>Z(Z$hIqW+#EAG>*6pCUn2YB?0PTI*Hb)7!{{lYjEmT&9JU)N!KV@RbkcEn zA|iyZ^hyy`e6jxmk!{b9a;>U;6k6?7_c3_xeVuE*J=THgDZHv{n%bT}rf2TAMp-lu z<@*d4zhC^b#q;gy;tr!XV7{W|2Va%w$_Fv(2Ww!7vgCkfR|aR-#vDlN$$egMXKtrs zVnIX+kW|f*Fs!}X7rOf{d`nC!sd_8i!8KQN=ZhFJ!@qvHzUs>lwefMfvsGyVF_0WS1H6a0*O&07jp6uXiyr$9lCe_=ok)jm-`TucECky0mHKSY5!GRP@EYvS^X&lYnNGy8dcnVxSsYv}(BXNlmDRKnE z*)LMxt06JhPn}5py_^l5t+j}$sLGP(_D(Mv#7Lhkn*f1Up`5vQw z8ZQ0)JycfAq;O+&OqsooHN8b^NiTEvCWg!|k>GII1NC}%uc2b^&+Ef+%4>&x#{dqC zjnp@1^)Jq5Ap|~Vs3pB$O;e`6?^n1R8mWzzBNC~&h{F_9e4!RQFrI_2hC;wh_3cdF zPPT~RT{H{04bq_s}j;T=l#aWIw+5n|^Jo{c5{&fC6ptK-fw z7q~!5_fa31(Mo;If0Q`;Bvu@DAT8gochRFwm_g%oLE{PWppN5TbaZ5FB z_i5Z1N2_bw7{_#`jd9`nPzN6+P~%};OPXs-YVocx9e6;TV-t6W$faSE9Ay)P&(VL% zle}z0-x98;;#TXp9e{bv(Gk__KD)d`*_P4$Pcw7vy=-x-^$|GB*xZd-vLBG+A_qc|aGFk%e($$m+pkV_h8r z&cByP(`flJ2Ix@$WwTgcrVwu*Ze%SQ{(i#>dyMUBo6&KT4g7s70D5c{K#v7L^GRJD zjtEt=d>I4u7=RvLWmj7u<;Jcy#i_L9LuR>SAJ2qz{T%YvPy_wOO=vh+k%Hs4_d`_Q z1?#K^$^AM`0Bbbk5DJGf4U2W_u@pqjxn*b?|d&v$3u|Y-l7#Xs5Vw}K`WwIoO938UsB@^Hv zjXnu1f%4icqLs%;u(5GLr<)`gkL zJJ_|r`_?i&Y_3zO`#W+n-hJ*$ne#VE&}viLR-Z#QE=ERfWb{J=6S3DKM29%oMTVYe z7}?aPA0U(94A@2!rDMp2ZH^PpXf^Fy-Rwymn&y)*d;3Y->Sj+q(0&s6)qb+Q)yu8(+0T(O@OS@m<(#Ph<$5!@d!Lc)b8Tq+uf8nYP(e08W|2DbNvbzrQ#t6fa)$4 z@)7&)ZVN(#twT8`SV+9+04Z)2S7Mlb2v01M%QpwzK}4nb2!mo9kGr_@6aE|bl8*?R%S9Uuj{Oj>}D%4!;&o+9Fq zC$^MKVLCuv4Sly{25ox8n@o>*6H1XU7*R#@0UJ#jyxGG7kR(-V3(U7tcao^nkJP8E1Z>^ie)PV z028LzMcxV~=y?EZ$R@rCrEYJoAf2MnQQK+X@TiP>smrLVK=Do9|Mm6d5`-IDIizdi z304NGc%REI(Y1DyH>!pmgId@zAOn^t0#~x_v`wdLgYcpFUrD!(&27ZAc73q%OvcG( zear}Y%u%~LcMC81L~UVd!4ttsds`YA)gL>yv+ns}O*L$}0_U1qY7- znunJL7(KirJ|JRz%>lWTKEf!Nk@YNww&cZ@lg~Ug(IF71kK0^aFzPe| zs)^$S>W6$Ts^wKcT@IiIA8yVa8n`2W?Cit<~_FL)Owp3dJx;XA|F+e-8#~oU{m(5&eV# z+x*TkU7!Ar9SA&&cF@p%dJxQEwB zUcGK&c_2^1Omu1DEYc!Bw!0j4(jpzWy>^H>9A`cx3RY81d%@9y;DV(d-LRX)4dK^X zYUW7)adQgg+o)W3cMkT9M$PHcL=Y_KqSBkAhy4NLpwisk=Yl;gxGD*?GcJ9CVy2O| z5#_G7^z+s_wg6J(LP4-)veg#yN!zrs(Hi};*dlYy(~i`%TN8@Hx9k!gF%7t!g+9%u zO@7qBXH?E9w2p-w9iOd=mpk^eAodjYVPh0sX0cAXXO7 zY`mPxM8edzn&9zZBR27AqtPMz!@@QsSHHEkE#}$*avj&vWkBtJVxMBfjM(XYI6;2` zp%@Mr7*$;lbli-HeSaiqE&}yncXGTJ_0Edd`k*CSJ>gWx_ym_>q0PK$rmE>GNVM-v zM!^+LXc0%OnpB|_`~-l_EQkQdxViRptOW302N?EMvO|*9T#JHQV6oPIMKS=cYMLrS zVhmP})RF*+rvD>M4+bP2G-Wgyi3d9lR8aq|u82KGnPS%F7?i5{c$F*s*k{uBiDXRQ zBL$Sxc$D50iT(tik@|o->iaN<4SgTUCHg{|6zht0mgJ{M#;EmntF^`_+d!a)`ERN& zR*rA)I28*GVg8dkzbn4zQ`CI(3R$flzyOp;Br$r7g7O|GfZ4s59u4WSdP5o%c3QKK zdr_?IF}ahN!18WJUIDJa5@9mksz5qNvN;K4f;@UnOr>k%D#yTM2=7QC5gMs;$AP0i z-G9U$rUibDH>D)5QdKv|gUj2Ys|Uh0hCCTfPS~`RK+v^=z(QRxL-6{>m|YEUT9SHeR0mdKRM$)@db zZ)Yrgdmpb(4&S1=EwVA$?f|&Bj3Oe%cHS(-pAB^O?+Ju&J!ZR*foP&4#H0AnqaqkS z;|u$%pUrZstz@oys?KH!i;H0VL^cZ4CsG6{Mz{#vpIj4Rt%@cH|Nc`jbI`v}x*w*7 zB18*lf{^-&9Ph#=1+12pw$yy9VPldG({*wYhmHQTgvRQ7{5P#!`99=6%Qnkd&rRr0 z&k!LoaP#Wjf4#iKUII1%d?8$QiVxXhMYnyrlt4Shv!xKmh>eM7OTF$cdn04(#IR{~=EkO8R~Xx846)h(!`NQG*0Isx z_}I`;BV)^}FI)5L&fwV8>k4BFM00}kMuX#HL!*w2ts6apGdMQ&y299ked%L+^IGSP z2FJ%nrLvK+^{Nk;sO9X9CcoK%n49e6W262QCe769bF&}$@oW}nbbw1hz?RR8vrHL+ z__}_Un{BwU^@@k2r2zY%ZX`@>Bf2e(t+ zAtO(GZy|*^3_F(Yqlvv(oBZu&6RU|1ni!uZr9XpKv~d)R{pzhQnK*RsOrb};u7IA8 z+t~U{A)4e(&9SY9o;VCcPr`8VhLd`~MlUHOYsW7zjN_Liml6CZWi+*qM_ON&!^_C`k!Hk+Mf$ zf+Ef_;o*sR;K{3Xa`SpAXx)tmhJ?EaCp5egUb#Xh_2dO+6+%iJ=ZjEUE_`j{h`__m zIvjDPQ1Dnn0D@^kB?m3D`pHJf#m)7h?xnUUf=X>sw2~<74byTyGw%ELXn=)NIT-ma z0*z{sKbVJq?d-rXXz^-xJO3hS%v~!%fxPLm#GF=qy;7RBtgetVvC0}UxUm9kHKb|n zqM^z0jqj%S&1DsCopu1cO2M^o;@p@M83F$fDJDz_CqHm~5BDKqyng;kVDD z2(OLmqB&&|(XuU#2uNQ&W>7R3OG0TD4@aLu*`?}tp}N-~3EL_ITp_9C{awl{r6cZ#sBp?DsI)_5B+Oi#{W|K?VvuIjT6 z*{}YB-0NP&CL;2;k#`qo9JHg*akse3Q)jqpF@pwznPEuAcO}am&Y4fAg9-G|_-ndU zN6B9i+Efb50b$v65ZAtP9(Gg?&uWGY3jUoZQrc34n zYyb!jo<8QBY4OgTY5z_=8`CNru=6_75I7Hqxlwus)D%;&__4*M8*45NX%bB?jfI`W zr4W@SUCeE>&66^z zP}1PjBqAp8=|bew*zGE8x@h&k5}VHWn$m*$xRZ^>TjEm|m99Nb!DSY|ChDF!uB$#{PPPv8Ss|FgD30 zntW^_<(MGPY`x1&s`F*MmYfoUctOpDBKq8F6pQ z*@XGT*>L-3$GAOBye;%>4cx8*0aH#q(rqjO?L>eD4z{IX3VE~1-OfBWmN3D|>^C^w z?7v{pNNQkSNxJGGGv6VW;GQR?Y#hIwIQ}Q7nG7wXew%r3IhrjmZVf}(w1-j>H8;|a zIPCS((rc0!dirD}#;bbG&6d(5Eyh;~Jal@?1TSmGKM@NYe7L^-X5?pu|Drj$TNVKV(BJDtV01;5%wQfk@1GfsQ%y{ur1ACf+*KykD2nib6rmLs)~=e=O2plrgJX{hybNNw!^E#-Pnd z?TMt)Cs_Su+nxaEaeLy#WlYnc=(sgA(eN*$K@t01#h{2O4XSg|w*5=yqqxfnRW|ZA zG?od(U?bbH0vmbF&QpRkqrc_m21bT95Zg*+sU#ou02ji5ROe8%8~_Upe^! z<%)hlkV8chJ;8KOqQ}nIgZ|u<9Q?mom<(A(@xYhpqw8KgtHtkiU>4ntCsD*Fvx-83 zJrjxzzh2(Fu=xdv7&w|iSdd7BJRrPPJ}SV|q!Ym!55 z!Wclrq{g((brQl?{Zbtau5kcU96#Cbo!pdySShgD_#2QjC(Ny8*k)}F z^J~w=4-Oyq@r>~}iDa|=?Z1j_^ESh6jQ_~Uj(&g3Mb+Mk) zTO=uH8S4ac-Kjs9RllsVgsfTovUChT-k%`V1_BN7AwA(kWc8R6-K>c?wXF^vC6|>QXG4uh?bv0S619tGgZL$^=tOD3>2=PP$93M+&Bg~DpoJYlH$`vcS&&+ zI$q5#AD|NMKISu{+{Z9U%uIEc3U7IyUU*;xX@~s*AuYUSNHdOkp-n9zd^>EMC&=Xp zrN1Ov46$D3Ew4EIUD!C{%?Xp-0UKPbhVB%{Xwk*L+TeesG58i;!1L z!hDYoi}T}mcuv65%JyC%D`d@W z{N$5?mV?b4&{hE~BykRYGJ&J{F_1R&G7?7gvJf*;eZMMJ9@=xVh$!20G+|JK!T(d| zOBdG;JDVB(5@VM@mgA}sQQ_rXnmV0 zmWdtMqeZlbYnaqi*fr)hS2_~>&9Vt<^7Jc%3F-{lGoRr&H z5*4ckHkjU(7updLPzAoDoa~1`L8Han)uf?Ne~3w1Fw$CQKCHDX*LS>$7qOnC^qrr$ zfqq|hY3ASNUS1v3H-bp~)_-~W+19PNr$UFA#LYKZI`C(g?M)eI&7UbG#?Q}qImv*N z8czL2KqPUnNqY!!GPnjm#DK~U6Y!V~(W+&0`+W_U3|`AOivz?g4Yvq1YB7((8@#?> z9D-gpY}mepcq^EcP}-|`NX%#Z9f!T@Z&|<7_g?k5t{}6t0|p#KuPBE|8R2o2LL#H$ z54E(%OIXc4SS;=vE&(nc?q`j%OmZ6%i5(L*jn2a0-NpnGPNk!ku>;B zW0|^Xw>%l{HrKdoJC$yeZ%zo*a}kZzm)wO6n?|8N(D~$B+HuNiJSb#?>+v@d1mlUf za{0p6=tda@lTg05narUO`!)x*PLq}ECtF5dw(d3#^0YS;^gze}$=if{P3h)(O7WXC zr3!vJ3L=C>@HYH}*5qvn^k~DJwNv_y zvua8`j%icsam+J0r5`;@x%8`N)s*_G+L@fk&z+_7_*ZAkJoZxQ3M6?Wap_D>>YQ06 z#c#-97`&!oi!=f;xztL-99gj8PUCQJB!uQS3I4yE$YWNJ+{3Q2Vsz#}>v1F(|cwqu=;+U87cLSFg#suw6ScxNJwK z+KC~e!7XiEblv1IV+b>>YaLb{eV-ZT#RuG`$uYUK%fr?Kd`+U;JQ6^!flP-*5D>Jy zIHR_^3ZhuT4N3f%i)MA0Z^9z?b@MsC35KMvVlh&ycdul!;&#oO^$Du1*B4+8Q)ffV z_<5y;GyE5Ig0rjVNC;!xr7T(Uj^8D)4HNasmDzN@tmR`Ke5BKI2O}yJ$MIw!&j`yH zJ!J)EhErBuK$$vhMmDS9jpicgHmAw6iP+1gl95Al3pS4yddaBoSQ;3k!wl_JcUlHE zYXo#td@y*EjG%`-+s3c<6KhZ)2wZ?-hnqSl-g~e@KJXL_L%^54;*AnPpyyP;|A8UM zO{)>)Z?8a*EToGduQ@FQ`4rCNhfl*y{_14Wf{#~x!`$p7U7TJ-HrX)0w%YmgXGYMJ zJ!F;1n6Ogbk}+?bIHlT?%c?vTolaT4JQdRkF-ordp2qfXf-!$*;w+M%a*igH-5LQ${uH)t@fGP8B1-8nE18lL53{l#u={O?gqf`MX{jnXZ)UhO6HAZ9 zJ1wfDSHkj$UHam;j(glJ6FVE+(^h;Z6YI3Yz%cBg5k)~~JYqK*@~nokKI^!f;+n-f zV(5#-5lR0!StPQEyTT8KrA68-{iifza*hwy^BAcgL1uM+yS~08B#kxbzeiC1TVMxgQdW^n|D^ws2m1BBuds3dv?Q)`CxVnz1Hy zfe8_Yt%6!0SngSl;kzcRecmM7lVHsrGOWc>1+3u%G_dyeM&5MGmzAd|d#aHM-$=t( zTC4WBKt_LeTcmSwhffiG+UJ(*%8H2>LN0)^+B}_L@C( zmJqbkd(Q%s;}4%E=rcpmUs;QUwuhc3=+kLKzvF3wJ~IUUH*1m5_Rv{E(AtV|7D(uK zK9vOh=jWtTsNBbRRD^BeneQ}wXZ%anW`98r^@@>@wYG4Uu!43kodvA$?x&I!&gJ;X z*VZE2?V+=TpwANP`;VR`=rd!i{Owu@+8#Pf2>L8BR^Izm67;!iti11$<)w@r0Vi*) ztfhssgcZ&b+5X2*B`ciE#>%5>k?r=-SwhffN$mUmPZRW+F;@P5Ed*^3twPY(v-9vd zEbpQxn!DI+N10aJJH^{minMYqhUu_t)|JDCvPR~BS|Yt8UYTL2bDLyEKv^u+kk;maJHP0%1veoHbo+ZFSf40b8_N8SF?3L7+5h|^0 zNHd{;GznJet8Z(gS#C)JtDjHkO)62rnrv+~BjaONe68zi-x2E4rpN4sMTcAfe?N+A#dxhQYCcB-Dxg$ItV95P#(nZ zzHENBYe-Pr{!d#OFK7EQ8+0?}LeSy=mw_W3X83St z5{%%)Hw%Z;40YlQi2+cuomN4HJpiRs_LL4)&RMb+57Bcu@B|8aS*KY^CkEY>N|`zq zZvP8mVK!jF5`*e#`!4|tIzhv*Fx$k!tPSLWgat~ZhD@ir6Q;}0^c<8-*%r=j(J*G3 zup5M&m}BWRb>Hc@phPU`xS-3ew2zV{=F$O8afUge$7sq)CQWiY*oHydmJR)!_H2;A zW=Flw+39kcEGAM!8OuZZ1l^_MN%~H**8Iz=h`qHn@8l6q1!3Q~rNsyrX|85$`z0A~ zq|J`N;K%imM+2F*kEao7%sKk(XUf8+1_R3HtlrcpLpu3}$QTJ{c0`mlL3xmcEZd%m zN;x0zdE2w`6MF|0yE6t9@P#NBV0e|trQDIjnGK$P1 zOOcC{7Y?1NX z<2+F#DD7j_>;l`)#))*Cinm$PH9H+Dsg*s~(0{)sPH(BCS5Wjfm4iNEl?xJV$Gz{Q zQAHtU#AdZM|DnUQ#XYr)2szf=#vs}59R)S4`3 zBy#9UoiGeL3>ONQ4CM=TYW0Qp)d>F!^$Aty#c#!vOfd;U_mSNCb?WSmXUyD5ll<8+ z8|y!vdZ%^1TrjQ<35P98e);L4WTsW*Fqx9QXke?`U+qjDoo9!R*sG+A`T~Wh(PRkR z67AKh<3;0Cv!SsC(fP^sS*^c!e-PXA>(|vz2GU_$QcO|%*)woH+u`csh_m1P4(*m5X!n$ zrOYNi8yT(Q20NtJ$J+hF#dWWsnt6HfPFn8YY1oK^H5*>%9hj0VM@YmDBoK)-lSWm} zoPo0AQNY>pm>Q}r^u1b>724e7T6-gV9h-GGIJ}^lV6CRDCax&YF`_adl6-u2Y9y?q z6ID3%##{l*@exC$?EKT_g#(;z%o7+DgYA0O-V{)UDm zq51ozA+0dS;hW$qJES(~#$!fXC!!lQeGo5tQOAX>t{1(i_w1I&0 zI1^QyEM1k|pLB>c(4uta+JT*g7<2+^MkC4A>- zULVU$Jn{G-bLdskYy5Kl z?nvhrt$WNc)t-vIJG$2>tbiM4Q5>q0wr6UzB|}7LDNJtjg$3GcPi!R7D$Z++{RGG- z4s)bez@y8wb5Ga4bv&mHAF`^b*0H`Q*lvwLnNF6K^ zY1Ky_$6!%pc|Ud-&Ws85TpAYL1dg_XZA`N=0%eLC37hq?!v|0D*kK}NbzI3Ofa9s- zPEEp{A!ej-9$bLnzB}#^-8&XC+E*8z!GtlUGWo)+`(Y6^f};11w6HpPvU%!YmfJjT z1{p0zGe}I4jszS0`ucpf_S2So4GkkgYbcpX)p!nda%m6u)Ch0wqCe!9hf6RG@{04e zPesuvW~N3hm?C>)RMp%D9ZA<559yrPa+xFP%gYI%UarNQ0PFqXe4v2E>WhPbOl;fli z0DiagYz^`U0?3EDrVLaMs1YTmO5Z0-2gRaX_12LHSY!|Gt>!}oeWRNi= z&p@}(j?Cu1W}W&uLF%$-07g*))lonQ@zH0eRfO*ZT&F>W<4oIwvekroP@nKYE#&tJ z?KW2q_hI06jBkyH-sPp18Z4CcFheV6?eb{X2i5MLNh!V*Eo{Ef7A;n(En9dvYKKVK z!UJP|*uKG_+waoMzHo2OR-q2zNuW z_H)C&G-SsV7!lZ#0QlxHQDO`N$1x+64QWoR>LFr1HP38zh68AWh=I65;PRCsN0Py} z!!Pt(9qWd*C9df%1f#8YlOv+?ggv9#oqKG}CWIFAa>lN(cXWIif1BXa7uLdMwq6nF zD-BU_RJV5n3T(~70ULtJyEM@vNE^aoeG9Pjqu@3qnZ~M#Dlm7GmxI!x;q2Et+p}kS zr{G=6E4HJX7iYJzimCehn#WpK)#N2`6M5AVIH{;8rcxj&Dk)<-X{bqjXX0l?{p8cV z8y2y(CP{gYj<6sv2#`>ezUF`|iN%PG%FiG~ytIxWjAYII<*eo{hI_Q*Lu+cKqj^&; zL7flf^9t&Cw@iiwTjeD2?yxNEv?ugMOyHb#$p-axL5H4NfacTsn&~A_<2hEiWaN=~xNBa^!Pu1THPXBYW%6QYjQjyP&kBU1Q`nu3nCATKK) zMf~O+gm33^669Ak5s)Y~MxuMiEJRv#EJK>N33Elxm8c3}Yka>^rrLK|WSeHv9t}(_7 z%xF$9ujq1$f{vKb`}JT>>W{stszkO%S~r~Bsk%v}TFBHVF|FZ8DQ=}B6Aii-aNcUAp0X$gBCnhddvC+T;%QagVJ|Tk>4;b+NAx;)bQy z{pBfhvabgS*==8z{Ux(tOZR%Y%Vu&;rzYqEWa?K!a98-%)jPVoB#zn`ZsWG$svJnJ z3elv0~#%Z#NuIM?3h6Xt#L*^;F5_zrFJW6VmK@+yLKk*bDN#x2D(~v>6U| zb<>`a2G^(o{HS{*dbRT!8FuTu#(Z-fI;EKNa!vF_q)jt$lWw~3cKV{_ z`ncfmkWbo-zhQIMo-d8srwqrqfmdC}4m6p`g85{-q;$SnurUJ=(-&*pbmKH;ksg7b z(f9=V<6n}$QgUqvr-2NuvS_I-NDY4RD}&5d4%Js$IplZ4^DJ);^yV0z=V+b1OY-@k zclBUX-<;}Ctw5R#=bQC#IvP&C%K#$g)yz*>0|-pDKwzp>g^*@Oruwf=2oX^dlG!j} zJk66QnkkZu=aG6mJwCTUf$TW zlfCQ5kxJM=x11xCnAD5!*%p90V^??>xup=)srTD$^sDu|Q*RNO0k9^2%))DfEjCLz z3-963xtMG^GLQdI&!f@hsZ%9{6y{NFB{A$%T6S8~*)2YBTBnm>OmW;y8OU!XNl^8x zjt%odk(+Y3*7%m$Vwt^VL~+W{j}gTww>Ux+YaN-{E;h0j-MqvZ4Q$28kZ)o2-8I~e zYs9v(RZQPFMp-(^T@O^J$(LB&a?ofut`>zBB+qC!2L4aJ-MIUu-EQ2^aDwgb0S^Y( z@7ivX-Ut@nVs{7eu9%WB9I?B3@kR+`J7+GAU!oS2jNUUewNAGFngyn2Q^RWZ8#>IE zZ9P5&c-A`mRtRv_1JgF!6FAvA4e{4>@@CbKeXi8L^?LB6hWPqUmhbX^*2)M8*uD06 zI(F}iHuAXu8UC2v{S7i5_3EFvTf>ThkR)2T^K{KNM*C&p2-Y!eWl zL#goG$LwC%Y|gr=?mcMt)`j+Zp_hkRZ^OOz>?3x!KbdY-X=W1Lj^3L@-@?V{bHdc< zJX)_}~CM?$RZ%E-+Kvlq2XBo^S!z=$eI33;(f*6M_QW5dHw-V_94beRpFi46}4< zvzh=Txxjsyj?)?$V`JHe5F;0ChT=!T-LDSmw5uYVjKppBu!fV7rnT%ct$1R;oQ6wd zeeaP54o_-es0EbK251LMsybpX*ukUp|L6zlzhZ71cc&zt`qi6EC(UwjQ9O5PO7f}i zPOy7N#NXn%OEQ<4lqfc|Mq+KoRS^d?e0$qDiZqaQ*cq^V8d+k4RVb{-`r+fJ9a;aI zI84k}87l`TzWP@)E!S6_Di~$Rj1NVd7JiPuXH_&EZ4Gwt_H&j{32_zg(>gQwI(@YI zsdEiqCc2e!SJRWrM_B!c+WViFbCLuPOA?$}T%N;9 z=MAS_j-I2)5~=;`X-C%oGEwQ29sR5R%3g^$&u^dGd&d2Spl78M|Zt_$}+&PEw z{)N+y_iO9K!{(xt)-<#*{g4b$nWee%|CHf>zie|qu89xQOu4s-EWjBv8T5zuiVrLQ zZ@$BCagC?!48GPl_;{JUUNPs5cXWmnADpU+eT`?pwCB}5Hm%*_zx$}s3gm@dP3~qP zxu@j2>}Pj$ck4>;;3;iUp5se!PgpecdpI&jQ%0!80C?*qmJG@J-QAWjSrVo&$=Ow& zuhxD1Wm`4E-OK3Bd^h=G!iFXO{oF9$k^PJo%UJ>E0T#jp{W8#_?KYmzHl?L3bEr9* zwp#C&6umBJ)j9(;Jie_iWU!#`99dk(TQnB2z4#+2EP}9V{%a(4K$+e`<6&t{I_NY;@%_|M(E^UC}c&oNY2$3c59puGons%#;D_|KM|pLywoFVquNls#or~40S`m}myttb z6G3Ak1-hEHRX8;xH<%QQh%{&`b}npm`IEjsWN8Tjw93oYu)NIH5E#**;0Cg@QW5QMv|3oc(T zIYcB5b6|O=Qs3oo^(O~9&HOkA>k*<7g!J_;zjPw#K4DxEVY>}Rc}OcRr?LB?ySNXD z#hIXIt3Y{Os@)G6&Ju3!WO}_%Qv;Dj12i9#Obn2O3I%B*U|LmEFT0cdD+xS#dE@JN zVB(py!P+%qj)qO4u{!;u{7<4#mPpQ{NLEA0LlVwAWbioTex|8mZHK}VA!3ibaoV!@Fvrmgf^-dX^I+5%7{2>$Wox@P zy#LQZdU?YKHG=o}2)=1LosQuPja@RLb^j+)OmqoC4|N z=+3N6e_N7_rpn8oNjX9RwB6B?Wz9`VIp{0#%gCuD83!WaHBg$ER$x!4PL#tL^-nD>vnn3?c!a?x&}Sz5Y-3|$?n zCJ`ha>mD`qFJSjT(L0M!(O7`ojAW&m+rZBkA9x_SsC@6`yXJ<)H2u`lz*KpPm_FWa zD3!RTx*e8}R~{Q!3;pMnpAephfmTEh<>xH7z!R%S1QmkEaBE7StH`E3iENXg5u=0t zJmWqkb%jSKCp&#Vk~Ak{@~ODTh@f3lXxpuK%B{P~?_2AUcui6)AorXAe1Aj?kOo^1itt$KNCgF9P_u`^}pjG`zN zGm0EFI4h1dV*m|P8nbsDyix}A#Qr)qK#vksIyi>XH=57^x!U$Z4_ICDwOPi{Ft%KK zXMsn?z_O7u)1@9Kb$vcNSIZytcRo8OP(L)v)FX1StWJ+VtL$A|^mc2+j0Z$J2<)kl z=jhlEy`ciTi;(4jOPO2|nOd)(&^aT^j~S)TG|002oIUCtQ_}1V%L5h)9G6|9STeXK zh$Z?F?Vm%H=J%3bZU5|V%{A#$(~BkAPs=Vu(m~G8<_CTMe14vCTJ|h|cb>odHNQKT z9|Yz(UWD04lSbE!)qRqa`ESdQDygP_W`3608H~J@(S1H*>5`cp#XEnVR0tJ2B{`d^ z*{o@a?&Mcw$Z};B2V3(DbuTuCa2T_u`RWWev!rXgHO&IQT1JO|vB2`nm*`R}gx&JP zvXHF}pIua1lj1oNAHb@OX6Y|VsgTX9o(A~Y;f$*wcdl{kq@o-z4C8f8(sXuH2~?GU zU{!B%;Vji^PQ^+z1Cup6YaymT4Fk!;NuU$zWu*@<7nt9%NB^QhnMGO&Oz$bSwtZcR z6zefkSrztyKps@NZA*Je)5#?*-* z6`)r-K|m5XSQK1qBte9V#8|q!{9^Q=Xkx^&ZOjLbUn78hxmm0y zurkSVz2rBjQkjRt^Jq&n4lNa}mD*H2l9t7EfOCsBfP(ND(M*>AwOXN0v_rp)jBeY( zLtkGsQ#1O3@t%5rC;u%l43dp`VnMC_sloJy;mqvD6PQMzeqZ{(_KOUs`P$@to9D%c zgFtWjK+Km4`Q;QgWs)N$s7}* z6@}Qh8q8N{P{XSYK&zlf8*@U_r`nb3(mo>DFn#C6juTNWf-`xI6Pax*{TCKPQz;$E=wX5nz{B%)@?NtIHg4t>!w2O zKZ;$r{TSDcic@j;J;%6i%aaf|^XtdBZVOkJ^sksgoO$RkE6lGtz!hciO