diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 80efcaa9..0662fcb8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -57,7 +57,7 @@ jobs: strategy: fail-fast: false matrix: - toolchain: [ nightly, beta, stable, 1.76.0 ] + toolchain: [ nightly, beta, stable, 1.77.0 ] steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master diff --git a/.rustfmt.toml b/.rustfmt.toml index 9017cd7d..6d14899a 100644 --- a/.rustfmt.toml +++ b/.rustfmt.toml @@ -1,5 +1,5 @@ edition = "2021" -version = "Two" +style_edition = "2021" max_width = 100 array_width = 100 diff --git a/Cargo.lock b/Cargo.lock index 580c91a0..e5bc4d83 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,8 @@ version = 3 [[package]] name = "aluvm" -version = "0.11.0-beta.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db04c1d697d7f5b86d935bfe06cfd0310fd8a6c491b043118bec228597dcede9" +version = "0.11.0-beta.9" +source = "git+https://github.com/AluVM/rust-aluvm?branch=develop#24bff9f61570ea26d14e86aa5e127937aa122440" dependencies = [ "amplify", "ascii-armor", @@ -101,9 +100,9 @@ dependencies = [ [[package]] name = "arrayref" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" [[package]] name = "arrayvec" @@ -135,9 +134,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "baid64" @@ -172,12 +171,28 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +[[package]] +name = "bitcoin-io" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "340e09e8399c7bd8912f495af6aa58bea0c9214773417ffaa8f6460f93aaee56" + [[package]] name = "bitcoin-private" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73290177011694f38ec25e165d0387ab7ea749a4b81cd4c80dae5988229f7a57" +[[package]] +name = "bitcoin_hashes" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +dependencies = [ + "bitcoin-io", + "hex-conservative", +] + [[package]] name = "bitflags" version = "1.3.2" @@ -214,13 +229,13 @@ dependencies = [ [[package]] name = "bp-consensus" -version = "0.11.0-beta.8" -source = "git+https://github.com/BP-WG/bp-core?branch=methods#725a24e3ec1d5e3951cb317eae95c200115295ff" +version = "0.11.0-beta.9" +source = "git+https://github.com/BP-WG/bp-core?branch=develop#0f591b4bcbd16d4bab3c9fe7134b9eaf8d397023" dependencies = [ "amplify", "chrono", "commit_verify", - "secp256k1", + "secp256k1 0.30.0", "serde", "strict_encoding", "strict_types", @@ -228,8 +243,8 @@ dependencies = [ [[package]] name = "bp-core" -version = "0.11.0-beta.8" -source = "git+https://github.com/BP-WG/bp-core?branch=methods#725a24e3ec1d5e3951cb317eae95c200115295ff" +version = "0.11.0-beta.9" +source = "git+https://github.com/BP-WG/bp-core?branch=develop#0f591b4bcbd16d4bab3c9fe7134b9eaf8d397023" dependencies = [ "amplify", "bp-consensus", @@ -246,23 +261,22 @@ dependencies = [ [[package]] name = "bp-dbc" -version = "0.11.0-beta.8" -source = "git+https://github.com/BP-WG/bp-core?branch=methods#725a24e3ec1d5e3951cb317eae95c200115295ff" +version = "0.11.0-beta.9" +source = "git+https://github.com/BP-WG/bp-core?branch=develop#0f591b4bcbd16d4bab3c9fe7134b9eaf8d397023" dependencies = [ "amplify", "base85", "bp-consensus", "commit_verify", - "secp256k1", + "secp256k1 0.30.0", "serde", "strict_encoding", ] [[package]] name = "bp-invoice" -version = "0.11.0-beta.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29c4f672b4b82ce7a218b2900254ac8e4b15b0022ed13abffa722571e73d375" +version = "0.11.0-beta.9" +source = "git+https://github.com/BP-WG/bp-std?branch=develop#b83739dc1ee3299a85f4cb040e061597dd9be2db" dependencies = [ "amplify", "bech32", @@ -272,8 +286,8 @@ dependencies = [ [[package]] name = "bp-seals" -version = "0.11.0-beta.8" -source = "git+https://github.com/BP-WG/bp-core?branch=methods#725a24e3ec1d5e3951cb317eae95c200115295ff" +version = "0.11.0-beta.9" +source = "git+https://github.com/BP-WG/bp-core?branch=develop#0f591b4bcbd16d4bab3c9fe7134b9eaf8d397023" dependencies = [ "amplify", "baid64", @@ -300,9 +314,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cc" -version = "1.1.16" +version = "1.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" +checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" dependencies = [ "shlex", ] @@ -330,9 +344,8 @@ dependencies = [ [[package]] name = "commit_encoding_derive" -version = "0.11.0-beta.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea07c5ad73a637276dc4f8a957f8285764018d45bdefef35eb9137f32d0e3c81" +version = "0.11.0-beta.9" +source = "git+https://github.com/LNP-BP/client_side_validation?branch=develop#4015f1fb9e99fdc536c69b957fa5727da9cfa6a9" dependencies = [ "amplify", "amplify_syn", @@ -343,9 +356,8 @@ dependencies = [ [[package]] name = "commit_verify" -version = "0.11.0-beta.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82a1982dc6c54d2dcfa2bf4398d97e4e80a93f24d2537e58d6110b2b272cff0c" +version = "0.11.0-beta.9" +source = "git+https://github.com/LNP-BP/client_side_validation?branch=develop#4015f1fb9e99fdc536c69b957fa5727da9cfa6a9" dependencies = [ "amplify", "commit_encoding_derive", @@ -382,9 +394,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" dependencies = [ "libc", ] @@ -423,9 +435,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "fast32" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27ea9bdb2356e5a92403cf23ac493f9b43bd71e4ffd0f800862b841dd723994c" +checksum = "a35a73237400bde66c82e38387343f90d7182a2f2f22729e096a2abd57d75db9" [[package]] name = "fluent-uri" @@ -471,9 +483,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" [[package]] name = "heck" @@ -481,11 +493,20 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" +[[package]] +name = "hex-conservative" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] + [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -506,9 +527,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", "hashbrown", @@ -522,18 +543,18 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ "wasm-bindgen", ] [[package]] name = "libc" -version = "0.2.158" +version = "0.2.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" [[package]] name = "log" @@ -571,9 +592,9 @@ checksum = "f2b8f3a258db515d5e91a904ce4ae3f73e091149b90cadbdb93d210bee07f63b" [[package]] name = "nonasync" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94a84b7c873630913f738950f17412b9d5b24cad6866b98b802253f8cbbefabb" +checksum = "4b1005555d351f593bf72ffc3a89a0d42e243df004d2c4ded17699f10b562b98" dependencies = [ "amplify", ] @@ -589,9 +610,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.19.0" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "paste" @@ -616,9 +637,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a" dependencies = [ "unicode-ident", ] @@ -664,8 +685,8 @@ dependencies = [ [[package]] name = "rgb-core" -version = "0.11.0-beta.8" -source = "git+https://github.com/RGB-WG/rgb-core?branch=methods#6ea499ddadf24c98b806b9a7342ca5d3fa5d5b70" +version = "0.11.0-beta.9" +source = "git+https://github.com/RGB-WG/rgb-core?branch=develop#50027495bf5e464f0e49edf65417f8caed837a39" dependencies = [ "aluvm", "amplify", @@ -685,7 +706,7 @@ dependencies = [ [[package]] name = "rgb-invoice" -version = "0.11.0-beta.8" +version = "0.11.0-beta.9" dependencies = [ "amplify", "baid64", @@ -704,7 +725,7 @@ dependencies = [ [[package]] name = "rgb-std" -version = "0.11.0-beta.8" +version = "0.11.0-beta.9" dependencies = [ "aluvm", "amplify", @@ -729,7 +750,7 @@ dependencies = [ [[package]] name = "rgb-stl" -version = "0.11.0-beta.8" +version = "0.11.0-beta.9" dependencies = [ "amplify", "commit_verify", @@ -769,10 +790,22 @@ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "secp256k1" -version = "0.29.0" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" +dependencies = [ + "rand", + "secp256k1-sys", + "serde", +] + +[[package]] +name = "secp256k1" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0cc0f1cf93f4969faf3ea1c7d8a9faed25918d96affa959720823dfe86d4f3" +checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" dependencies = [ + "bitcoin_hashes", "rand", "secp256k1-sys", "serde", @@ -780,9 +813,9 @@ dependencies = [ [[package]] name = "secp256k1-sys" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1433bd67156263443f14d603720b082dd3121779323fce20cba2aa07b874bc1b" +checksum = "d4387882333d3aa8cb20530a17c69a3752e97837832f34f6dccc760e715001d9" dependencies = [ "cc", ] @@ -795,7 +828,7 @@ checksum = "52a44aed3002b5ae975f8624c5df3a949cfbf00479e18778b6058fcd213b76e3" dependencies = [ "bitcoin-private", "rand", - "secp256k1", + "secp256k1 0.29.1", "secp256k1-zkp-sys", "serde", ] @@ -812,22 +845,22 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", ] [[package]] @@ -844,9 +877,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d" +checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" dependencies = [ "serde", ] @@ -893,9 +926,8 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "single_use_seals" -version = "0.11.0-beta.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1a4c51f21507cf63984c367507f281215073e85b08711ed7da4fc63dbd709e0" +version = "0.11.0-beta.9" +source = "git+https://github.com/LNP-BP/client_side_validation?branch=develop#4015f1fb9e99fdc536c69b957fa5727da9cfa6a9" dependencies = [ "amplify_derive", ] @@ -970,9 +1002,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.77" +version = "2.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" dependencies = [ "proc-macro2", "quote", @@ -981,22 +1013,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", ] [[package]] @@ -1022,9 +1054,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.20" +version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ "indexmap", "serde", @@ -1041,9 +1073,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unsafe-libyaml" @@ -1085,9 +1117,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" dependencies = [ "cfg-if", "once_cell", @@ -1096,24 +1128,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.43" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" dependencies = [ "cfg-if", "js-sys", @@ -1123,9 +1155,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -1133,28 +1165,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "wasm-bindgen-test" -version = "0.3.43" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68497a05fb21143a08a7d24fc81763384a3072ee43c44e86aad1744d6adef9d9" +checksum = "d381749acb0943d357dcbd8f0b100640679883fcdeeef04def49daf8d33a5426" dependencies = [ "console_error_panic_hook", "js-sys", @@ -1167,20 +1199,20 @@ dependencies = [ [[package]] name = "wasm-bindgen-test-macro" -version = "0.3.43" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8220be1fa9e4c889b30fd207d4906657e7e90b12e0e6b0c8b8d8709f5de021" +checksum = "c97b2ef2c8d627381e51c071c2ab328eac606d3f69dd82bcbca20a9e389d95f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", ] [[package]] name = "web-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" dependencies = [ "js-sys", "wasm-bindgen", @@ -1279,9 +1311,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.18" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" dependencies = [ "memchr", ] @@ -1304,5 +1336,5 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.77", + "syn 2.0.79", ] diff --git a/Cargo.toml b/Cargo.toml index 93b41b58..f5b96320 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,13 +11,13 @@ default-members = [ resolver = "2" [workspace.package] -version = "0.11.0-beta.8" +version = "0.11.0-beta.9" authors = ["Dr Maxim Orlovsky "] homepage = "https://github.com/RGB-WG" repository = "https://github.com/RGB-WG/rgb-std" keywords = ["bitcoin", "lightning", "rgb", "smart-contracts", "lnp-bp"] categories = ["cryptography::cryptocurrencies"] -rust-version = "1.76.0" # Due to use of `inspect_err` +rust-version = "1.77.0" # Due to use of `rustfix` edition = "2021" license = "Apache-2.0" @@ -28,10 +28,10 @@ ascii-armor = "0.7.2" baid64 = "0.2.2" strict_encoding = "2.7.0" strict_types = "2.7.0" -commit_verify = { version = "0.11.0-beta.8", features = ["stl"] } -bp-core = { version = "0.11.0-beta.8", features = ["stl"] } -bp-invoice = { version = "0.11.0-beta.8" } -rgb-core = { version = "0.11.0-beta.8", features = ["stl"] } +commit_verify = { version = "0.11.0-beta.9", features = ["stl"] } +bp-core = { version = "0.11.0-beta.9", features = ["stl"] } +bp-invoice = { version = "0.11.0-beta.9" } +rgb-core = { version = "0.11.0-beta.9", features = ["stl"] } indexmap = "2.4.0" serde_crate = { package = "serde", version = "1", features = ["derive"] } @@ -63,8 +63,8 @@ strict_types = { workspace = true } commit_verify = { workspace = true } bp-core = { workspace = true } rgb-core = { workspace = true } -rgb-invoice = { version = "0.11.0-beta.6", path = "invoice" } -aluvm = "0.11.0-beta.7" +rgb-invoice = { version = "0.11.0-beta.9", path = "invoice" } +aluvm = "0.11.0-beta.9" base85 = "=2.0.0" chrono = "0.4.38" indexmap = { workspace = true } @@ -99,8 +99,12 @@ wasm-bindgen-test = "0.3" features = ["all"] [patch.crates-io] -bp-consensus = { git = "https://github.com/BP-WG/bp-core", branch = "methods" } -bp-dbc = { git = "https://github.com/BP-WG/bp-core", branch = "methods" } -bp-seals = { git = "https://github.com/BP-WG/bp-core", branch = "methods" } -bp-core = { git = "https://github.com/BP-WG/bp-core", branch = "methods" } -rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "methods" } +commit_verify = { git = "https://github.com/LNP-BP/client_side_validation", branch = "develop" } +single_use_seals = { git = "https://github.com/LNP-BP/client_side_validation", branch = "develop" } +aluvm = { git = "https://github.com/AluVM/rust-aluvm", branch = "develop" } +bp-consensus = { git = "https://github.com/BP-WG/bp-core", branch = "develop" } +bp-dbc = { git = "https://github.com/BP-WG/bp-core", branch = "develop" } +bp-seals = { git = "https://github.com/BP-WG/bp-core", branch = "develop" } +bp-core = { git = "https://github.com/BP-WG/bp-core", branch = "develop" } +bp-invoice = { git = "https://github.com/BP-WG/bp-std", branch = "develop" } +rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "develop" } diff --git a/MANIFEST.yml b/MANIFEST.yml index c5f31a0d..6e84d0f4 100644 --- a/MANIFEST.yml +++ b/MANIFEST.yml @@ -3,7 +3,7 @@ Type: Library Kind: Free software License: Apache-2.0 Language: Rust -Compiler: 1.76 +Compiler: 1.77 Author: Maxim Orlovsky Maintained: LNP/BP Standards Association, Switzerland Maintainers: diff --git a/invoice/Cargo.toml b/invoice/Cargo.toml index b0cfb329..05673093 100644 --- a/invoice/Cargo.toml +++ b/invoice/Cargo.toml @@ -18,7 +18,7 @@ name = "rgbinvoice" [dependencies] amplify = { workspace = true } baid64 = { workspace = true } -fast32 = "1.0.2" +fast32 = "1.0.3" strict_encoding = { workspace = true } strict_types = { workspace = true } bp-core = { workspace = true } diff --git a/src/containers/anchors.rs b/src/containers/anchors.rs index 92ff6853..2c7c1671 100644 --- a/src/containers/anchors.rs +++ b/src/containers/anchors.rs @@ -391,14 +391,13 @@ impl AnchoredBundles { Dichotomy::single((anchor, &tapret.bundle)) } AnchoredBundles::Opret(opret) => { - let anchor = EAnchor::new(opret.mpc_proof.clone(), opret.dbc_proof.clone().into()); + let anchor = EAnchor::new(opret.mpc_proof.clone(), opret.dbc_proof.into()); Dichotomy::single((anchor, &opret.bundle)) } AnchoredBundles::Double { tapret, opret } => { let tapret_anchor = EAnchor::new(tapret.mpc_proof.clone(), tapret.dbc_proof.clone().into()); - let opret_anchor = - EAnchor::new(opret.mpc_proof.clone(), opret.dbc_proof.clone().into()); + let opret_anchor = EAnchor::new(opret.mpc_proof.clone(), opret.dbc_proof.into()); Dichotomy::double((tapret_anchor, &tapret.bundle), (opret_anchor, &opret.bundle)) } } diff --git a/src/containers/consignment.rs b/src/containers/consignment.rs index 045bc9c1..f76d4162 100644 --- a/src/containers/consignment.rs +++ b/src/containers/consignment.rs @@ -557,23 +557,23 @@ Check-SHA256: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa // Wrong type // TODO: Uncomment once ASCII headers get checked /*assert!(matches!( - Transfer::from_str( - r#"-----BEGIN RGB CONSIGNMENT----- -Id: rgb:csg:9jMKgkmP-alPghZC-bu65ctP-GT5tKgM-cAbaTLT-rhu8xQo#urban-athena-adam -Version: 2 -Type: contract -Contract: rgb:T24t0N1D-eiInTgb-BXlrrXz-$7OgV6n-WJWHPUD-BWNuqZw -Schema: rgb:sch:CyqM42yAdM1moWyNZPQedAYt73BM$k9z$dKLUXY1voA#cello-global-deluxe -Check-SHA256: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - -0s#O3000000000000000000000000000000000000000000000000000000D0CRI`I$>^aZh38Qb#nj! -0000000000000000000000d59ZDjxe00000000dDb8~4rVQz13d2MfXa{vGU00000000000000000000 -0000000000000 - ------END RGB CONSIGNMENT-----"# - ), - Err(ConsignmentParseError::Type) - ));*/ + Transfer::from_str( + r#"-----BEGIN RGB CONSIGNMENT----- + Id: rgb:csg:9jMKgkmP-alPghZC-bu65ctP-GT5tKgM-cAbaTLT-rhu8xQo#urban-athena-adam + Version: 2 + Type: contract + Contract: rgb:T24t0N1D-eiInTgb-BXlrrXz-$7OgV6n-WJWHPUD-BWNuqZw + Schema: rgb:sch:CyqM42yAdM1moWyNZPQedAYt73BM$k9z$dKLUXY1voA#cello-global-deluxe + Check-SHA256: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + + 0s#O3000000000000000000000000000000000000000000000000000000D0CRI`I$>^aZh38Qb#nj! + 0000000000000000000000d59ZDjxe00000000dDb8~4rVQz13d2MfXa{vGU00000000000000000000 + 0000000000000 + + -----END RGB CONSIGNMENT-----"# + ), + Err(ConsignmentParseError::Type) + ));*/ assert!(matches!( Transfer::from_str(include_str!("../../asset/armored_contract.default")), Err(ConsignmentParseError::Type) diff --git a/src/containers/kit.rs b/src/containers/kit.rs index c764aa83..4316f83c 100644 --- a/src/containers/kit.rs +++ b/src/containers/kit.rs @@ -289,9 +289,8 @@ mod test { #[test] fn error_kit_strs() { - assert!( - Kit::from_str( - r#"-----BEGIN RGB KIT----- + assert!(Kit::from_str( + r#"-----BEGIN RGB KIT----- Id: rgb:kit:e1jW6Rgc-2$JzXDg-XmR8XRJ-v!q$Dzf-yImkPjD-t8EjfvI Version: 2 Type-System: sts:8Vb$sM1F-5MsQc20-HEixf55-gJR37FM-0zRKfpY-SwIp35w#design-farmer-camel @@ -300,14 +299,12 @@ Check-SHA256: 5563cc1568e244183804e0db3cec6ff9bf577f4a403924096177bf4a586160da 0ssI2000000000 -----END RGB KIT-----"# - ) - .is_ok() - ); + ) + .is_ok()); // Wrong Id - assert!( - Kit::from_str( - r#"-----BEGIN RGB KIT----- + assert!(Kit::from_str( + r#"-----BEGIN RGB KIT----- Id: rgb:kit:11111111-2222222-XmR8XRJ-v!q$Dzf-yImkPjD-t8EjfvI Version: 2 Type-System: sts:8Vb$sM1F-5MsQc20-HEixf55-gJR37FM-0zRKfpY-SwIp35w#design-farmer-camel @@ -316,14 +313,12 @@ Check-SHA256: 5563cc1568e244183804e0db3cec6ff9bf577f4a403924096177bf4a586160da 0ssI2000000000 -----END RGB KIT-----"# - ) - .is_err() - ); + ) + .is_err()); // wrong checksum - assert!( - Kit::from_str( - r#"-----BEGIN RGB KIT----- + assert!(Kit::from_str( + r#"-----BEGIN RGB KIT----- Id: rgb:kit:e1jW6Rgc-2$JzXDg-XmR8XRJ-v!q$Dzf-yImkPjD-t8EjfvI Version: 2 Type-System: sts:8Vb$sM1F-5MsQc20-HEixf55-gJR37FM-0zRKfpY-SwIp35w#design-farmer-camel @@ -332,8 +327,7 @@ Check-SHA256: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 0ssI2000000000 -----END RGB KIT-----"# - ) - .is_err() - ); + ) + .is_err()); } } diff --git a/src/containers/partials.rs b/src/containers/partials.rs index c46ccb5b..ed2d6ee9 100644 --- a/src/containers/partials.rs +++ b/src/containers/partials.rs @@ -89,7 +89,13 @@ impl BitOrAssign for Option { impl> BitOr for CloseMethodSet { type Output = Self; - fn bitor(self, rhs: T) -> Self::Output { if self == rhs.into() { self } else { Self::Both } } + fn bitor(self, rhs: T) -> Self::Output { + if self == rhs.into() { + self + } else { + Self::Both + } + } } impl> BitOrAssign for CloseMethodSet { diff --git a/src/interface/iface.rs b/src/interface/iface.rs index 6b2e7d1a..d4a904fc 100644 --- a/src/interface/iface.rs +++ b/src/interface/iface.rs @@ -246,7 +246,11 @@ pub enum OwnedIface { impl OwnedIface { pub fn sem_id(&self) -> Option { - if let Self::Data(id) = self { Some(*id) } else { None } + if let Self::Data(id) = self { + Some(*id) + } else { + None + } } } @@ -609,7 +613,11 @@ impl Iface { } } - if errors.is_empty() { Ok(()) } else { Err(errors) } + if errors.is_empty() { + Ok(()) + } else { + Err(errors) + } } // TODO: Implement checking interface inheritance. diff --git a/src/interface/iimpl.rs b/src/interface/iimpl.rs index bad1a1c6..1e528ed1 100644 --- a/src/interface/iimpl.rs +++ b/src/interface/iimpl.rs @@ -554,6 +554,10 @@ impl IfaceImpl { } } - if errors.is_empty() { Ok(()) } else { Err(errors) } + if errors.is_empty() { + Ok(()) + } else { + Err(errors) + } } } diff --git a/src/interface/inheritance.rs b/src/interface/inheritance.rs index 8a1f945b..518c0595 100644 --- a/src/interface/inheritance.rs +++ b/src/interface/inheritance.rs @@ -137,7 +137,11 @@ impl CheckInheritance for Schema { } } - if status.is_empty() { Ok(()) } else { Err(status) } + if status.is_empty() { + Ok(()) + } else { + Err(status) + } } } @@ -208,7 +212,11 @@ where T: OpSchema } } - if status.is_empty() { Ok(()) } else { Err(status) } + if status.is_empty() { + Ok(()) + } else { + Err(status) + } } } @@ -503,7 +511,11 @@ impl Iface { .map_err(|_| errors.push(ExtensionError::InheritanceOverflow)) .ok(); - if errors.is_empty() { Ok(self) } else { Err(errors) } + if errors.is_empty() { + Ok(self) + } else { + Err(errors) + } } } @@ -575,7 +587,11 @@ impl GenesisIface { check_presence(&mut self.valencies, ext.valencies, op.clone(), "valency", &mut errors); check_presence(&mut self.errors, ext.errors, op.clone(), "error", &mut errors); - if errors.is_empty() { Ok(self) } else { Err(errors) } + if errors.is_empty() { + Ok(self) + } else { + Err(errors) + } } } @@ -612,7 +628,11 @@ impl TransitionIface { } } - if errors.is_empty() { Ok(self) } else { Err(errors) } + if errors.is_empty() { + Ok(self) + } else { + Err(errors) + } } } @@ -649,7 +669,11 @@ impl ExtensionIface { } } - if errors.is_empty() { Ok(self) } else { Err(errors) } + if errors.is_empty() { + Ok(self) + } else { + Err(errors) + } } } diff --git a/src/persistence/stash.rs b/src/persistence/stash.rs index dd0d6abb..c42764e9 100644 --- a/src/persistence/stash.rs +++ b/src/persistence/stash.rs @@ -774,7 +774,7 @@ pub trait StashWriteProvider: StoreTransaction { fn replace_bundle(&mut self, bundle: TransitionBundle) -> Result; fn replace_witness(&mut self, witness: SealWitness) -> Result; fn replace_attachment(&mut self, id: AttachId, attach: MediumBlob) - -> Result; + -> Result; fn replace_lib(&mut self, lib: Lib) -> Result; fn consume_types(&mut self, types: TypeSystem) -> Result<(), Self::Error>; diff --git a/src/persistence/stock.rs b/src/persistence/stock.rs index b90c3052..4b778ca1 100644 --- a/src/persistence/stock.rs +++ b/src/persistence/stock.rs @@ -510,8 +510,8 @@ impl Stock { &'a self, ) -> Result< impl Iterator< - Item = > as IfaceWrapper>>::Info, - > + 'a, + Item = > as IfaceWrapper>>::Info, + > + 'a, StockError, > { Ok(self.stash.geneses_by::()?.filter_map(|genesis| { diff --git a/src/stl/stl.rs b/src/stl/stl.rs index 959cf478..c0243564 100644 --- a/src/stl/stl.rs +++ b/src/stl/stl.rs @@ -41,7 +41,7 @@ use crate::LIB_NAME_RGB_STD; /// Strict types id for the library providing standard data types which may be /// used in RGB smart contracts. pub const LIB_ID_RGB_STORAGE: &str = - "stl:hHEaUT1x-VjyiUK0-v$pgYr0-xQwdM5m-S3UaY23-nj7!2vM#orbit-virgo-basil"; + "stl:mG$H7b6I-$T8qp18-07PSNeA-rbEBNS5-$J5X4y0-1vPxRWg#channel-vortex-bandit"; /// Strict types id for the library providing standard data types which may be /// used in RGB smart contracts. diff --git a/stl/RGBStorage@0.11.0.sta b/stl/RGBStorage@0.11.0.sta index 22529f61..3a12b1b6 100644 --- a/stl/RGBStorage@0.11.0.sta +++ b/stl/RGBStorage@0.11.0.sta @@ -1,5 +1,5 @@ -----BEGIN STRICT TYPE LIB----- -Id: stl:hHEaUT1x-VjyiUK0-v$pgYr0-xQwdM5m-S3UaY23-nj7!2vM#orbit-virgo-basil +Id: stl:mG$H7b6I-$T8qp18-07PSNeA-rbEBNS5-$J5X4y0-1vPxRWg#channel-vortex-bandit Name: RGBStorage Dependencies: RGBCommit#harvest-person-orion, @@ -8,16 +8,16 @@ Dependencies: BPCore#austin-story-retro, AluVM#congo-archive-folio, CommitVerify#miller-pancake-elastic, - RGBLogic#rapid-baboon-satire, + RGBLogic#import-boxer-seminar, Std#ralph-blue-lucky, Bitcoin#signal-color-cipher -Check-SHA256: 21288028263f43cb6a61761336c6ffb69b6e948258d2077d35c0264ad5b8e685 +Check-SHA256: 1b751fa1bbeea231625cc17129d356fefecb85e0974f343cadf022d6c227ad17 3Q|WxQ*>`~VP|CtAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{j2~tNwLvL+uX>=wP0_2znD++Ak !AD4^=04ZLvBczwX;cPMM?zC{WJT(uU)%QMkO4aJ;_ZeCe;xE!X<$x_Fs4If6Z`oP*$Y#2 a%p39RC#b^b5;}9*VKn|nRBmPlPrrd^EP>$AHP6|FsuXsI;G3ONCrYsLvM0rVsJHoA?4$swuZp1Wc+9A Of`(TIbyKWjTy4WkGaM+1wm|eR!w>X9p7nv%krpqN>ouDKt(|ZPQb$5eZ)a&^$}AplgPGkh3_fq3Q7_j=2#kPT +X=ZtvscouL@X!nKLI&Lh~GYywm#15DT%6aZ|SrJerP1pIOD57`7Ol|-ogQ6Pjg~y>s-v>!^VNPLfWv4Jz0xkJm$nc4y @@ -51,7 +51,7 @@ H8-hI70Bv^+*0?ef%0)>Q3WPbltNdpi4*91)SI!>2Tf&jb75y?IG#g>Clv)aMjKgwAH@`bu1x<7g|G$} _h5K%L=laq&yA1JoJ^{7>oKLkF4~iax8KK|47hp@Qe|^xa&~28LV0v$b1}=fEj#9D^K)f#Cf|Xn@L3mU 0Z2&n-dr?jcD1Ll0RawDWpib6c4cHjd30rSGT61bmh)A>-9G+(AKhLw+s!eDmlO2>&}_PPHjCBJR|r&c Wo1rpWM%K_6AuO0fiYoI|8ZKC9(55{UNs2(LOhfb*8wh)9?K3=Wpib6c4cHjd30rSH2#7XN#A(BKKz&v -`r;e6DUv<<*U}c>*a184%wsNMHUptBVZ#B!U% +`r;e6DUv<<*U}c>;b184%wsNMHUptBVZ#B!U% rHo-i1kG~VoNp!e_~i}U4@G!%Wo~n6Z*Eg#Xk~3-1ACLTJsO2B2U!6ncg?mz@CdC==Kxq?gSEg)z2E{| 2tsvkWNc+gWC^x^65s1c;WeUUgB8EM+V1n+T F3m?Yd1DC`X&GvUv9(-1>WQHGZVX3kZ(?C=R$**)WpflIJdRMsrjHBJ^EIe4enz&iEACnc`NWk%>en!w @@ -75,149 +75,149 @@ Y-w&}Q)OXnRCsA*Vd@w5&2+699UCMSB2$w)@^&J+aUCZtmJ634`nl9<7(sJ$X=iS2Wo~qHLTqVnWK(5f Y*ct@WMp+7La7y@JVOzJ)&GXo9MeQ_qmbcB?4VH0I#X{*-VH@~bY*UHX>V>+d2nTIM8@PY!h`6Z9%SYt5l1;p48RB~Z%b7^#GZ*Eg#Xk~3-d$KicKz74!90ND1i-DNy><~nF -Gwl#>J&iiT&+eT*8dQ03Wn@8fb7^O8b3$xsZe&wsVQf@*P;_#E9_N=1kiT6@?qiUXo4Z8}iXVUo?CzP| -ak(fG&*D)aL349yXKqquc4c8~Wn@HQbYVhlX>MdwWnpYocu;h5f(#9>YyC6dKSj6?lx}!~!>v+nlk{(+0jO?A+73c&X>Md`Zf8beV{~tFhyLPaScq)s9KMEx -vw34D6J>+NwrBxfixd_%u|$Wt4ncEsX=iS2Wo~p-d2nTkYgi@C#*klFTE}3hP#3Wmki}o*nL&Ed10e7t -M;q}9SVL%GX>L?_X=IPP!sthuPUKDEU2%WC`V+X+(UG)mk--2W1{>juaWxcJLug@XZbEEnZe&wsVQf@* -P;_#W5WIk~G+K)5%bR49t5yk`^qQ9iPjGK_bd$i8ToRU7hj7c;WkPIeZe&wsVQf@*X=IdA)7t~9tEf?*r}jS36zkMYeK9}${s8)2 -BzjZ?kPrw{V`yb-W|y2ahx -3nF|Vuawki#7NH?S|Q-Q!u2{b3PW#hbaG*1bV+2Uj4+W$OUgRJVvNU?M2#%ns>Kwa1v8ba_B>T#2Nxy{ -Ms;pyX<}?;Q*>c;WvQZiSChz_$|Xx}eRkFNAr%^eLl(1e@}~9=0-ijXfCfo!aCLNZuZ@?{0aPfN4Did> -Ze%hHN@6KPlLd+s#TneAz-EYx5L9wuZgXjLX>V>qb#7#AWwz*mh8!q$B6|*YuiTY;OURW8#d%1{rxIXt -TaY^?oCrx|Wo~q7ba}{Yf_n>Eea4XlBy!~v3=AX`3Ri2tjjmWpq?wXVGUDy+ac4_6daU{%%bk3j+fu`A*2Y1(Gbp$uTFE -suoy7Xklq?MR;&*X=7=0Q)OXnRCsA*)s0^W44Z@6CZq~drvB7pz2;cIXd9lO&nf5a*AnfQld~-bdb4MdwWnpYocu;h5+M7`mSQb`xkca!3_>4e9YQ#rfba;u!+d5tm#=h2RwFD4YLug@XZc}Ara%FT=WnpaHg=PS6VPp{$?vC-- -s`v@B8YHl)C#jpVFzBk!DMw8SR$**qZewX>bKWD7Yo@G%*b#-tU^&3KX?w7l?~*Sh8@1jRRblZzybDKc -Z(?C=Q*>c;W#7-Kk@bh=O+>c=6Nvv2!%cWh5H`};;G4e`yboldn7 -SVL%GX>L$;VpnN&Ze??G{4_<~U(XE-|Ev|Hdb$N7;9H9;8!%;3hl7uME$faw4?}NmV`X7%Wn@8gbYWv? -|7c^tcv66A`G>fIP}NCm0qyW47Umu?kmdbZ%vHb5L({_6sAL7mGp}OcA!CL~}i)2Slu_c$oJJbQGPZ -GGuje3Rh`#Ze??GPjX}iQb$5lbYv<320KfVtdv3E%6>Cqk43jf-YC|}(kgS&RQe`%bQtg9 -OuU(MB+3^mE|~AfiD0OzeAWk8kQh#3ZDnLeX=Q9=RB~Z%b7^#GZ*Ek1aAi1aE_h*Lbg9zSQXNeF+Qu*8 -L^1@@Y8ulZ0qRRZb7l@jcywiMb7^mGNoHYVWjV(hK7J55&$qsubbafuzL1-^j%|=cN>I>nnK4))Pz6b5 -VPj=G%D{mG2;nQMTOnwNgyXhzrB~SH04;UKo5i(1Vxw^fNoHYVWl3Z{Yw`7y(SHDgMM6vX0;lo=W-SML -KDgmdc1Y|2T5mrLR$**qZew{#W?^GxKDS8EHu@2+7MVFP1hs6^$We8|k3le2=(%KZsrQgo3qfvfZ**aF -X>V?GOR30+snp{uYWb)9vpEdM5jV}jv>9vwnX#InoRj)93qf;pX=iRpW?^GxOmsqKkxP5xCLpf?kur-g -(F6&@HI9dWN1yNftOldQ1y*HpPH$F+rJCAYw97+KWFy8eZUu~dV(l5N%b&~h(10yyF^CmTVQpn(Mrmbi -WL9BpWo~16RC#b^R>%){yv9NnI@?D0UT5ggCu*0_qr6cs3q2l0*x9K221#vjY)NET_7Pp|Zd*4POSky8 -4?DA0%Jd;JpJb=vumIvFO*=CPQ+04~Y*Te&U_W_(!uc?s(BakzdJ7?EF9^9Gyf?ad??x_c(9*_N98Yz0 -aCLM+b8~5DZf#|5bW&w@WnpY(WJFFkgU`2UB%$aBN9rX=%!lt4v-5=I26&L{nTGW3do8 -V16r+p^9tR;mq;f9#3_2aCLM+b8~5DZf#|5bW&w@WnpY(WI=RvVPj}%#AUTvyg$3{N++IppJQl5+tKwp -$xtHBFa^7o2YcTaPGN0jWJYOaY-B}vbY*UHX>V>+d2nTMaves|)!M|1JQjy*9JxrHCCXBK3Y-~_ZzF<= -1A>JaPGN0jWJYOaY-C4lZ(?C=Q*>c;WmI`^Wp(W({yb2RgQ&qroX$3|s~68cgLoKb6;WMPYGO<*F$_m# -Ze??6b4g}lV`X?XAL+Ysh`sOZo#5Z(1rNy0kurbdTRL{_?asbjCtV3aZewU~a#Lk=gjZ$<5FZnjcuT6B -5B6)POqpHCTrHl4#QtZa;zni72}x#QV`WKgaBPMc5G-hCV9w&(UffE`hM!G~aLQ!~gAR@AcC9KZUquT; -Z*FvDZgf*=XLE+Y-hdqXPWBsLcVYo9B4AF|J)gHXb;e-i?Yrhg(m4rJb#QQONpxjxlpOD6#%EY0CLclT -a6hZC<#>ZODNcTE%yi#yB_`&o2u*KfX=Z6cbOl5Xu -Y`uYqVp0y6#Opn49V(cQE2s&92Kh8W}@zf2sFIAPZAvVQg1vbZ%vHbIJ(jke?j1 -l!xqXd>q7+-P0pRHy9#PwIZe?UiW?^Gx;?xyT5z&Ua+M@}mOiDpYxh>^^GknUxTJ!XL -#OUcE2}5sgbY*UINo3<=9kcvVUUjCQt9$#kE#Vw&S@S1XLTY^Y?LL}v9ZWWu2|;XdXkkNPaC1n$BNr;@ghiU?gEXK9KMDE{F?;HZBRuDVqlk6q -mbeZmb;*F>vukd;=m`ygb@x#_>`RmOO$0)3Z)|2*aM+Gq(Fu_0 -Ocz)^+@GUUoV7w&pu=F9->y0X3z7m=HF#-wX0mI#UQqw(qY;tp7Zc6+Qb4G4KrzO(t)@DpIt)Q@6JWikDr@YkEAs#9)9JJvRH-Qc7Q2s%Kf+=VCyOABEU3kOtrQ)O*QWJFFoaz*WZ -Z5##rf6bm&7qffY6*N`B##bI~HzDmr7z##dWo%?qWo=1hQx*t>6v={gsJ=SZlTl1iF5eQ8IAl(q%E@>S -o406W2vm7+WlmvjWn_%h53p;7sgGx&z)8&prN#D&cR=tS@df05SQ3Z*PZCvbZeeX@WJYOaY-Dp&Wo=1h -YXqYdo~D%m7H6OD0<^0n_2##VWXRdjy=DB@qgYOj1yf~hNo0M=LMPN>0NEy%g(UCHeUkYj{YR7-159lq -XIqm$}teZO^;JC(UrZ-Ks{e+7M1*ZDnLeX=Q9=b5mt)No1EHgR0RSPeIWLGZ_*YTjUMn3>33lep74@ -i%V@}#Ze4JZgp)|VRC6;+#Z*Ep$a%o|1baPW>ZAoPPfv$so3kRF1 -PV2}fOp_vjQ6FdFHId|V -a{vhfAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jlMuXsu{2tXFT+?;?hj39&>gq>HOrf1lB-q; -n)I5N0000000000|Ns90000004sUgIaBpdDbWd<^b#!w83IZTkC#?5~OapN(_Fs6GvFQy{P|gRa2*}s1 -Y~I%9#i`L}7rjFg@b(FW?*48~9t#5lC;3juy9JUg#K|!ymZ|^=0w7l>toMja192_(UwD?W=?zm*&IhOn -$k(lG-qz;Dsgn@AfUz`Mi!Z}iQtl5;XwV(E`Zdd&WRj~^37YhpmjD0&000000RR90000000000000000 -0RR900000001!=OZ9{KvbaG*1bW?O;bY%ty2ypC#?5~OapN(_Fs6GvFQy{P|gRa2*}s1 -Y~I%9#i^81)7t~9tEf?*r}jS36zkMYeK9}${s8)2BzjZ?kPr%EZ*FvQVPkYjWC9>pC#?5~OapN(_Fs6G -vFQy{P|gRa2*}s1Y~I%9#i^eNEJ-@Z0;0Ob-P{Wzd?2rs)M&&=&l*}G;Jw22Ix+@lY;R&=Yyb)ZAXg`> -_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{j)$WoGNrJmcWTI{*Lx000000RI300000000wetXJ~YD00{yn6$0d#2P+C} -;lr6VNhMM>59zuEq~<=?!m-5UiD^{ysMp|!ND`2%gc_Nxrh2qVwA%Us#V;Pkm;mDO$Szy}0000000030 -|Ns9000009W_507X<}?;a{vhfCKUqYmH4o{!1*GOa*TS*H$bhcTl`&GYj0000000000|NsC0000001Y}`!VE_pNCKUqYmH4o{! -1*GOa*TS*HAD4^=04ZLvBczwX;f)x%8{!~UIganLWV?BTpVMu5IA6dE0Lj! -YuMq;@!bFb0000000960|Nj60000h6Wo<`nZ(?C=Q*>c;Wd;HTYi@6MZU71bCKUqYm -H4o{!1*GOa*TS*HtoMja192_(UwD?W -=?zm*&IhOn$k(lG-qz;DsWP5cQ3m-<6)UHjqig^*m4co5us7ukl*0UQzs7w8g#Z8m000000RR90{{R30 -00nGmZE17>00Rh3Wo=1rWMy~;1r2X-LUnFrY-LGqWMy~&3IZTkC#?5~OapN(_Fs6GvFQy{P|gRa2*}s1 -Y~I%9#i^CZ=6W7=VqesjRYGc!>wZFzp>JB4@xD;^wu&SY_r(GrS0}9Zh)e@g)RqK0VQ|Mwn6X+ -txo3vSYd;;z)HQ~0$c(hS0}9Zh)e@2rNlD$O59e#ogQsB77jP -l+h5j^*S;D0000000030|Nj600000IVs&n0Y-LwzbZ%vHb4hMwWq1Gz0w7l>toMja192_( -UwD?W=?zm*&IhOn$k(lG-qz;DsRMhHwLKbzE(ciwC3nrXLGTEzPUiqvVS}~6O1_lQgb -aV_>=c$Ts04O39g2dD_h*R5>c*5<{jiECIT&Bl;lSX#$ms8AQN7m&qYtoMja192_(UwD?W=?zm*&IhOn -$k(lG-qz;DshUXjT --wZT0^&Yy7N)`YB000000093000000000eiWpZt4ZeeUmZe(S6015&iS0}9Zh)e@^xB4~9n`Dx!RtcK)nwJ0o00000009300000000000 -0000000960{{R30000P0Wo=V*VRL8(4G42%Xk~3-bYTDr0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG --qz;DsgzRF+XJhss8OG%_CC-Q>(otsF+cqN0Qy}ddQ=3E5CSF@0_2znD++Ak!AD4^=04ZL -vBczwX;jj8FLmd)8^C0+InTyb%?WTG%$DZ$m;bAR)ya#VGE@Kn000000093000000000JQW?^Gxa{vkg -CKUqYmH4o{!1*GOa*TS*Hp#+${pKVqYC -0wxs#KG(vr#N>%-R5`~QK7J55&$qsubbafuzL1-^j%|=cN>I>nnK4)) -Pyhe`000000RI300000000(DfZe??2a{vkgAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jp9m~T -I>-W|y2ahx3nF|Vuawki#7NH?S|Q-Q!u2{b0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;DsqC`m -cE6dyPJT+tk%Iz|R3_dTDo~ZL;TN>NvAD4^=04ZLvBczwX;cQ7t+(1Z!Y#S=r-tc=NPf>PeW=$`IKP*ssSB}HE2RJl0wxs#KG(vr#N>%-RAW8UiLgsaRw~c9&Ny{YCK_TCaeS`x+X~XLW@}|UwEzGB00000 -0RI300000000000000000RI300000000&}qZe(m_a{vkgAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c -*5<{j1ACLTJsO2B2U!6ncg?mz@CdC==Kxq?gSEg)z2E{|0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG --qz;DsjrQf(E(H_nGEpD*KTAo3`$}tLz4xH6U7V?G -015&iS0}9Zh)e@_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jQ>XLl0V(0al>0fVsbCfs) -I{K8&0000000000|NsC00000033q99Ze??GWpe-u0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;D -sflY?CC$c=UszhlV5m?Ru@{iVU*wrVdeH+Q@FPbX@d73l0_2znD++Ak!AD4^=04ZLvBczw -X;jBwX*pITEeW==xua`S>RI02$<40II2sv4aet}zMj!wH0000000960|Nj60000YNbaY{3Xl-R~baMa- -0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;Dsf2M2lPpg3!?y@aX^XIja4CK{WF&t@k=WXUZP9(Y -H~bW>$vY;yn!0w7l>toMja192_( -UwD?W=?zm*&IhOn$k(lG-qz;DsgJwD=tr7PH4o{!1*GOa*TS*Hr6F_xjAC6(~TLj#*ewiHWCDKG(vr#N>%-RN~YXP!Z9Fy4s@&s7y*h -O1UlNfirx{z*_V4e8lMKAp#~90_2znD++Ak!AD4^=04ZLvBczwX;g+75G-hCV9w&(UffE` -hM!G~aLQ!~gAR@AcC9KZUqt`_000000096000000000P0Wo=V*VRU5%0tt6%bZ%vHb7gY?3IZTkC#?5~ -OapN(_Fs6GvFQy{P|gRa2*}s1Y~I%9#i@yFSS8KIkY89@$6%;X7qJ(R#b4x^L3+^xAn+qc8}R~*|CjUw -a13d{WJ1%*`n^wC{{=S47&=@>>ouDKt(|c83nQ8ri$WPp5w@a4b3LR7M69fMnD+{F6rHCsWOZ=>00000 -00030|Ns9000009V{dMBa$#e1a{vkgAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jp9m~TI>-W| -y2ahx3nF|Vuawki#7NH?S|Q-Q!u2{b0d|^F*?W9|>m72;^XjNjCf456piKdvUO#1@>k1Zy`v3p{00000 -0RI300000000 +qWhh6&a)9BiaoJZ>PY!h`6Z9%SYt5l1;p48RB~Z%b7^#GZ*Eg#Xk~3-dBoUB2y8Zom7+;NN8Xgkb3WeV +)QDb*=NiflQ)(Iz225djWpXilvNdf$cEfHQ12?LRftc&;5JY%0?GSH0jXJ{5?wvjwRC#b^WI=OtX=iS8 +LTqVnWK(5fY*ctqbaH_n=a&wUzgWZ$SVL%GX>LMnX>MdwWnpYo +cxhyWaSf9!PV~dK2uo>;u!nFdemP_$e?^hl+JkM;eY!XZL3DIsV`xcag}C@DyY!@{4YR*LMYs=?Zg_*k +tx|21^lzg9sBTBv4nk~cZe(e0XGURTbZ>Hp{^Dg=h-~N_zJ`Red1EINWrM}GXaQb}6c#qIM2EQ!L349y +XKrm}Zgf<6aAk>WSS8KIkY89@$6%;X7qJ(R#b4x^L3+^xAn+qc8}SNQLug@XZd7<_WRJVT=tr7P^xB4~9 +n`Dx!RtcK)nwJGnaBp>VlfaZ*5|&qoaMx&cZSO)Ho!_*yjLvyQo1^f$X+6j;96@t)X=iR$Z)s#xbYXO5 +LTqVnWK(5fY*ct@WRz0V+XJhss8OG%_CC-Q>(otsF+cqN0Qy}ddQ=3E5C~IaXk~3-No1AC=6W7=Vqesj +RYGc!>wZFzp>JB4@xD;^wu&SY_r(NHa7kpJ2rNlD$O59e#ogQsB77jPl+h5j^*S;NLvL<$ +a$#e1No1ysFp)<~$~wYgjK`HkjV#@&#T1_fGnK3MJXK)_7bXoxb#7;AVr*qobYXO5siJyUlgOLOB};96 +cGdSG6&iv=7PD~jruGj4o;;a=21#ykb#!yDjhE2@R4ADY@XOb3WHJm&VktwD1&R~J8Qi15W{8UrRB~Z% +b7^#GZ*D?$Ze(m_w&;L{94K`ndk%K5+?9Jv$dw7jc}U5p5@2#$kUJ%u2uWmRZggpMdB|&mdkb29#*qXh +a^)f?kI>J>8dqqbOFybHKpQ-MBMCulbWCA+WpXjekD95&21^?K{bw7Oyejxis%MV9vZ(?C=Q*>c;WmI`^W!4yF%LYxT^jDrckDVwO1AtjoG6an*A`7gZ+wE6AH40R6VQzD2bZKvH +*1R*Z!FE#!-}0MzvBUkD_A@LX?C3dsb3FQUOt}RYB0+O=X=iRyWp-s@Y-MCYbaY{3XhLjhZe&wsVQf@* +P;_$In^6;37FKqUhx?i3R+Mr!fY&(;2BFL(m@EZk_srD;MrL-}#pxZ$?Eb+fZ@!;9xB`-n7hgEflW({{ +JNKm>5Mos!L349yXKqquc4c8~Wn@-iY;|QqY-w&}Q)OXnRCrKya@&ep8iEuMbtv-qj6g$b#7A9pc!|f` +I$jaRzSe2A1Q1w5Xklq?Q)OdvWpqv&8b0-V>p(oz$%022vTKaWo2z;WalM|{+CCYqok=CI6O*0D2Q5~XK8~xVetWFewK9hZ4Odpc4c8~ +Wn@8gbYWv??6T%|znQ^KeoD%bg94CLCf*q;P?fLY7qq^#2NiM*2S;UYWpinB^?FS>S$_F2)vN@Mb6UJ- +F(lri_dqerx4lR4>iBsz2u)>lVPs)+Vfpl|2xhK9cV^W63=w?=$`$i`X@y)HBPPGtNLug@XZcue%S7~%^Wpi`yAASLvLGVedrqOkAVG6;X=iRyWp-s@ +Y-MCtVQh6}LTqVnWK(5fY*ct@WC&76LQHRGX=4HaT-**L6)$-r+lRyXoI{GIo*U3CNI7Emc=xo*$N+#6 +3Rh`#Ze??GP;YZ`yF$nqQ(ZC7jQ{zx3L?h_$J($?&iPIm+b{NqZ<^r>S7~%^Wpi^+a%2WlM?zC{WGVm# +J4=$RltJLk?Nfj|sXiSdmgaJi@wPyW+dHeUQG($LP<3KgX>@L7b8`lmt+(1Z!Y#S=r-tc=NPf>PeW=$` +IKP*ssSB}HE2RoUZ*FvDZgf&*W+BHHZO|$}9Zg=R%ZE7et&pz}oUddU0B(<>YerIc3kOqaXF_amVlhkK +9|TAhYfrNblQVQ`LpZXKteHopy#|_NJkG`K5e`9aZf|s9bZKvHPGN0jHx3&bJ$HXE2K+s|vHZ6#&ske5 +?JSDZAfr}PGrQJ;4^(ntZgXjLX>V>xW?^GxI6k{n`X+XC81LasyqR+($`>jwnD57lV5q8m)(2RS7*1hr +Wn@NaWo%?ra$#@6CZd7@2WjJdtcwu66snXR_9Zdb&#xLPSG6d3U8q**F>Pta$W)4MobY*UHX>V>x +W?^GxIma44eh@g%x4xWoee18jkej%UZIDDtP|$FhF<2o`1xaRMV`V$az<~n@;VY|KA!vt$qM +Ep^75#kD_Tqj3jGW?^GxNn}22@%59@e*l9;LQD7pr}6`4EeCo&xZzHANbCVxZ$AuHVQgh?V|httVPj=J +w@A-6`Vp=cnK>{7wQSPJQFX$PK`>V6xnyyv_mEW!L2hnubYXO9Z*Fr-smO?_)Z;5^`KSD|ISj`UH_gGc +8EgQVv6`Tqlln6YL349yXKqPmVPj=XbV6p4OMBubAg=+DGK(xA?XXJF{2H^dT~zWT)b=0OBT1J2MDVb#QQO +Q*~lsKY4$``7oZ);noRy3n6DO2)Q4;H@bN5MlNj7(#BUDPjz%~b#y^6%<dWpinBNoHYVWq36o>AP`=z3=Ru;NRp0 +56I1tGJoS+I(F^t&c0kHT?s*MV`y)3Q)P67S7rwg9}|^$ORAg?_G_n1nO(?SEuMzN{%51&MrF+jNoHYV +Wl3#tY=#&RENEw7&f?o%+)B!ZpG}K!%4G?I4vp$|ttu*CMGHf3ZggdCbW>?(bB4g)fE@Zx_8VV!VgW89 +U{2OOpSL%4#$e>_yXHjFISEsBaByr%bY*Rn9PeeuXILaAA3^JIKdZ3ic!M@6PJV67bl-3#Cg!RLO>bmr +W@%+|nIb5$QI^$V6PNW$vdMt6d#0>Rmk*`=dQ)K)k7d+w7*1hrWn@NaWo%?Yb8~5DZf#|5bX0k8Wuo9& +)X}ib9i^%gOs*8bY}uR&S59aNAMwsm_ykY{pbAuSb#rt~Wp-t3y@7~gQVy8J>pg27DwvPuRhrP3QWOC! +bDKQy2TX#&5>8=lWn@NaWo%?kWprUwd2nUJXXT7NJOW`Spw3o_*cmz+=1%_1gm*5-D79nn{HtCLPGN0j +WL9BvX<=@3bvVaOk0BBjil877-n>SP^xWIoCC77|*ORF1g-x>(>`)0$a93$`Ze??G$6skVRwOM6wz9dS +Yg6i3-rmX0uFE(Y8AEY@srN=83sYrbY*%S?Ze??G$_VC=pB%K5hwN>99K@5|(<4SV7$Q=&CebuM;tt7# +3rB2kVqt7aW?^Gx(swU)=eHZcWUx8U##PM;a30K-=Jl8VtAf?Zi=Hx63{zuhWo=T!Ej;9TxQjc0+10Fg2)p +3Qu=#Wn@WaVPj?D)D=(>(T2L(qY0=?Nc;Wdl=mWC;K#gwc#^4#qsMUl{*1zNe>I^CwqAYJB+ZKALhJOg5Ma +L2PhnVMAeXb4b1;7b@t4MVjY>G@u4Q3HlB(d+LiLJm-R=h;`?dxDG*cV`*tna%paKVPb4$VTK~nd#>-Vi}-aA;vuZDDL|OmAdib7%`wbaH89bX0k8WpfVz35LOoBKkGa +Y9#cS7Qj{WgyAGcS>>g~&^g7Kv@4tY;$BCg=lGO40qbyjMBe4%@A^HhWa%pX8bZK^FG5w(M*PErP +Q*K8));4q9;G_%)IzXn}g(wG03t}BM5{Lay5>;+)VQpn(MrmbiWOGwxZAoNn1fvw5rj-B|XP@r^w5ufb=C_Ju$l1`n +W&GEpSWb-vQ)O*QWPQm(C)8p9*(R2SB=5|9lKCV3N0b-?Ol>0MdKRd5P6t+Da%o|1bb-?>B-g{}GTFmo +{mAr>kexq=D7-RGP2^0W;fb3W1_o1UdTDNFlG6hDK5~2WhJ*PG7zYWLxz$!}&%4AY&2YWlsz$Eb5Kduj +Wn@NaWo%?~Q)O*QWS1d>s?i)zLD2{^84?*=6Qgx+ +2Ybs0Lm?xkSqB0NLAl2~i-ZdPG(X<=@3b5mt)No4(ju7iFH2b-u)>&PZdlOljoA7|k;k>s6qoa5|8f~g8r +d2nS@d2@7SZ3X}hLvL<$a$#e1Np56icm@ItaCKsAX=6`tZ*_EY00{yhS0}9Zh)e@5%bR49t5yk`^qQ9d0000000030|Nj600000EZ*_EV +Z)t9HPjGK_baMa-0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;DsnKT_y+ac4_6daU{%%bk3j+fu +`A*2Y1(Gbp$uTFEssITBAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jlMuXsu{2tXFT+?;?hj39 +&>gq>HOrf1lB-q;n)I5N0000000000|Ns90000000000000000|Ns90000005KU!mLvL<$a$#e1Q*>c; +Wd;Wbb7N>_ZDC1d0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;DsgzRF+XJhss8OG%_CC-Q>(ots +F+cqN0Qy}ddQ=3E5DH^&Zgg^CV{}Pm0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;DshAD4^=04ZLvBczwX;k#6 +*Wiap5|FEe8kw!8dbCNj+WG;-FCN910OIk;E?fWr0000000960|Nj60000SQb#7;AVr*q|00{yn6$0d# +2P+C};lr6VNhMM>59zuEq~<=?!m-5UiD^{RS{k*RP>KQ|D6@UrgHD8Pn~kr<(gaR)wpptCRljin00000 +00030|Ns9000004WMOn+00{yn6$0d#2P+C};lr6VNhMM>59zuEq~<=?!m-5UiD^_|KY4$``7oZ);noRy +3n6DO2)Q4;H@bN5MlNj7(#BT+0000000030|Ns9000006VRUq1V`u;g0wxs#KG(vr#N>%-RB36-k*iEz1m@>LhD1|b9AmK%IADG&k)euf*x}6a-2eap000000RR90{{R3001i!M +ZAWZxVqt7kbYXO51_A|ZZf|#P015&o6$0d#2P+C};lr6VNhMM>59zuEq~<=?!m-5UiD^{hV;!^nQC@YX +pR0TOwJqTsbD!F2W4d9F8pxqnXBGnjAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jGM-jZ2Kh}D +E2o;HYydTtf}Q!WH{}bI!u)W*#(e~Z0000000000|NsC0000001#D?;X>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;Dsg=m)dLDIRU(}XWLTZugenOC; +Z(5k~zEJnJiX;;E#R4E#C#?5~OapN(_Fs6GvFQy{P|gRa2*}s1Y~I%9#i;{(leIk>g)RqK0VQ|Mwn6X+ +txo3vSYd;;z)HQ~0$cz90000000960{{R30000wWb#7#AWkYXnbaG*1bV+VxWq1Gz0w7l>toMja192_( +UwD?W=?zm*&IhOn$k(lG-qz;DsRMhHwLKbzE(ciwC3nrXLGTEzPUiqvVS}~6O1_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{j1ACLT +JsO2B2U!6ncg?mz@CdC==Kxq?gSEg)z2E{|00{yhS0}9Zh)e@_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jp9m~TI>-W|y2ahx3nF|V +uawki#7NH?S|Q-Q!u2{b0W8#V&bbGUt!Bq`S1yuTOW~jDcd`iI3^X_>4e9 +YQ#rfba;u!+d5tm#=h2RwFCeO0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;Dsgn@AfUz`Mi!Z}i +Qtl5;XwV(E`Zdd&WRj~^37YhpmjD0&000000RI300000000000000000RR900000000>QGZBuk%b7%$) +2y_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jlv2~%1FNg3QJ<&wKF}2F)J=Uc +Km7gx`duV?R0NO^0wxs#KG(vr#N>%-RMK}Zb?3Jmz+|vF&&E~F32+|F +mge=B|Eq%4$%~#cQ~&?~000000RI300000000wDhVPj=;015&o6$0d#2P+C};lr6VNhMM>59zuEq~<=? +!m-5UiD^_j%D{mG2;nQMTOnwNgyXhzrB~SH04;UKo5i(1Vxw^aCKUqYmH4o{!1*GOa +*TS*H2rNlD$O59e#ogQsB77jPl+h5j +^*S;FAXg`>_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{j?6T%|znQ^KeoD%bg94CLCf*q;P?fLY7qq^# +2NiM*0000000000{{R30000001#@+9aBKhy0wxs#KG(vr#N>%-R0f!> +x7s+uExGllhUte$e$Op^sMk_Bzn7+|3$axzr2q*6CKUqYmH4o{!1*GOa*TS*H_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{juZ@?{0aPfN4Did>Ze%hHN@6KP +lLd+s#TneAz-EYx0000000000|NsC0000003T1e7Wo~n6Z*Fq{3IZTkC#?5~OapN(_Fs6GvFQy{P|gRa +2*}s1Y~I%9#i^CZ=6W7=VqesjRYGc!>wZFzp>JB4@xD;^wu&SY_r(GrS0}9Zh)e@_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jiECIT&Bl;lSX#$ms8AQN7m&qYKG(vr#N>%-RL5UwIaVYs3AVDiqia*@S>E2s&92Kh +8W}@zf2sFIAOHXW000000RR90{{R3001IJsbYWv?ZDnqBa{vkgAXg`>_lQgbaV_>=c$Ts04O39g2dD_h +*R5>c*5<{jgmDd%EKc;pw+KsVi?D}qDSkO*B!5Mb*xG|_(S5o&00;m8KmY&$000000RR900000000000 +000000RR600000001I_lQgbaV_>=c$Ts04O39g2dD_h*R5>c*5<{jkGsO? +N19ILP2yc~f4%w>xYW^+v~7{W03rq(;firJ0000000000|Ns90000003UqmJWm9=`bY*PC`}q*r{eiB7ehUYis7~w1CQOqefKeZ3;Wd%uopqe!>_vj93Tb3zZggpM +X=QT&3IZTkC#?5~OapN(_Fs6GvFQy{P|gRa2*}s1Y~I%9#i_RFfQB3>bs~EXcCXx(drQcb3B`Fx$)^%v +a$Ar)C7c2#6$0d#2P+C};lr6VNhMM>59zuEq~<=?!m-5UiD^`#;91nsu+1H%suE1D6u@lRoC;S?XbB(j +&QSOSPz0a=0000000030{{R3000004Y-wV1015(Pa5aA+<>R2XhQO_4{AcS-HH^7AVzASV8M4NYxyCl9 +FjWFA`CQ2GiK9iLKbGE6DZmrA4)G`0A&^0p`%?-6VsJHoA?4$swuZp1Wc+9AOf`(TIbyKWjTy4WkGaM+ +5(KBV0uX$PL@)I=)&*`^S@`8Scoz5#{lyP)a751L0000000000|Nj60000001aoO;a{vkgCKUqYmH4o{!1*GOa*TS*H^^GknUxTJ!XL#OUcE0wxs#KG(vr#N>%-RE8K3ENEw7&f?o%+)B!ZpG}K!%4G?I4vp$|ttu*CMF0Q*00000 +0RR600000000>QGZBuk%bY%tt33q99Ze??GWpe-u0w7l>toMja192_(UwD?W=?zm*&IhOn$k(lG-qz;D +sflY?CC$c=UszhlV5m?Ru@{iVU*wrVdeH+Q@FPbX@dBEuZK_k`JKyPG=Rp7@Nbf+-FrJ*HF>i&!wTZgU +Bh_-dLdY0XT`|v$|M|2EBF6^D+OST}`A!+zFZPFTn&AKd0000000960|Nj60000SNZ*FvQVPkZ2015&i +S0}9Zh)e@2rNlD$O59e#ogQsB77jPl+h5j^*S;E +cA8SzdwhWF9dgX`>ZnjA*51^hO#z=?KV_fm3KoU?0000000000{{R3000000 -----END STRICT TYPE LIB----- diff --git a/stl/RGBStorage@0.11.0.stl b/stl/RGBStorage@0.11.0.stl index ede9ff69..29e2bdda 100644 Binary files a/stl/RGBStorage@0.11.0.stl and b/stl/RGBStorage@0.11.0.stl differ diff --git a/stl/RGBStorage@0.11.0.sty b/stl/RGBStorage@0.11.0.sty index d3a44b8b..e6631235 100644 --- a/stl/RGBStorage@0.11.0.sty +++ b/stl/RGBStorage@0.11.0.sty @@ -1,5 +1,5 @@ {- - Id: stl:hHEaUT1x-VjyiUK0-v$pgYr0-xQwdM5m-S3UaY23-nj7!2vM#orbit-virgo-basil + Id: stl:mG$H7b6I-$T8qp18-07PSNeA-rbEBNS5-$J5X4y0-1vPxRWg#channel-vortex-bandit Name: RGBStorage Version: 0.11.0 Description: RGB storage library @@ -44,6 +44,7 @@ import RGBCommit#harvest-person-orion use ConcealedData#ivan-tripod-young use MetaType#quebec-mission-quota use TransitionSchema#jumbo-matrix-normal + use Layer1#camilla-basket-justin use TypedAssignsBlindSealTxPtr#airline-video-travel use AssignRevealedDataBlindSealTxPtr#ritual-license-arcade use XChainBlindSealTxid#dynamic-life-brown @@ -178,9 +179,9 @@ import CommitVerify#miller-pancake-elastic use ReservedBytes4#young-goblin-academy use ReservedBytes8#rudolf-tape-adrian -import RGBLogic#rapid-baboon-satire - use WitnessPos#snow-local-tonight - use WitnessOrd#exhibit-erosion-dallas +import RGBLogic#import-boxer-seminar + use WitnessPos#cliff-enrico-nominal + use WitnessOrd#frank-ohio-forum import Std#ralph-blue-lucky use AlphaCaps#picnic-soprano-aurora @@ -253,7 +254,7 @@ data MemStash : schemata {RGBCommit.SchemaId -> ^ ..0xff RGBStd.SchemaI , libs {AluVM.LibId -> AluVM.Lib} , sigs {RGBStd.ContentId -> RGBStd.ContentSigs} -@mnemonic(opinion-romeo-hunter) +@mnemonic(paradox-polka-juliet) data MemState : witnesses {RGBCommit.XChainTxid -> ^ ..0xffffffff RGBLogic.WitnessOrd}, contracts {RGBCommit.ContractId -> ^ ..0xff MemContractState}