From d743a8b71fb3e63996ce4d29fe06d481de79a45c Mon Sep 17 00:00:00 2001 From: thiolliere Date: Fri, 15 Mar 2019 19:25:18 +0100 Subject: [PATCH] Implement parameterisable modules (#1800) * first implementation * remove done comment * origin done * impl log for instance * impl inherent for instance * Fix wasm build + full example build this requires parity codec implements codec for core::marker::PhantomData * patch parity-codec link to github branch * improve internal names and fix instance prefix * Fix in macros * add test modules for support this allow to test for construct_runtime as well. The reason to have put that in another crate is: * if we put test in `tests/` dir of srml/support then decl_storage fails to get srml-support access because it believes it is inside srml-support crate and so derive access to `quote!{ crate }` but this is wrong (and I don't see any way to prevent that, and it only bother us so I don't think that matters that much) * if we put test inside lib.rs then contruct_runtime cannot be used because it call some macros that are defined with macros (decl_outer_event and decl_outer_origin) and thus rustc complains. * defaultinstance to its own struct to avoid errors * enforce for Event and Config, impl test * add origin, log, inherent to test * test more code generation * basic storage test * fix typo * rename a few imports and field * delete wip test in example and runtime * change default prefix to make it backward compatible with test * rename Instance to I and Instantiable to Instance note: the name of generic parameter I is only enforce by decl_module! and this could be rewritten * doc * clean old TODOs * update parity-codec to 3.2 * update node impl version + builds * fix warning * fix unrelated grandpa test * refactor code --- substrate/Cargo.lock | 136 +-- substrate/Cargo.toml | 1 + substrate/core/basic-authorship/Cargo.toml | 2 +- substrate/core/client/Cargo.toml | 2 +- substrate/core/client/db/Cargo.toml | 2 +- substrate/core/consensus/aura/Cargo.toml | 2 +- .../core/consensus/aura/slots/Cargo.toml | 2 +- substrate/core/consensus/common/Cargo.toml | 2 +- substrate/core/consensus/rhd/Cargo.toml | 2 +- substrate/core/executor/Cargo.toml | 2 +- substrate/core/executor/wasm/Cargo.lock | 12 +- substrate/core/finality-grandpa/Cargo.toml | 2 +- .../finality-grandpa/primitives/Cargo.toml | 2 +- substrate/core/inherents/Cargo.toml | 2 +- substrate/core/network/Cargo.toml | 2 +- substrate/core/primitives/Cargo.toml | 2 +- substrate/core/rpc/Cargo.toml | 2 +- substrate/core/service/Cargo.toml | 2 +- substrate/core/sr-io/Cargo.toml | 2 +- substrate/core/sr-primitives/Cargo.toml | 2 +- substrate/core/sr-primitives/src/lib.rs | 27 +- substrate/core/sr-sandbox/Cargo.toml | 2 +- substrate/core/sr-version/Cargo.toml | 2 +- substrate/core/state-db/Cargo.toml | 2 +- substrate/core/state-machine/Cargo.toml | 2 +- substrate/core/test-client/Cargo.toml | 2 +- substrate/core/test-runtime/Cargo.toml | 2 +- substrate/core/test-runtime/wasm/Cargo.lock | 37 +- .../substrate_test_runtime.compact.wasm | Bin 56631 -> 56646 bytes substrate/core/transaction-pool/Cargo.toml | 2 +- .../core/transaction-pool/graph/Cargo.toml | 2 +- substrate/core/trie/Cargo.toml | 2 +- substrate/core/util/fork-tree/Cargo.toml | 2 +- substrate/node-template/Cargo.toml | 2 +- substrate/node-template/runtime/Cargo.toml | 2 +- .../node-template/runtime/wasm/Cargo.lock | 55 +- substrate/node/cli/Cargo.toml | 2 +- substrate/node/executor/Cargo.toml | 2 +- substrate/node/primitives/Cargo.toml | 2 +- substrate/node/runtime/Cargo.toml | 2 +- substrate/node/runtime/src/lib.rs | 5 +- substrate/node/runtime/wasm/Cargo.lock | 75 +- .../release/node_runtime.compact.wasm | Bin 873354 -> 871507 bytes substrate/srml/assets/Cargo.toml | 2 +- substrate/srml/aura/Cargo.toml | 2 +- substrate/srml/balances/Cargo.toml | 2 +- substrate/srml/balances/src/lib.rs | 69 +- substrate/srml/consensus/Cargo.toml | 2 +- substrate/srml/contract/Cargo.toml | 2 +- substrate/srml/council/Cargo.toml | 2 +- substrate/srml/democracy/Cargo.toml | 2 +- substrate/srml/example/Cargo.toml | 2 +- substrate/srml/executive/Cargo.toml | 2 +- substrate/srml/fees/Cargo.toml | 2 +- substrate/srml/finality-tracker/Cargo.toml | 2 +- substrate/srml/grandpa/Cargo.toml | 2 +- substrate/srml/indices/Cargo.toml | 2 +- substrate/srml/metadata/Cargo.toml | 2 +- substrate/srml/session/Cargo.toml | 2 +- substrate/srml/staking/Cargo.toml | 2 +- substrate/srml/sudo/Cargo.toml | 2 +- substrate/srml/support/Cargo.toml | 3 +- substrate/srml/support/procedural/src/lib.rs | 12 + .../support/procedural/src/storage/impls.rs | 148 ++-- .../support/procedural/src/storage/mod.rs | 15 +- .../procedural/src/storage/transformation.rs | 223 ++++- substrate/srml/support/src/dispatch.rs | 209 +++-- substrate/srml/support/src/event.rs | 101 ++- substrate/srml/support/src/lib.rs | 15 + substrate/srml/support/src/metadata.rs | 52 +- substrate/srml/support/src/origin.rs | 86 +- substrate/srml/support/src/runtime.rs | 775 +++++++----------- substrate/srml/support/test/Cargo.toml | 25 + substrate/srml/support/test/src/lib.rs | 0 substrate/srml/support/test/tests/instance.rs | 457 +++++++++++ substrate/srml/system/Cargo.toml | 2 +- substrate/srml/timestamp/Cargo.toml | 2 +- substrate/srml/treasury/Cargo.toml | 2 +- substrate/srml/treasury/src/lib.rs | 2 +- substrate/srml/upgrade-key/Cargo.toml | 2 +- 80 files changed, 1632 insertions(+), 1016 deletions(-) create mode 100644 substrate/srml/support/test/Cargo.toml create mode 100644 substrate/srml/support/test/src/lib.rs create mode 100644 substrate/srml/support/test/tests/instance.rs diff --git a/substrate/Cargo.lock b/substrate/Cargo.lock index 536354b919..08829f4ae2 100644 --- a/substrate/Cargo.lock +++ b/substrate/Cargo.lock @@ -758,7 +758,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -798,7 +798,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "fork-tree" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1072,7 +1072,7 @@ name = "impl-codec" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1866,7 +1866,7 @@ dependencies = [ "node-executor 0.1.0", "node-primitives 0.1.0", "node-runtime 0.1.0", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1892,7 +1892,7 @@ version = "0.1.0" dependencies = [ "node-primitives 0.1.0", "node-runtime 0.1.0", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "srml-balances 0.1.0", @@ -1920,7 +1920,7 @@ dependencies = [ name = "node-primitives" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1938,7 +1938,7 @@ dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "node-primitives 0.1.0", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1982,7 +1982,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "node-executor 0.1.0", "node-template-runtime 0.9.0", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "substrate-basic-authorship 0.1.0", @@ -2004,7 +2004,7 @@ dependencies = [ name = "node-template-runtime" version = "0.9.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2141,7 +2141,7 @@ source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7 [[package]] name = "parity-codec" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2659,7 +2659,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2999,7 +2999,7 @@ dependencies = [ "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -3015,7 +3015,7 @@ dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3029,7 +3029,7 @@ name = "sr-sandbox" version = "0.1.0" dependencies = [ "assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -3049,7 +3049,7 @@ name = "sr-version" version = "0.1.0" dependencies = [ "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -3061,7 +3061,7 @@ name = "srml-assets" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -3077,7 +3077,7 @@ version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3099,7 +3099,7 @@ name = "srml-balances" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3116,7 +3116,7 @@ name = "srml-consensus" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3134,7 +3134,7 @@ version = "0.1.0" dependencies = [ "assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", "pwasm-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3158,7 +3158,7 @@ name = "srml-council" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3177,7 +3177,7 @@ name = "srml-democracy" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3195,7 +3195,7 @@ name = "srml-example" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -3210,7 +3210,7 @@ name = "srml-executive" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3229,7 +3229,7 @@ name = "srml-fees" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3246,7 +3246,7 @@ version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3263,7 +3263,7 @@ dependencies = [ name = "srml-grandpa" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3283,7 +3283,7 @@ name = "srml-indices" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "ref_thread_local 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3301,7 +3301,7 @@ dependencies = [ name = "srml-metadata" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", @@ -3313,7 +3313,7 @@ name = "srml-session" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3332,7 +3332,7 @@ name = "srml-staking" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3353,7 +3353,7 @@ name = "srml-sudo" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3372,11 +3372,12 @@ dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -3416,12 +3417,25 @@ dependencies = [ "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "srml-support-test" +version = "0.1.0" +dependencies = [ + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "sr-io 0.1.0", + "srml-support 0.1.0", + "substrate-inherents 0.1.0", + "substrate-primitives 0.1.0", +] + [[package]] name = "srml-system" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3437,7 +3451,7 @@ name = "srml-timestamp" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -3453,7 +3467,7 @@ name = "srml-treasury" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3469,7 +3483,7 @@ dependencies = [ name = "srml-upgrade-key" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -3605,7 +3619,7 @@ name = "substrate-basic-authorship" version = "0.1.0" dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", @@ -3673,7 +3687,7 @@ dependencies = [ "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "kvdb-memorydb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "sr-primitives 0.1.0", @@ -3701,7 +3715,7 @@ dependencies = [ "kvdb-rocksdb 0.1.4 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "substrate-client 0.1.0", @@ -3722,7 +3736,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -3759,7 +3773,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "substrate-client 0.1.0", @@ -3778,7 +3792,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-version 0.1.0", @@ -3796,7 +3810,7 @@ dependencies = [ "exit-future 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "rhododendron 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -3824,7 +3838,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3849,7 +3863,7 @@ dependencies = [ "fork-tree 0.1.0", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -3871,7 +3885,7 @@ dependencies = [ name = "substrate-finality-grandpa-primitives" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", "substrate-client 0.1.0", @@ -3882,7 +3896,7 @@ dependencies = [ name = "substrate-inherents" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -3927,7 +3941,7 @@ dependencies = [ "linked_hash_set 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3987,7 +4001,7 @@ dependencies = [ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4019,7 +4033,7 @@ dependencies = [ "jsonrpc-derive 10.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-pubsub 10.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4070,7 +4084,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4117,7 +4131,7 @@ version = "0.1.0" dependencies = [ "env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -4130,7 +4144,7 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", @@ -4161,7 +4175,7 @@ name = "substrate-test-client" version = "0.1.0" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "substrate-client 0.1.0", "substrate-client-db 0.1.0", @@ -4180,7 +4194,7 @@ dependencies = [ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -4206,7 +4220,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4221,7 +4235,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "substrate-client 0.1.0", @@ -4240,7 +4254,7 @@ dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "keccak-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", "trie-bench 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4619,7 +4633,7 @@ dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "keccak-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-standardmap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5201,7 +5215,7 @@ dependencies = [ "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67a4d27831e31e27f1454d6e3d3bb34bcac6bf7ad7032eed0ad0070dc8cf55c1" +"checksum parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21c9c3a1623c71ed83964ff28cac6126e178920f7646d32c337eacb9152b2907" "checksum parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "864e9f66b58c0b38f0d6b511b6576afa2b678ae801b64220553bced57ac12df9" "checksum parity-crypto 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "17b9db194dfbcfe3b398d63d765437a5c7232d59906e203055f0e993f6458ff1" "checksum parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "61ae6944d4435d41f4d0f12108c5cbb9207cbb14bc8f2b4984c6e930dc9c8e41" diff --git a/substrate/Cargo.toml b/substrate/Cargo.toml index 699f9a1589..286e93ecae 100644 --- a/substrate/Cargo.toml +++ b/substrate/Cargo.toml @@ -57,6 +57,7 @@ members = [ "srml/support/procedural", "srml/support/procedural/tools", "srml/support/procedural/tools/derive", + "srml/support/test", "srml/assets", "srml/aura", "srml/balances", diff --git a/substrate/core/basic-authorship/Cargo.toml b/substrate/core/basic-authorship/Cargo.toml index cb801b9a13..d173ac66ee 100644 --- a/substrate/core/basic-authorship/Cargo.toml +++ b/substrate/core/basic-authorship/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] log = "0.4" -codec = { package = "parity-codec", version = "3.0" } +codec = { package = "parity-codec", version = "3.2" } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives" } client = { package = "substrate-client", path = "../../core/client" } aura_primitives = { package = "substrate-consensus-aura-primitives", path = "../../core/consensus/aura/primitives" } diff --git a/substrate/core/client/Cargo.toml b/substrate/core/client/Cargo.toml index 495b11b61d..f797d93f1f 100644 --- a/substrate/core/client/Cargo.toml +++ b/substrate/core/client/Cargo.toml @@ -20,7 +20,7 @@ trie = { package = "substrate-trie", path = "../trie", optional = true } substrate-telemetry = { path = "../telemetry", optional = true } hash-db = { version = "0.11", optional = true } kvdb = { git = "https://github.com/paritytech/parity-common", optional = true, rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } primitives = { package = "substrate-primitives", path = "../primitives", default-features = false } runtime-primitives = { package = "sr-primitives", path = "../sr-primitives", default-features = false } runtime-version = { package = "sr-version", path = "../sr-version", default-features = false } diff --git a/substrate/core/client/db/Cargo.toml b/substrate/core/client/db/Cargo.toml index 8828eefa4f..97de2cd7cd 100644 --- a/substrate/core/client/db/Cargo.toml +++ b/substrate/core/client/db/Cargo.toml @@ -17,7 +17,7 @@ primitives = { package = "substrate-primitives", path = "../../primitives" } runtime_primitives = { package = "sr-primitives", path = "../../sr-primitives" } client = { package = "substrate-client", path = "../../client" } state-machine = { package = "substrate-state-machine", path = "../../state-machine" } -parity-codec = { version = "3.1", features = ["derive"] } +parity-codec = { version = "3.2", features = ["derive"] } executor = { package = "substrate-executor", path = "../../executor" } state_db = { package = "substrate-state-db", path = "../../state-db" } trie = { package = "substrate-trie", path = "../../trie" } diff --git a/substrate/core/consensus/aura/Cargo.toml b/substrate/core/consensus/aura/Cargo.toml index 10c4122c0e..ca4f139ee4 100644 --- a/substrate/core/consensus/aura/Cargo.toml +++ b/substrate/core/consensus/aura/Cargo.toml @@ -6,7 +6,7 @@ description = "Aura consensus algorithm for substrate" edition = "2018" [dependencies] -parity-codec = "3.1" +parity-codec = "3.2" client = { package = "substrate-client", path = "../../client" } primitives = { package = "substrate-primitives", path = "../../primitives" } runtime_support = { package = "srml-support", path = "../../../srml/support" } diff --git a/substrate/core/consensus/aura/slots/Cargo.toml b/substrate/core/consensus/aura/slots/Cargo.toml index fce628161e..3ad763cc18 100644 --- a/substrate/core/consensus/aura/slots/Cargo.toml +++ b/substrate/core/consensus/aura/slots/Cargo.toml @@ -6,7 +6,7 @@ description = "Generic slots-based utilities for consensus" edition = "2018" [dependencies] -codec = { package = "parity-codec", version = "3.0" } +codec = { package = "parity-codec", version = "3.2" } client = { package = "substrate-client", path = "../../../client" } primitives = { package = "substrate-primitives", path = "../../../primitives" } runtime_primitives = { package = "sr-primitives", path = "../../../sr-primitives" } diff --git a/substrate/core/consensus/common/Cargo.toml b/substrate/core/consensus/common/Cargo.toml index 37184e3c0b..2eaf177874 100644 --- a/substrate/core/consensus/common/Cargo.toml +++ b/substrate/core/consensus/common/Cargo.toml @@ -15,7 +15,7 @@ futures = "0.1" runtime_version = { package = "sr-version", path = "../../sr-version" } runtime_primitives = { package = "sr-primitives", path = "../../sr-primitives" } tokio = "0.1.7" -parity-codec = "3.1" +parity-codec = "3.2" parity-codec-derive = "3.1" [dev-dependencies] diff --git a/substrate/core/consensus/rhd/Cargo.toml b/substrate/core/consensus/rhd/Cargo.toml index 22d847e80e..71b45cf41b 100644 --- a/substrate/core/consensus/rhd/Cargo.toml +++ b/substrate/core/consensus/rhd/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] futures = "0.1.17" -codec = { package = "parity-codec", version = "3.1", features = ["derive"] } +codec = { package = "parity-codec", version = "3.2", features = ["derive"] } primitives = { package = "substrate-primitives", path = "../../primitives" } consensus = { package = "substrate-consensus-common", path = "../common" } client = { package = "substrate-client", path = "../../client" } diff --git a/substrate/core/executor/Cargo.toml b/substrate/core/executor/Cargo.toml index 836386d77d..f34bfbbe91 100644 --- a/substrate/core/executor/Cargo.toml +++ b/substrate/core/executor/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] error-chain = "0.12" -parity-codec = "3.1" +parity-codec = "3.2" runtime_io = { package = "sr-io", path = "../sr-io" } primitives = { package = "substrate-primitives", path = "../primitives" } trie = { package = "substrate-trie", path = "../trie" } diff --git a/substrate/core/executor/wasm/Cargo.lock b/substrate/core/executor/wasm/Cargo.lock index dc1159e8d0..8fa99afc3b 100644 --- a/substrate/core/executor/wasm/Cargo.lock +++ b/substrate/core/executor/wasm/Cargo.lock @@ -44,7 +44,7 @@ name = "impl-codec" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -54,7 +54,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "parity-codec" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -151,7 +151,7 @@ name = "sr-io" version = "0.1.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -161,7 +161,7 @@ dependencies = [ name = "sr-sandbox" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -186,7 +186,7 @@ dependencies = [ "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", @@ -234,7 +234,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum impl-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2050d823639fbeae26b2b5ba09aca8907793117324858070ade0673c49f793b" "checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" -"checksum parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67a4d27831e31e27f1454d6e3d3bb34bcac6bf7ad7032eed0ad0070dc8cf55c1" +"checksum parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21c9c3a1623c71ed83964ff28cac6126e178920f7646d32c337eacb9152b2907" "checksum parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "864e9f66b58c0b38f0d6b511b6576afa2b678ae801b64220553bced57ac12df9" "checksum primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "edb92f1ebfc177432c03287b15d48c202e6e2c95993a7af3ba039abb43b1492e" "checksum proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4c6cf4e5b00300d151dfffae39f529dfa5188f42eeb14201229aa420d6aad10c" diff --git a/substrate/core/finality-grandpa/Cargo.toml b/substrate/core/finality-grandpa/Cargo.toml index c84e798fe7..070b073b99 100644 --- a/substrate/core/finality-grandpa/Cargo.toml +++ b/substrate/core/finality-grandpa/Cargo.toml @@ -11,7 +11,7 @@ log = "0.4" parking_lot = "0.7.1" tokio = "0.1.7" rand = "0.6" -parity-codec = { version = "3.1", features = ["derive"] } +parity-codec = { version = "3.2", features = ["derive"] } runtime_primitives = { package = "sr-primitives", path = "../sr-primitives" } consensus_common = { package = "substrate-consensus-common", path = "../consensus/common" } substrate-primitives = { path = "../primitives" } diff --git a/substrate/core/finality-grandpa/primitives/Cargo.toml b/substrate/core/finality-grandpa/primitives/Cargo.toml index 3891db8f01..a0bd36eb9a 100644 --- a/substrate/core/finality-grandpa/primitives/Cargo.toml +++ b/substrate/core/finality-grandpa/primitives/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] client = { package = "substrate-client", path = "../../client", default-features = false } substrate-primitives = { path = "../../primitives", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } sr-primitives = { path = "../../sr-primitives", default-features = false } rstd = { package = "sr-std", path = "../../sr-std", default-features = false } diff --git a/substrate/core/inherents/Cargo.toml b/substrate/core/inherents/Cargo.toml index 2ea3c69a76..d3292095cc 100644 --- a/substrate/core/inherents/Cargo.toml +++ b/substrate/core/inherents/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] parking_lot = { version = "0.7", optional = true } rstd = { package = "sr-std", path = "../sr-std", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } runtime_primitives = { package = "sr-primitives", path = "../sr-primitives", default-features = false } [features] diff --git a/substrate/core/network/Cargo.toml b/substrate/core/network/Cargo.toml index 4d78eeb602..6e7e8599db 100644 --- a/substrate/core/network/Cargo.toml +++ b/substrate/core/network/Cargo.toml @@ -25,7 +25,7 @@ primitives = { package = "substrate-primitives", path = "../../core/primitives" consensus = { package = "substrate-consensus-common", path = "../../core/consensus/common" } client = { package = "substrate-client", path = "../../core/client" } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives" } -parity-codec = { version = "3.1", features = ["derive"] } +parity-codec = { version = "3.2", features = ["derive"] } network_libp2p = { package = "substrate-network-libp2p", path = "../../core/network-libp2p" } tokio = "0.1.11" keyring = { package = "substrate-keyring", path = "../../core/keyring", optional = true } diff --git a/substrate/core/primitives/Cargo.toml b/substrate/core/primitives/Cargo.toml index 04094ff01e..4c176ef404 100644 --- a/substrate/core/primitives/Cargo.toml +++ b/substrate/core/primitives/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] rstd = { package = "sr-std", path = "../sr-std", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rustc-hex = { version = "2.0", default-features = false } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } diff --git a/substrate/core/rpc/Cargo.toml b/substrate/core/rpc/Cargo.toml index 762453f2b7..8998ebe81f 100644 --- a/substrate/core/rpc/Cargo.toml +++ b/substrate/core/rpc/Cargo.toml @@ -11,7 +11,7 @@ jsonrpc-pubsub = "10.0.1" jsonrpc-derive = "10.0.2" log = "0.4" parking_lot = "0.7.1" -parity-codec = "3.1" +parity-codec = "3.2" serde = "1.0" serde_derive = "1.0" serde_json = "1.0" diff --git a/substrate/core/service/Cargo.toml b/substrate/core/service/Cargo.toml index 59fd77a219..353a3a9973 100644 --- a/substrate/core/service/Cargo.toml +++ b/substrate/core/service/Cargo.toml @@ -25,7 +25,7 @@ consensus_common = { package = "substrate-consensus-common", path = "../../core/ network = { package = "substrate-network", path = "../../core/network" } client = { package = "substrate-client", path = "../../core/client" } client_db = { package = "substrate-client-db", path = "../../core/client/db" } -parity-codec = "3.1" +parity-codec = "3.2" substrate-executor = { path = "../../core/executor" } transaction_pool = { package = "substrate-transaction-pool", path = "../../core/transaction-pool" } rpc = { package = "substrate-rpc-servers", path = "../../core/rpc-servers" } diff --git a/substrate/core/sr-io/Cargo.toml b/substrate/core/sr-io/Cargo.toml index fa04c17e3f..811c17e0b1 100644 --- a/substrate/core/sr-io/Cargo.toml +++ b/substrate/core/sr-io/Cargo.toml @@ -11,7 +11,7 @@ rustc_version = "0.2" [dependencies] rstd = { package = "sr-std", path = "../sr-std", default-features = false } primitives = { package = "substrate-primitives", path = "../primitives", default-features = false } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } hash-db = { version = "0.11", default-features = false } libsecp256k1 = { version = "0.2.1", optional = true } tiny-keccak = { version = "1.4.2", optional = true } diff --git a/substrate/core/sr-primitives/Cargo.toml b/substrate/core/sr-primitives/Cargo.toml index 4ef85b4989..565b9fb1e4 100644 --- a/substrate/core/sr-primitives/Cargo.toml +++ b/substrate/core/sr-primitives/Cargo.toml @@ -9,7 +9,7 @@ num-traits = { version = "0.2", default-features = false } integer-sqrt = { version = "0.1.2" } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-primitives = { path = "../primitives", default-features = false } rstd = { package = "sr-std", path = "../sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../sr-io", default-features = false } diff --git a/substrate/core/sr-primitives/src/lib.rs b/substrate/core/sr-primitives/src/lib.rs index 0c77b1a468..6df4bdeb78 100644 --- a/substrate/core/sr-primitives/src/lib.rs +++ b/substrate/core/sr-primitives/src/lib.rs @@ -477,6 +477,13 @@ pub fn verify_encoded_lazy(sig: &V, item: &T, signe /// Helper macro for `impl_outer_config` #[macro_export] macro_rules! __impl_outer_config_types { + ( + $concrete:ident $config:ident $snake:ident < $ignore:ident, $instance:path > $( $rest:tt )* + ) => { + #[cfg(any(feature = "std", test))] + pub type $config = $snake::GenesisConfig<$concrete, $instance>; + $crate::__impl_outer_config_types! {$concrete $($rest)*} + }; ( $concrete:ident $config:ident $snake:ident < $ignore:ident > $( $rest:tt )* ) => { @@ -504,12 +511,12 @@ macro_rules! __impl_outer_config_types { macro_rules! impl_outer_config { ( pub struct $main:ident for $concrete:ident { - $( $config:ident => $snake:ident $( < $generic:ident > )*, )* + $( $config:ident => $snake:ident $( < $generic:ident $(, $instance:path)? > )*, )* } ) => { - $crate::__impl_outer_config_types! { $concrete $( $config $snake $( < $generic > )* )* } + $crate::__impl_outer_config_types! { $concrete $( $config $snake $( < $generic $(, $instance)? > )* )* } #[cfg(any(feature = "std", test))] - #[derive(Serialize, Deserialize)] + #[derive($crate::serde_derive::Serialize, $crate::serde_derive::Deserialize)] #[serde(rename_all = "camelCase")] #[serde(deny_unknown_fields)] pub struct $main { @@ -551,7 +558,7 @@ macro_rules! impl_outer_log { ( $(#[$attr:meta])* pub enum $name:ident ($internal:ident: DigestItem<$( $genarg:ty ),*>) for $trait:ident { - $( $module:ident( $( $sitem:ident ),* ) ),* + $( $module:ident $(<$instance:path>)? ( $( $sitem:ident ),* ) ),* } ) => { /// Wrapper for all possible log entries for the `$trait` runtime. Provides binary-compatible @@ -564,13 +571,13 @@ macro_rules! impl_outer_log { /// All possible log entries for the `$trait` runtime. `Encode`/`Decode` implementations /// are auto-generated => it is not binary-compatible with `generic::DigestItem`. - #[derive(Clone, PartialEq, Eq, Encode, Decode)] + #[derive(Clone, PartialEq, Eq, $crate::codec::Encode, $crate::codec::Decode)] #[cfg_attr(feature = "std", derive(Debug, $crate::serde_derive::Serialize))] $(#[$attr])* #[allow(non_camel_case_types)] pub enum InternalLog { $( - $module($module::Log<$trait>), + $module($module::Log<$trait $(, $instance)? >), )* } @@ -648,16 +655,16 @@ macro_rules! impl_outer_log { } $( - impl From<$module::Log<$trait>> for $name { + impl From<$module::Log<$trait $(, $instance)? >> for $name { /// Converts single module log item into `$name`. - fn from(x: $module::Log<$trait>) -> Self { + fn from(x: $module::Log<$trait $(, $instance)? >) -> Self { $name(x.into()) } } - impl From<$module::Log<$trait>> for InternalLog { + impl From<$module::Log<$trait $(, $instance)? >> for InternalLog { /// Converts single module log item into `$internal`. - fn from(x: $module::Log<$trait>) -> Self { + fn from(x: $module::Log<$trait $(, $instance)? >) -> Self { InternalLog::$module(x) } } diff --git a/substrate/core/sr-sandbox/Cargo.toml b/substrate/core/sr-sandbox/Cargo.toml index b48744240e..599e66d663 100755 --- a/substrate/core/sr-sandbox/Cargo.toml +++ b/substrate/core/sr-sandbox/Cargo.toml @@ -12,7 +12,7 @@ rustc_version = "0.2" wasmi = { version = "0.4.3", optional = true } primitives = { package = "substrate-primitives", path = "../primitives", default-features = false } rstd = { package = "sr-std", path = "../sr-std", default-features = false } -codec = { package = "parity-codec", version = "3.0", default-features = false } +codec = { package = "parity-codec", version = "3.2", default-features = false } [dev-dependencies] wabt = "~0.7.4" diff --git a/substrate/core/sr-version/Cargo.toml b/substrate/core/sr-version/Cargo.toml index 5a1e6162f1..cf3062faac 100644 --- a/substrate/core/sr-version/Cargo.toml +++ b/substrate/core/sr-version/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" impl-serde = { version = "0.1", optional = true } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../sr-std", default-features = false } runtime_primitives = { package = "sr-primitives", path = "../sr-primitives", default-features = false } diff --git a/substrate/core/state-db/Cargo.toml b/substrate/core/state-db/Cargo.toml index 17cd633518..28d5696928 100644 --- a/substrate/core/state-db/Cargo.toml +++ b/substrate/core/state-db/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" parking_lot = "0.7.1" log = "0.4" primitives = { package = "substrate-primitives", path = "../../core/primitives" } -parity-codec = { version = "3.1", features = ["derive"] } +parity-codec = { version = "3.2", features = ["derive"] } [dev-dependencies] env_logger = "0.6" diff --git a/substrate/core/state-machine/Cargo.toml b/substrate/core/state-machine/Cargo.toml index 9a5c42abf2..61a99f8e94 100644 --- a/substrate/core/state-machine/Cargo.toml +++ b/substrate/core/state-machine/Cargo.toml @@ -16,4 +16,4 @@ trie-root = "0.11" trie = { package = "substrate-trie", path = "../trie" } primitives = { package = "substrate-primitives", path = "../primitives" } panic-handler = { package = "substrate-panic-handler", path = "../panic-handler" } -parity-codec = "3.1" +parity-codec = "3.2" diff --git a/substrate/core/test-client/Cargo.toml b/substrate/core/test-client/Cargo.toml index 821e87da40..5049b2ff9f 100644 --- a/substrate/core/test-client/Cargo.toml +++ b/substrate/core/test-client/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" client = { package = "substrate-client", path = "../client" } client-db = { package = "substrate-client-db", path = "../client/db", features = ["test-helpers"] } futures = { version = "0.1.17" } -parity-codec = "3.1" +parity-codec = "3.2" executor = { package = "substrate-executor", path = "../executor" } consensus = { package = "substrate-consensus-common", path = "../consensus/common" } keyring = { package = "substrate-keyring", path = "../../core/keyring" } diff --git a/substrate/core/test-runtime/Cargo.toml b/substrate/core/test-runtime/Cargo.toml index bddabbe928..812dd4bc28 100644 --- a/substrate/core/test-runtime/Cargo.toml +++ b/substrate/core/test-runtime/Cargo.toml @@ -9,7 +9,7 @@ log = { version = "0.4", optional = true } hex-literal = { version = "0.1.0", optional = true } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } keyring = { package = "substrate-keyring", path = "../keyring", optional = true } substrate-client = { path = "../client", default-features = false } primitives = { package = "substrate-primitives", path = "../primitives", default-features = false } diff --git a/substrate/core/test-runtime/wasm/Cargo.lock b/substrate/core/test-runtime/wasm/Cargo.lock index 0746e5aa81..f933220f0b 100644 --- a/substrate/core/test-runtime/wasm/Cargo.lock +++ b/substrate/core/test-runtime/wasm/Cargo.lock @@ -560,7 +560,7 @@ name = "impl-codec" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -838,7 +838,7 @@ source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7 [[package]] name = "parity-codec" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1371,7 +1371,7 @@ dependencies = [ "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1387,7 +1387,7 @@ dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1407,7 +1407,7 @@ name = "sr-version" version = "0.1.0" dependencies = [ "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1418,7 +1418,7 @@ dependencies = [ name = "srml-executive" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -1431,7 +1431,7 @@ dependencies = [ name = "srml-metadata" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", @@ -1445,10 +1445,11 @@ dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1493,7 +1494,7 @@ name = "srml-system" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1537,7 +1538,7 @@ dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "sr-primitives 0.1.0", @@ -1568,7 +1569,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-version 0.1.0", @@ -1586,7 +1587,7 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1605,7 +1606,7 @@ dependencies = [ name = "substrate-inherents" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1640,7 +1641,7 @@ dependencies = [ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1674,7 +1675,7 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", @@ -1707,7 +1708,7 @@ dependencies = [ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1736,7 +1737,7 @@ version = "0.4.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2260,7 +2261,7 @@ dependencies = [ "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67a4d27831e31e27f1454d6e3d3bb34bcac6bf7ad7032eed0ad0070dc8cf55c1" +"checksum parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21c9c3a1623c71ed83964ff28cac6126e178920f7646d32c337eacb9152b2907" "checksum parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "864e9f66b58c0b38f0d6b511b6576afa2b678ae801b64220553bced57ac12df9" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" diff --git a/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 7d348a504e4c4bbbaa5bf7c20fe4879d4bd81fbe..82ede8590330a37e4885336de3322530ee251f8a 100644 GIT binary patch delta 3236 zcma)8dvF)k72dl^z`V%j0Ynk_5fKtJ;qH4EVa$(es&)V$fS`l0Pe}+NCc(nkF@cgy zh=9SP9a?OSWy(;h19of3fYubNf;>z#NHx*IIGu5@zWpOk?M%P@B~j|wnI^OQojrT+ zd3@))n;bcs_Uh5J!#`oPkrmOiCuY(HHjcKlw#=^Gy+U@gknD9-5@ru%2j(-hO3He_OAROizf?HOX_)#3jo_b|G4K z#~j8E&@b-1tz^qKyv|GxZwKI45|YhTxk5rr3WiuIRwlP>Bk`_RuJ3KHM2ldZ$xsh16D6Zl5`upHMRPU$UMs(W)(-`}Z zsvB;|?&^%o0H?`eI@E9z7JSvP4ENg_SFkg*uW>OOpf4I1pgG?3_WZx4if$1{iq45^ zPI<0Kz?EzfYYed%#uYWmu`ZwsHKmI^v~XigSmVYg<9emd>r%xOMV*_Er`s1&Vfsb` z7kwL8N(JtV11I2=z6&hnf|-^_qemXTKMj$-+;VqGcRYXTd-Dgu@%%4{5I{H8Ze5vs za$9QVES~?X^yb!g(A+aWf3EPuR1Fs{uYu~fP0ku?CD}*2w=GHhV3tvpb+TmlW345V zN7hK`Np^EC%Sp>l3b|r7_S>yH#?p@;P2U=T6szqm2D)?F%@I;)Mf;7ZXK1G*i%z$9 zU<^6!71X*tR?-vO-(v$&W5)*!!~JN-97%+{#Y%Mg8LNpIfYw&BPos}^oX?oijW%!qNgS^R2y_{E&D7L%NmJ36EQ|~gPFp% zPznboFx^Oc`j-r+{@`!huvOmoJDmOV`}T=N!>I@dP)%Im<3OC3UHh+MC+PS4ufFcT zUw>bj2iRrGj6U1nHUVFzpFUrO6n}pH37n0k-S@!muf+-N-ZZNP2hI>N(>Rs(ZMCQ| zA>va42S=&o9Jvmgb{=tNwWl^f`tgSNFpac_2(XKh8#=~@q8=N=UfeTNEbC0|C>`1H zeZ7}r2dGKOo%S9*GHcKO7k|^Slb~ba3(sU{CIsZwMM27>uU~iqpQ}e-ydft?Sa|$M z&lh_?`TNIHqVq2{vz+JhMIqVJg3ozdF1at=o7J?odP8k(bt?@YOU)xEc5` z-lqZYg1F{&MVl5|{%#0E`(r1I$N$;e8mB;kbmhV#R762N!_UtnF#SR<;A_gBGx9q<9*MBqwnjFFG-TbeGUm`**%v$+M1 zn94YD{PO@^dhO-B++b7F>iUN2x~A228`o#0{sXyi;x381nj3_HZ8*NFx?H9oot&L- z`;MxHre(_93~Vd!XOwuSl=hvxsnC|WtSE|X2fk$)swu6SPrWB6Qr_#PB-^gybK7*{ z*NSD*^4Hf(p=ySPY^un>EnoBKt=DfYPy#iyxM`}2E?c@$e3;RUcZ#X%RJ+7Y)lhub z47E^KWizDrPjyIvtMEWqO~W=l-;z0PI$a|9mTQNo+|*po6`j+;(=#MfaUD~2ZNpS7 z*9=S=JUx4&?rPjKOxd&yJv6*vsxp7pQo8co^ny^a6<^gHBQRx6vCV1M(|f0{ESxuQ zt)X*SHC)5+4NZ0|PEBW)OtJ$V~7a)YZ4HK)1~x)E%t#ZQu9&^2K!VR59uO zvkH8}#d^oL9Zhy!%dV(Py=v{Rk_^|kAOh76buBavnFjl(OMwvvfuaT>x(i)brK~rn zA zmt_|9z4Wdjg*Z?y*DXc216wsXWeh$jxwfxCUsh;nmditn9vQ5ZY%O#R)iAhY z>b4p>G&ooS0x?L%4J}I#eABflcjy|4Tbk;d5S*s@wih^5Iiwdr5NhaIvIl8+W~eUH zh@C5>Uk&9;frV4z7{21_x~%&i9UHo*M62NCb=CK;ZK~azC{=ZC;NX~YLgBJq&Xsb- GD*F%Xhog%C delta 3224 zcmZuzdvF!y72j`j1Lj3G4L2~>CQ-ERox8vDoo~zI-5O-+`RHKV-C+O_hp*HLDh{Y-wspRlxE5M~HML7HW<(LZYB0=AdN7)#;c0i$bN;R~I8LMD|KrOPu1 zqtSC0h^#-l_m-)QZKGe^dSm5<_1MnKWH$ovk%Ua!>>?p8W&|!ahz*$w>q(q<_^O>< z4TzD>%?Q=P<6R9rkw;_-rO}nS*A!(&8*;iW_o}=3aW{u1hQSV?(MJ3NpPt5M&6u5`o$`kEObe zBcp=FujH`4=uLOb2$mO}S<;ci-lUbw?na1#Wf40^9n0q=a(yH=&xv!mdF5SD?^)?5 zY98JA<4KIYOHC~^3VM6vG{9*lOM6ItKOdZ zYLaxjIGA){oO7bNBn?%jU0lk=3J8}h%?ww8xzLii=%QJxW5QZj|2EE7T6=GjOnKD1 z_NA2FpSbBCa$NqEV<~amA3IJ%DSho&DgrZSd!k?5e@_lPeg430mAf~f@zS^Y4}#jwgV)r?hXyQxt#}+y0yDjXJ&DB>7gu2? z#}wyd)lYM2I@=a?)0sSs(dyr2aliHV{~Yx(hAEwwPDwYTH+|8Z?PD3T4IW)r^FiXv z8uVTjM@#9$Y)i4)ukMCLs^ zFJ=4bk2@z!`{wqyCvz9OXfmU-J3B|=&2-;Wvk~I?ryj!DnE&)0kO!9Ggg(7y%Go3q zdK!n)zseRlrbWC;ppcO&Is2x;X!Aa2%K5|qqaPc@hiR}pcz|4i*qCD&l<&9E?3?yi zi8bvw(_E|`wD|VCSHl9-B;!tx9N0&n?kgGn-7eQWa|8^`diIHe{Iq~jhA2q+bm7^D z@P_*3b2EyHgjs(ccx+61H@3xdSg?*wjUf{+W`kM-3T>9-E)XERACf_@rsJn-op zDgKEN?#F%(a31s$&;ynO?*kSCJAq}uhlkc}yCCF4@g%SWco0|tJPjNJ91q7;z)n#T zz6V^3FX|LN$GZ9=efyC95cK%D`s(@aA$=?Kao}M;b0DMOHenkAOu}Ngf={a^RGV%+a%G9-n1SrP;hj) z#2wc*-7qv|#}0JaqQ4)#q0~@i-|~#W_d~AuTE$*Q@~H|sdtxO0=(PvReBH1V&C^^j z^pJov?$?Y4-mRcZj;)a3+LK*u$+p22ZqUzpF7464ckx@PYuC^uKMZOGgot+f}+qz>0zGQViR4d^_-T&+*Y4Ix}#Yq@rPt?C1)}G#u{JxD(@x1IKc? zp=pMzD6$bm-#^jMB-2KD21hGGRkZ?@E@+_v4&b9oRNRDSv=lH;qs9$Kzpd$#Sn4*lkIgT#FmTFw<6(_;G; zojF}8>2PWzqM`V{Yd9uN$X*U}#l+"] edition = "2018" [dependencies] -parity-codec = { version = "3.1", features = ["derive"] } +parity-codec = { version = "3.2", features = ["derive"] } diff --git a/substrate/node-template/Cargo.toml b/substrate/node-template/Cargo.toml index 0c5d15da08..b66fe0e7de 100644 --- a/substrate/node-template/Cargo.toml +++ b/substrate/node-template/Cargo.toml @@ -18,7 +18,7 @@ tokio = "0.1" exit-future = "0.1" parking_lot = "0.7.1" hex-literal = "0.1" -parity-codec = "3.1" +parity-codec = "3.2" trie-root = "0.11.0" sr-io = { path = "../core/sr-io" } substrate-cli = { path = "../core/cli" } diff --git a/substrate/node-template/runtime/Cargo.toml b/substrate/node-template/runtime/Cargo.toml index 066e9da79d..d6cb7ea7f2 100644 --- a/substrate/node-template/runtime/Cargo.toml +++ b/substrate/node-template/runtime/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../../core/sr-std", default_features = false } runtime-io = { package = "sr-io", path = "../../core/sr-io", default_features = false } version = { package = "sr-version", path = "../../core/sr-version", default_features = false } diff --git a/substrate/node-template/runtime/wasm/Cargo.lock b/substrate/node-template/runtime/wasm/Cargo.lock index 98c611de64..dfd1c90fee 100644 --- a/substrate/node-template/runtime/wasm/Cargo.lock +++ b/substrate/node-template/runtime/wasm/Cargo.lock @@ -560,7 +560,7 @@ name = "impl-codec" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -763,7 +763,7 @@ dependencies = [ name = "node-template-runtime" version = "0.9.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -872,7 +872,7 @@ source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7 [[package]] name = "parity-codec" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1405,7 +1405,7 @@ dependencies = [ "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1421,7 +1421,7 @@ dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1441,7 +1441,7 @@ name = "sr-version" version = "0.1.0" dependencies = [ "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1453,7 +1453,7 @@ name = "srml-aura" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1471,7 +1471,7 @@ name = "srml-balances" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1486,7 +1486,7 @@ name = "srml-consensus" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1501,7 +1501,7 @@ dependencies = [ name = "srml-executive" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -1515,7 +1515,7 @@ name = "srml-fees" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1531,7 +1531,7 @@ name = "srml-indices" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1548,7 +1548,7 @@ dependencies = [ name = "srml-metadata" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", @@ -1560,7 +1560,7 @@ name = "srml-session" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1577,7 +1577,7 @@ name = "srml-staking" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1595,7 +1595,7 @@ name = "srml-sudo" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1612,10 +1612,11 @@ dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1660,7 +1661,7 @@ name = "srml-system" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1676,7 +1677,7 @@ name = "srml-timestamp" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1718,7 +1719,7 @@ dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "sr-primitives 0.1.0", @@ -1749,7 +1750,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-version 0.1.0", @@ -1767,7 +1768,7 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1786,7 +1787,7 @@ dependencies = [ name = "substrate-inherents" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1821,7 +1822,7 @@ dependencies = [ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1855,7 +1856,7 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", @@ -1887,7 +1888,7 @@ version = "0.4.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2411,7 +2412,7 @@ dependencies = [ "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67a4d27831e31e27f1454d6e3d3bb34bcac6bf7ad7032eed0ad0070dc8cf55c1" +"checksum parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21c9c3a1623c71ed83964ff28cac6126e178920f7646d32c337eacb9152b2907" "checksum parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "864e9f66b58c0b38f0d6b511b6576afa2b678ae801b64220553bced57ac12df9" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" diff --git a/substrate/node/cli/Cargo.toml b/substrate/node/cli/Cargo.toml index 8df7e76a54..28fb297e57 100644 --- a/substrate/node/cli/Cargo.toml +++ b/substrate/node/cli/Cargo.toml @@ -12,7 +12,7 @@ tokio = "0.1.7" futures = "0.1" exit-future = "0.1" cli = { package = "substrate-cli", path = "../../core/cli" } -parity-codec = { version = "3.1" } +parity-codec = { version = "3.2" } sr-io = { path = "../../core/sr-io" } client = { package = "substrate-client", path = "../../core/client" } primitives = { package = "substrate-primitives", path = "../../core/primitives" } diff --git a/substrate/node/executor/Cargo.toml b/substrate/node/executor/Cargo.toml index d0e329b264..3e0f618bc7 100644 --- a/substrate/node/executor/Cargo.toml +++ b/substrate/node/executor/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] trie-root = "0.11" -parity-codec = "3.1" +parity-codec = "3.2" runtime_io = { package = "sr-io", path = "../../core/sr-io" } state_machine = { package = "substrate-state-machine", path = "../../core/state-machine" } substrate-executor = { path = "../../core/executor" } diff --git a/substrate/node/primitives/Cargo.toml b/substrate/node/primitives/Cargo.toml index 724eb7d0ab..b7da80c9a8 100644 --- a/substrate/node/primitives/Cargo.toml +++ b/substrate/node/primitives/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } primitives = { package = "substrate-primitives", path = "../../core/primitives", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/node/runtime/Cargo.toml b/substrate/node/runtime/Cargo.toml index 0c695f5ef1..6a5d334687 100644 --- a/substrate/node/runtime/Cargo.toml +++ b/substrate/node/runtime/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] integer-sqrt = { version = "0.1.2" } safe-mix = { version = "1.0", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } client = { package = "substrate-client", path = "../../core/client", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/node/runtime/src/lib.rs b/substrate/node/runtime/src/lib.rs index ae24c263f7..7ca5c697f6 100644 --- a/substrate/node/runtime/src/lib.rs +++ b/substrate/node/runtime/src/lib.rs @@ -21,9 +21,6 @@ #![recursion_limit="256"] use rstd::prelude::*; -use parity_codec::{Encode, Decode}; -#[cfg(feature = "std")] -use support::{Serialize, Deserialize}; use support::construct_runtime; use substrate_primitives::u32_trait::{_2, _4}; use node_primitives::{ @@ -62,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 35, - impl_version: 37, + impl_version: 38, apis: RUNTIME_API_VERSIONS, }; diff --git a/substrate/node/runtime/wasm/Cargo.lock b/substrate/node/runtime/wasm/Cargo.lock index 7c87f49874..6d704abe36 100644 --- a/substrate/node/runtime/wasm/Cargo.lock +++ b/substrate/node/runtime/wasm/Cargo.lock @@ -560,7 +560,7 @@ name = "impl-codec" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -763,7 +763,7 @@ dependencies = [ name = "node-primitives" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -779,7 +779,7 @@ dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "node-primitives 0.1.0", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -897,7 +897,7 @@ source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7 [[package]] name = "parity-codec" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1440,7 +1440,7 @@ dependencies = [ "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1456,7 +1456,7 @@ dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1468,7 +1468,7 @@ dependencies = [ name = "sr-sandbox" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1487,7 +1487,7 @@ name = "sr-version" version = "0.1.0" dependencies = [ "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1499,7 +1499,7 @@ name = "srml-aura" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1516,7 +1516,7 @@ name = "srml-balances" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1531,7 +1531,7 @@ name = "srml-consensus" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1546,7 +1546,7 @@ dependencies = [ name = "srml-contract" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", "pwasm-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1567,7 +1567,7 @@ dependencies = [ name = "srml-council" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1585,7 +1585,7 @@ name = "srml-democracy" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1600,7 +1600,7 @@ dependencies = [ name = "srml-executive" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", @@ -1614,7 +1614,7 @@ name = "srml-fees" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1630,7 +1630,7 @@ name = "srml-finality-tracker" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1644,7 +1644,7 @@ dependencies = [ name = "srml-grandpa" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1663,7 +1663,7 @@ name = "srml-indices" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1680,7 +1680,7 @@ dependencies = [ name = "srml-metadata" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", @@ -1692,7 +1692,7 @@ name = "srml-session" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1709,7 +1709,7 @@ name = "srml-staking" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", @@ -1727,7 +1727,7 @@ name = "srml-sudo" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1744,10 +1744,11 @@ dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1792,7 +1793,7 @@ name = "srml-system" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1808,7 +1809,7 @@ name = "srml-timestamp" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1822,7 +1823,7 @@ name = "srml-treasury" version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1836,7 +1837,7 @@ dependencies = [ name = "srml-upgrade-key" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1878,7 +1879,7 @@ dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "sr-primitives 0.1.0", @@ -1909,7 +1910,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-version 0.1.0", @@ -1927,7 +1928,7 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1946,7 +1947,7 @@ dependencies = [ name = "substrate-finality-grandpa-primitives" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", "substrate-client 0.1.0", @@ -1957,7 +1958,7 @@ dependencies = [ name = "substrate-inherents" version = "0.1.0" dependencies = [ - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1992,7 +1993,7 @@ dependencies = [ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "impl-serde 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2026,7 +2027,7 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", @@ -2058,7 +2059,7 @@ version = "0.4.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2582,7 +2583,7 @@ dependencies = [ "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67a4d27831e31e27f1454d6e3d3bb34bcac6bf7ad7032eed0ad0070dc8cf55c1" +"checksum parity-codec 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21c9c3a1623c71ed83964ff28cac6126e178920f7646d32c337eacb9152b2907" "checksum parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "864e9f66b58c0b38f0d6b511b6576afa2b678ae801b64220553bced57ac12df9" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" diff --git a/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index a4684f21c990531dfdd95d735e861e82955cf054..f6ba616469aea564d52c8ce6382e4235bec26b1f 100644 GIT binary patch literal 871507 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� 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

IMeq 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

*1LuoUB%#?1IyV+I2>=DhKg^=FwZ zgxsy%uT7DN%kLlP#6qqYF9o=>kd^QaLEx$7k3Xg0{Ji-+AGMU%6T&b{cLW7^TerjV zT6s7tEw3>Y57h5$&GJ%mOh6Kr7uIxQB9R+>d12#N2`4r{n&>QP?pB8Tngq(WVzU-z zopP?!rInWF82GK$9p^u>yAc4Dr5VsP_#1>Q{N#!)}OHNC0RgH-!Te}={t0^ z+INTi^MOI*z%auRpHq66_HjJz+&_t;xxl||B>dQRe!2AwY*T{ujd|l-e?g)Z)ugH5 zkRiKTzJP2sM=lcOi0X-*Qeu#?u!g0RWS5^K=^`*sU}_6YMx}ua8+5UX2&(n~n5M&n zG&*D)@{ygykiHFOGokc<6Q1$|AkBfwr8nfX)w_5)p=Y9avgw@t+b>RI~) z#Rz|NFx5QKox&Jcq0DRE<_jb0OYwP#4wSq-|2_2@xaJk|Z3Z9AysJ?0zb`6&jpK8b zdyQQl!s_xLFI}c64{q48cFsX$1>T)w(lu$v}!>DiZA$fY%d8O*p;S!Oa zAYb&`r{q|a;2}}LXd%*kFEg2VDkt{#dS%6IgDEUuP=i-GU&Q%3Uviq7+9wTR!5W}p$c)yN4_%I|IyE`TNH4}7bF4# zTOk1f9PT&)VcpG=px+-7I(|oA!fGm6Yz=f}MP8n;NyNL!nhPdt+N?|SaPZ(UCV=Ek zAL?t7btbgdp-S>N$8uCi82g+}@92sR#}uGQxHqMg((-LZlcRn_y?_SOYTgzy?*lAR zM3K9bQo(csV%c1SjQK*Z4Y>xh(HPtFZ}mGTyr>$Gy@yPSy z%oBmPF{~w$TMezHRvJ(k;L2<1p9#Y`2w@!k-AtQ7c+6EfPR={ zu)iR|%pz5tD6uU{VF-RvLUKtg71&4oYn&zQE~vWJp-dR)zDE5(J%@>E zum&W|X(gK`$jUX(PIy_w9z5j(7W{37Xf2I=hnF4E5}u%^l3$cB?c<=iASNXm{6|t4 z{ALhq&8Dvb8NydT#>gy~%G+O34F`FsB)Lvbow_)VXhY8O_>`{3a;U!jb|Q1R{_y86 zAOaYF&g)oBxm^B%d z5-5i%zeZiN3G7lJ7PrsWdn`CpGEv8NdNmMWnE9-*G_|uT43?IC?jq5%#Kl#E$;GTl z+*0FXqS6*Gd%KEYj%EPBVLHa>A4jN^M;MJUV|r9+g=`vYg;PUi|S zF)yeTze`I4xR~|yYMhK0cy+ibC^3fGvMCvTo5%av9wZk{PNtTYn9SZ){&D`#l9)H1 zdNJ!?t^HN?g9^#s!%AJm!XhEmdN~O9QGhuxn4TfHJLG6Z_@{)?_57;av*&m8;B37QLQZR}pQ_s!)w@yL67p9%6G5>$ zW(ABM)7%PL?=Z-GkO2Q$Lo$JX+(6ed(U^2`w%)roP!F(0pa#Z2BOX)QYlmjcKfeNm z0iQP#f9Gnjt0>*^!`HFU83CJIY8(c^0Slk}6TUk)-!8uISGalIe4CeFc2oFrt9PAD z2Ek-G26!)PF2-0i$E@#ImAeNSuI{sB=c%cS4(&r+PaH zTFS3kMgi_$UmPK~r%ASa`YMh1Dp7GspDjuj6?$0XVin<(53x{al25!-O+WpR9igQB zPFe90QyKWtm@ow&EDK=86nr2R@bHK~uq25z63>_e?z-@2-xnuAAr@Z#?MT7_u&85A zANg-np<6ht@b9HUXU;0rUW>DJu11dTsQpx(c5_+~2GpOBFr49z(CC$soZRpdXpd-R z34D}#zFTtN>BqN1Wr>yL-_CdBwS0&D@2#k1WXn+1{HcB~-@z{w^l2y$4Lz0j@&@wn z{Ksg3D8`RcrTQm4d%~u2Mi`Aa zxpP}@zaI@axf+hbL_b<`a)upBp)Ap)Q39)Aa{*QzbdDZQt=?Whw;&l{8;qb^YaGR5 z#12lxV?!P|wU9<8Chj8AFeN-CgpqogkVV0G6+}^ppj1(lV9F6mLxljv?wQ0sm#k5O zAdxO{pv-sR>Vl-rF5aoi>~ipzK)B-6&W5S2#i^x0Q)^AEJ+BvSUJ20Y*hrWzV@}A6 z`0)pd7!)?BSQI7|{@+S50TU^t2djbBg3Z2THZWo~rt`gWC(7dpgr<)Zj;{o}?VMwN z`g_g%RnzLHymn6eOYiSqr`Lr4Ia*2^l_p2rk#Px87+gY;(G-(WfZx?w z!JXyvlAe#m=T?DH8!1&?c<7GWQCg5E-GWt86S9e#d^(QpWh;5MQbI%wbxx;}1B&Q6z{?bwNe+Ypb}ho7WkkV7BsO}33yi%b z&5btN0ZV})P9=ul-c)w9!C*EI*?g)$scb?p1COFMBjEzwT|)5o1$_XLK@YIX9uTuV zAT{bhk?D>lcA#i*H_!0?N?;xaRq) z^L$Z6QBIvyV6wAB-su(N#zS=!wv^?Ke{g%r3);|6h zDYDh$Tl<8E@mu@s4&`B=zR=Ej&Mm_@>n6_+O4Le&5zFoy%2$UYmW>1^ei-ZW5wUEz zdMKqO-8~OVaMP<9KY_ui*o<}}Kq6}K1*1sxKafcMOrwFbp#QT%b5U-V0hVBq>>c#F zAuPKQnzo(Z?-%pfCt;a5BAxc0@dBge>j`9WXb~I+B0d}EYM`7BczFeU&UK`G3BSw^ zU|nY{@gu1X4Z_;?xfv+8wpBjZ_8GIrFo201r`1gH@#5o5dmCEz7_{u5&Z}yDSe|Ws z+i+6k*7D)T%2^M)lTm56usBafCAJlH*f?}ZF7u+XwrF+W{@_nHGuZqiahLqMKnAMPeZc(#=q6z_YcbBCuQa$H25) zTLR&_0BYN*CiDGWb$M;a9puV(Lm*6;KYRqgk9x7MkjrooFAy(rdt;X{1E?i;6!zOvQ;67y(Z3x zdD$nBb+@|*Z97toq+k{-UNlzh49!dg!B=($bqG9)Cw`a&5`}RSd}CN~o5f<3wB%a0_1QsTJ+0GUo}bD3S0nmln@jZdgIqR2@7pikpdx(<1#<`;27l${OTPAiu4wg}8MmBrS{@cvpOhq^BFq6RNEg^UrIgTcV;7tTEcc{1H`et>8}o&=SC zoZtu-$diibo$Av&feW6h-Z{}5-@6JhAxQz4+8l{m#K9qwo)ifHQzP2bLVplB;Hh+8 zOcg*+7K?a=i+b-SRVQq<_;~Lyw`gTIvnFo=K_^W_Kf=tsrpSA@7Q1_|E#`Z-!De1p zG!-ajEDnJ4Y+1usp*jz9v7U;Ey+R`7|9oM&tJu&E9?V`F@6Qe7Vv4 z+U2}=f^NNq?mkd_wD)xk;z4@$5M6&OU4I*0e|zz<-owR{y{|9c+j~dxQ12UxR_~p~ zRPP%#ly6eEzZoIE_btVpy}wc%>HXDWy7#So<`F*kF8PlVDeV)x`wYtzu&Iof#+!&k^xE9XVLBAcrDIpzi#3^x6PKg^OKW$HL z1>s)s(?sLv-<2J4eGWFp{_WoLNPx#!6Ia&|qr3W~@`srrQK6Bia#s+)UGrV(yK1FLC;(Ih&S7>#V5&S%3a z^j`qtW8s$yg{v?b`|>IGyPeWfYUhudO2L>-D67fRDS<)l+5^-qS~x@@^2gFI2*?sY z#IxiLv-TbrplZFx)ogysJz_&m$Kj=R_(B|5D&s?ONTKX;(F~Gr2h(h@VakFFHf8yu z#4;IedymPY`<+mkD1I}@C~-^M4%FDV`eObVc;{9+Xq?Qwd=4^)iYRNHlQ;#we=t7C z+Wdj|pqYEbAD)+qv-Y&2lk0p$q!yVAJ5*@Iix3hBYZ)kF(t;gN;(~znJaRdN7p*UK zAkt-g`tfDelmyR*370`+6KQ%(w#Ub0S7H{vBfsXH2f6CrV1&dxFxtMRlkrAaA%0W_ z9>J#2fD!@`f<)D=3W|s5Pn_%u7=+wnk#QV`?aa4fSrr6l>l#CcJ@u)T*v)}=4S$|D zsdJ#*a7g8YYeCS3NNKKnkJ%SEI=&PpwM4+EH_kR{^$eCencs{ubogZd=Hp#?2zVwI zEq{$%*M|V=Esugh`K>PRQ*yJFv{WK_zF+$$Dq6qu*9sq6y2R=9^4o*~t(;4gqP+Zd zI#sxpb4ikB02_18l!VbD>QE;kV26U&?Wk>%ke?1QjC_Ue$=hSeP->v8L)hxe9nT{3ZpLv^guA;#v-}PI z;fJdxPzfoS+OhjL;W!2XzMBf<_p#?V!nz>kaB#Bi{tf z+iHY!!)XND3&N(VsQ=liFa*ogjgLsJFC53w@!p(cNhBoke5(Jx{P>5J^tG118JV5d z!yrRI6YGuP+8Lo-N*z<>Z!-#|O9Zbiwfya%A|2!6p|ZkY)jui&ep{EM--MN|6{T|N zHjE_Gy9afT$f)*Z2|{iZ?67)aP*9)t^Q1{y`lPx~X<<{0uq{ex*2 zBU`gWS>#~65~ih{KPbSq1Vup>o4zrm_vPQHctZoC6eh!n-us!TZ|e}|u+V!?{;vGp z_jY%7b^&pw!k(0l#jJ;QnIT2nB_{wB-6q;)zd_{1a`YRwCB*d})V>vd<2DYc9(ZKq zG z;+guJ=w)P&Lbu*y9ZhO#UmRaB=TmW{sYlwg6Xqkf>c260(&+VDbspn0x1pD;ysTr#<gb4@J)N$B{Wbj8vYN$ML*8CMqZr_^1(Ig2||cB&Cr{R?X-C zj`sByO0EONY@n#mBGhwG+vko-+?6pxkAFKpa{p8DerItzCK6s#!fLa3)pqj6&8$=g zC}rJRIG|^&4e|LpJtKnna~y4da32)y-0o;tjmu4>BckI)A)pq&0(5K-OeW)`4NbI; z*iBLT$6)TPj7Rgw&9?w-Xy5!LkmaphPs6(o=_js7xw4}YKE--P77pSJyXzkth!X<-I9LUL`L%gjD^1hT#j>)-i*JoD9vyfQrG1ST zv4;5<*;rZqq$0$rSS2^_!O2&3S*2Qs=RznXn5duEEA!R~OoUr}Br z=MU7X>JZY=dsQS+Q>y-Zj(6FqgX}ba1NBb7^jQ(s$9?CFENTrI&Sij#7n#;=Gmk>X z3z?rVwClpY9bE|iR~6h(db0Oqb+sq6!W)np07=ArWB;&JHEZ>(3B^E$yRW<5T1BdR z7cw?z`>x~UGvppeJ)?k%%FA^=|JrBzwfqETo2xBeB)|9m?$tKw?-CRr;f=REY3A}r zu%5Hv6g2V(b|dHjcDRgT5OMZM{%)%2EALZ+pe%on*2uf{;ScoQoqr&I;CL5t3z?HN zU~NwuWgq#rU|j>?l3W4!PA2fZ`FkYk^ODp~6Ip2*8Cv2DCGU}1!!RW2Q&Lqsk-m}r zOxBM}Lg+6EUHSMV>kpJ8#nYplOO&mNX|ft1Xt^S!b{>s7q14W|#|P}ad@Zy&5g9#$ zcwhb&^}n5elYWhAXFGqtV(-LAY)HKQ&GBtD#Phe5&u`cBUn!sA4O#wI%jXQK-vhq* zLR;W&=kIgXGki7boM;D{vM5ptk%R8ZHzVuSu#&i@0hhYxdzAn1{nFmvkLJ0+=)U!M zSIH+bQxzOl!GjL~PA2jLjt-a=9gAk{c`E;UZNio4kH-DjPzB& z;Cg5O-O3Nay?@(2+n?2k_vKt_>PbXw9Tw6*h*1Q%p^moE+wMEr+Yc@tG+f-Kb4Hrz zi)h&F5|_&NATbOM7Q=LW%%_l$JK90r(QfL(6hqaY|GCE1`LcGG6aJMSzu!y;c6l@V z5RpcvOsm$nzeZB_gf5uTax>sjYS)MRQ^aQnL~OA(fSzgoQY>3SEiH@mJ2S22ke-=r zEralk)Sgf6p+DP*F2m*qsd&&tK@gyoF9YV~d;;_a{4>HRZkI&U#7CO2pLgc`bJOoVsr-Lt{w4)BRT2eZ$pO*?q;sJ%~+Z4;|GSL1>&( z!IbvE5?QCQpnM_EK!gz(z+%vY-p#0+LJu%cI|8*a=)n)3vcc^~Dfd&yX7huhZ%XI^ z*xsGr|DE~FNw9YQJQL{z@A!!>F3R_GO(2=+y<4|3VmMV5Z+esViWT!$*&4zp{QO`4 zoJi)3vln~H!V^fA8D9eVj1|f4Vg3!fXc3OE8!7n4S?r=JCA)#a=yhGNVC#ZhM{k|` z&8IwnTDyvoMud1-5z#Y0-e|PQjnz>8jT}tg2OW_NushGR7jr(Zu})<9(9L9@Uqoo6 zA{mHyWwgngo zo40VV@lRf0!tltV;#+-bNKuj6zct1FEkYdiB7(nu=uJsp)HW{6$Tr(Zdz|R29ggfa z6aq9<8;wa$pBiXW!(=OsXA*Ny6C(hLOFeQ(+K|RDNRR)9;8G-mMbNM2>f!RnK3n!p1O>k z#Wp$l3R#KNO`8X2sI>gCtYXIobkQtg4V))Tjflv^_$g z18Oj2#;TM%Zm3H+bwCWPHN9zCUOABz9?X0aP005d(U~%V98XxYYkYb{lnIJS7-ktexsN_tlo!4MFo4Y>R6@ z?EJBXdbId2{`f+zxYmDVm69CRjLTu2vP|JYW7q6k&VAsRG9vc{4 zhcJ%zdWGJxEa&x;{vgj0Pe@DzprB01RP;ML=b<$#fbM7i1khbg6B?L`2x?#!m0L`Y0&q4@k_zH^kYX^IV!xePeh!M1!?O zXrOUH>h0-6T@~#S6A~=SVJh~5EGE2$9a$~{s*!WpauJ-)?tlw{!P-I`YO|yqMd-fu zL44G63~MKaqPC|)-%w;g3^JU7HH%1YQ@vV))$9M5{?4f)7YFSWxzvP?IH+xZ=0pnq zb)k|ZKohZ*x`-$t5h~x13NDnGipk= z9(i8}r4GE08g@S$nt7k)sc8f3_I_LM+kCa9y8B%|!R*1>CY*3%-~fmY3TBMpUPpE5 z#nxv72OU4DZ8kN*Rj6e1pn2;v!*bJwd5HPntxuFnaF8tR9cpz*{vE#G_3!J0LK|UE z{Jvoe;IcD7?9*)Ckjs%~j5A{)A9_ihB|BbtgT%DjHKMUxaIy}Smpru+SvM&ZtaBG# zr0ZeXOOl*05e(D;`$UIrpRoyJiQ*WWnGMFJkfyrAg;uyFB+DW^Lv{zj(L$NXsaU;! zw$W~wY>*)zWFLcjMG-I9&Z7JT_m)^~c@ZWNo|O6Bk9wYzR7-|Lae7!OtTQ4lKOjcI zM{TKrxCSee%W&)J1@ToQwbpcVY`f`jx@v23f7g|aO#-KK{Oc=5IWz6Z8EG6rL`da_ zjzVqdzP_&T{epw4lzU8M1?h|?57)p@7S}R+a0YsfY%<#GDSEBu{YX8NJFBOda$b!@ zNrS=6GTYyTZ?$EdSPJQLX-yx32;jZFqp_O{M;~gnaSjli0CE9_)pYQ4IHx9uW|yM! z%s*&Y>QIwC;_PieK))^s=-EaEbXi5@fkYFFY5g!dnGfPN?Tjxj6Nf?eS)BOjS%@$~sCvHdai}o(XwTS%l}vEDC8G5YwHI zSSp-A45FBBger;Y%8R_kVmb*%wIqMEQMW0)Tm?9D1sM10i1sUJPh^pILjg|}P1k;# zo7H}S#|E@tY7c3@N_+3xFB_4*;C)K-(+0J2lHhAw!>p-cJ& z$<*|ZXnBI(xa#fDSDg_>%9>cp?UJhoe>rYS$;nck6-v<3E^U2+AE0MyUaL@H*E$N; z_zg#w7@-~Q5=v`eMX^8nj=nLEh)MW!-Kda7kVNuBn>pw3YCIzv&`0YAl?y05u2tUb zTIJ9GRM09Vn`-a&1a zHI*7*+o?3JyU0`i%5&y8N7z4D`?GjIPkr;0E6Tq{0>?XQ>ca3Cz=+-U={WgF(yMks zF7KfM{IK$e>a-^q;L2}j8oteK7V`p z+sEI2{tobWLqh-tDVJ-8A$jc~6vX)tS|{@x`mC`JTF{HM3$H0jDZK2u% z)&6l=ZTnEQ*M@4+ZvL0D+P0x;w}xtSRQpF|wS}Q-uL;%I8Y9z7gxma3wIiWgmukON zR+}5Dc1x&+6{GmgvfAuWwVOjVDR}>|tkxZ>b~sd%iR3rRYMr5KH-&046he~Mo#t4$46I~c0TxX4!W2)D_hYD=NobyWM+vf9K@wHrdU z>#6oXmDSoq)eeMeIo19_S*pPr2RZw|~Ozg5UlzxAT7cZ@8WF+kegNtluhaK-X{oUvBM~vu5$HxSjFR z|A*UYzx@KYb{bN%_?O&Hdg&i=JK?wgH@DaNt&$I1=ePfY+w1-I54p|#_Mdax^IIL8 z(D&Q_i`%_^`v=_a^V|QE+x>ofiQ5CZjcNbeJp^u9z_Nm%ZW+>UfT+l%hS&%Ae}wZ1 z1p6P>6~OF5sw>d?6I}t-AL|O7{*A5x>0j##gvN`zFPDOZbD_A9k5kjaAS7!_Rtp_?Un+FU&Oc>pNTWIBw_9PD44f`O{FAV#-D+ zb?`poU#oZ@QG?`tB(|w0>lJC8lpDz;J z)u?Bz7unP70B`KQSiR)GU6i}F>#Zzu`X{Fa&haTk*h*h^5EUIx|J<4HG)oQFe33}v zo#pAD6p#!>*@3+8SSNP6Di-u-F9subd2yx-gGQdNe9UX*`3^MVMLHt8&|;Bumtz-7 zXN@iv*FS*m*e3*$b_%G=@{bnlWr(Oc`xEjmYJzp{aP9A7hW_uMCOUKMh5Fs~=XLK} z_&FD7srHL?_FQBKYrj+{RpTTQZ5YY*(fcqdA$wLf#zvDJneCRqkXY%m7_7rxTD06#;KBd7*GY9Y+hz*9c(v^zWvO~=}k zae-uJ1G7QFA}lm^((tf&lXcM+$SU(OFh@XhO6p2=-g1@Ux~Y~escdPm?1;)tHr&+w z5bnIVY?t-;2TN(mY@qFB1N5*#XY$Us<;X{d_|F5!I1=F{lVjovPJKg9GfYuKjT&>wO_{7t~R{#5~vBHE(V z>^8YNfmZ87L@E5n?Vf?(aBf}`elyo$byf8_jXccRz&l4y_I0SazEznl=*#oamrp=x zv}iwKWG*X^+h7R&>%#~|sqQozAJi?iN(sI0#c)usLtpz4o`@vWp|gAQYpNwn>i)IW z5;}KneqAgP)f2eEbf+YDH1343@76Fu`CIBw>g=`&dYE4ysHVlm+$p<&c6{Wynz9Ed zUoSm?_Wkq#uJ26`Ah>nW-T|wvcRXYg$e{dL4iEcGosdYgM~am)Ugl~3N9g0>+I){Q z%x#*l*Wjih$$`Y~vu$128y2$UC!GT!lsv0J(_7ksBVXqRL0sS*Twji28;R#PzK)_EyO0rnlhV6^!XrF-Ay|Fh=Mz24kYYm?kkE zPsZX6LV5^I%0Z92(Y1 z^X@KAQzR$xyw2)FJTMWJkL&uk<}LQiA}cRprYCwYJL>=Py87Did@>D-qbEK}DieA31JCmc0i3!3IR{iaUTObwECG18EQ%D0!4*yy# zMGTh;Y2f3?#k`NUq%$z^A2%%-|4I#^R*h+hQpF(*Hq>G_h85vXk+{oOxFeWFCu}qo z)xr>MioC$o3M+sk`wzHz9InC3>-#1H=ot-tF&HsMcG`*E$uGhp>OoZEKYh6g7~}-( zH$s@JSxZG3*TEpc9JBYbxxWZn!q2`4<|D?XKKX za^qNoawS=J9k&#KCwGs!2qruPZei;Kk8a89${`|rR4kH36f{PLCO>e0>XgSHNiM_> zKXn}K#fHWnA^vIBLEQUQS{Yhhz7>xoLX%ZNSd6GdJ3 zgn{+IGrMJFAyg4b)qwR@Lck(7`bxTrYXio^wMk&xJ<-)6fQ{MN8e#IS_Qd4W^h~Ea zTeGmH!Qq#oYJvdKY8t*K-eAC@3ovl*3_EP zl>zo&`N7i6i=P-x4YSpk1p^bZVvk%NNPiC%8(M=gdm}?FUCkas-FuUh#O6_$u;$CHaX!vu|>xJWtHOuW(g{uNCUel z%iv5M!zkC&bu6RCYlUSdLZ;6Jylb*&r7m#WSLg$GiU_l>=o@&W^$mFXWKZBlnV6Eq zp(tUZ>+BBxJneUIW^-&aH(Hbmf`^3Z4wbidp?BM}25!)7 z6ghXYqe^77Wh|6t&aSfndnQY}Vr9LyIm5ncb4JI6I4D-Su)8LHE_?}cflGK`+LTEI z&DcNW(?(d6Y$c{8`i2_W#I^Bej(s%*aVV^U6~uMEb6miv(4|d)xm*U`>rw1>IMI8A z;(^|e5Amcy^>zv@G74{c^pxx;Akz}abh{xF7?u?mSTK!~OSPKengm8${FjFC>9Pk2 zYj9j54+84GRJ~n!qf2ph#z5OZ$I{dVmCw7izS$ES60oF)^ry9-2h}lvWcpmMrI_){ zowOp3hb@*xrnNCqyW`H+-*t~PU!zD07G^YjNE)b3Y8sTYXK03|v&4FNs?rJXVqU^} zs0beu72&NauuAmSr#1p0+H>@FYBy=2LaojlE*~t*5iF35WdlpIcFncd$*E&h0$WR> z8lzw?3-UvZ<&m;o%&QT2{qSr&b6Bd830oy48yxM3>%V*TXn zYGPPf@k{lSui{3m{&ReVsl)F$t)Kb0>o-}x-tq%k8d&p-1tChn*EbIX&@JbkVwnRY=1^k#8+ zx2>=_yUyl|=Xx;9-j2?7myb^nUMCyS3v3+hA^Ec5(d=d8k+@Jv5fa{PkQe|05rei< z852^rhRTG7i2_hR8o?$w@2wHLnkTxq8ntTGZoTe$1y>G9 zI9G^P-Rk1aVg=P8Rjg|hZ>ICD!61em*vX(6#~}NW$QiXp$_@eCk=PBgG2?SeBmuZe zvNtMuyA)@Zd;%~Z=!Rh;VvF{5Efid|%tpy^(89kYcqjZzg14N!^)>MCR=m%`3`Y&FY_)szVVW{IaBV%lf=4Yfmht*_0cdp0g zL8zJ$=uP3B@$+NduQ9CSgsaZiTs{ilP(k4v0t)x~d&y*A^g)mWfF;$j2~1m_q$8}d zq|<&U(`ERS=`u7&1Gb%})j4qaLpWR+!r?H4rGqyf`m(LU!vm|(@RC&sOEvsNU)-cT zPzrj3>Wyt9HT4EiM2SFf)tWLj#Nu@HaiT zxYij`x1*X5z+ftUYTG#&*>;v$=cda?B=|!T7N+w?R{`+G8dqZy0b+I6OEK7)?I_tz zyv?3A;E~jgEpujN+tl(80=>Km>L-^{PcUUY=?REW-kpK zZA~O0so_bYjeX^6RudFQW1f|mfeS{jz1ZlsmWS7dCQ;)c|kTy1mxesIVkg#EV~ucp@l}96>?hB&Z1@c z`dw*{Y$Yq?k!XG_ZUQOXIE1mW?RSfEyIU))7|h3NkEGr#tgtV5pAalJY~v(fzO;NK zJP;x>#V>ELcSh`)N;NK)m(}h-s;ntCp8`M}3)tj90Z3gbW5bA-;XjM@*nHz27(GJMotDXw4O0Sp8nYPGTUaa_On_l z_G)aBbtW8NG3FvS11-wn2Ef8e)*O9_p+!3?S6pIZ>~w2N44LU}!b@==>m@o9~gvP3M5`)$Go%z_rNi$>pR0Vx=C3@--lInXt+DUmX)ISK`# zFEZ}vTBQb|CucQ|Av0?flqxDNf>I<%F4CCM^{lPIO_2wHM(@WGhg<3*5r=D^#Z>*| z6Fu(j3v=@0_vfR1Gf)m=0=3^|cRz5c{c2rsTB?0cGIChYT-0dr^+5c z$G+59F9pxl3O@>zdQjz9j|p#{2gZ5pypf^Ozc?cQxlv}_enKg!PIHn3ESj@%Dr|Ij z+O@)pY-O^RGUH0ao^=goKmfc#D~bp_5yTapVq2}R2FC;pswDO5fNa#x2J{5QH2}%Z zY?u*#E#;-01b`yXT_?|ri9Ejui4%E-?2W3kmP>-RE+j%-Dn{DyDQ}*!(Z1=`O{FO) zrLfeq3uaT-S1Mmicp^%lzOf#yIo5V&Ae%eAH=99?-6xO%TH7o0J=Ys#yBAgIy9pf# zu>{#}Vx+}Zo6CKRvgPx_PJ1CpeMVY1u0W(^A>U=B1-7kb`G^#9 zXoO<9)5w_P%D|A)0hZ&H>>ImLIW3R3=fV_6^wDY+_~} z9wD%lx`=H}1&IbiCfbb4+hj+uMshZAQ??uDlj+CAoGJ_}F|kCoD$K6J025P80$fdd zo^4?}R$mHg#RhrU7A!s^FJ~mWpu*cin+jHOtr-mAW*kW7ZX?>$5>IA@wga-_m82Ql zon{QniSS=j+CdK+3(SN0mYHIV=hlYY4WsS)XyZU_fUJg@4td~4rD0LYD-+YQu&O>2 zjW-fJlkrC5(prNWu3)^;TpKl%xyF||5DVlMV(U;FP>iG|i5E&wVtJc+f?YQkxvluw zf|>*c^SCptKNdU#q5?6(?vm*gBQIu75v$^&dAS_}IZ@u9hOjUzUX10z@nS4AU}94f zl`~P|*pNG2LR3X!+NE$u?^e>`DjGI|foPvGT=5@QrKA!NJtJYpJ1R}eXr+7EO#r-T zdX;sMJ}qUxq5Y2NS7dR6?-KWH%560S1c(l*zfvE?;a0bmS-L+90>Ku%lwHtwZ15GS zC27>bzN=QrY>9!lw7^*wq8R7ol2JpFku1!r?{W(xwK0h?YXMZn1U;{7L5!IXy_*kt zAI6(JNW>;d!GL_)f)-41%ktW%bD$ehYzL|Vp4;>Sjy5@$U zU5{3n;5YYcm=s{TaYK?kb0<^(R^wUK_JmENlyA6@auVwm>IA_HP0f9EH#WbLDH< z^QTN;wt*s1{Rm6r0_&psi3u6!+k{ycwZf6xFv`rA6|?T9#2}}6nhEKZ7mUq?C({Dg zmXPcvv<~`Y8<3+BIm$?z5{!_nBp4Y3xLC))2#Q2u0~tvXD}fRB4P%mIG#^-*kP6fh zd(%QnD5Rw${DEoc&<_S(+7&I0POZ2VV(lb)1-kxuw3Y=|&ZN}L`7P;+qRPhUvBB_o zW75zhjGuQk5MTv*e=y|ZscF+mN$;DkikW7WERS%L(nWN;9-@nA#3q^4w2G?LBNNf` z?q}qnd^Y$p*q4mL|4iP-!STu~6Yk;X||sDoVqI)uR5;jO|UD5>&NK5lJB;m35$4!O4LQzkdE{g2|-=X+Im* zwEh;3k)DJxRbKENY`DuNml6q-CK zIdHgAp$YsCwiY5Io8ll zy0ytxJDZxBAooVSQHD-KByAJ5k`gRp1tC73NVenMcj|s5nFpoEx(7XQGbQu5vGa~Z zva8Km8jsN2+r~CW=`oHht-}fO)ZCuVLlwSi4VphxJ*+nQ4sVjY4g5=vCUC>tb6THbJul_t=Zh$$2LdlF*b4z z!teUd@|w-9G9A|sHJ5kZv}SW}8QVKbk99FS49sq?bI;i3EO|^omQ|)=?@)95IW!xkC$oQ{Z3QncY?Ox2~d8gG5VeG z*zbs(4|fOC9osTO+1_-A_au~E8&d$iu1o=>!;+faTgc5)RC59mLNJ&l=!W3}J}_A0 z`r(2-!v*ws@Rc3I1q;Ik?DiUbg@i_f1q8ef79cCf0#pN!evQK^2c0lDKaPYBcd-JzhVI1nf?`ze}l7#t7aJ@1|1xD7&jZr%7w+uBjY9%3g%F zY}t!&rKMhm{-%6O)=Py^yL*lPhI~s3T33@O6o?;|%t)t_N~f3Eh5SY2``Sq-IOEIC zQqy4k+}=iF;HH!l2w-`yIEuxNQIkubGrTy@tA|Vjzf=A_J(JmAW27{Vv7Of#W82dh z*%0l-`Wi!|l7_9LuaxnGz9Fuw$M9KFz3~y1&;TcpDf+LHz(@zE@r*p|X^JdVzmmWR z*bXHynvAnHJfiYw)eVn`d@Lg)l80}_5qV-Cjfi8CkP4?6!xAEhG8c-<&= z%9Iz!x$!HXw-oFy6```ymQp*^n%N4XkFx(nbbp=hM?@b=m5?`}dyoX?Ig);4>Buk@ z+q!LRTa@a=z`?erI=joZDpFasxz~oYNp$xS0ByRi|sh$_;mjRNF zHDRz|q{d}X&cOtE5h#GbX=flU4UrZldqXOK`i&%iqco8gfarp1Nj}XbG?M(Sx{NFh zV3^oQ*_T5!2& z*9MTz6c_~%rCSdm%jZ`CkpSZ$(y1+p(gGr#*pi+Bkxq?`&!llTV2utk;DGWZmPBB$ z?nej;rD=Rg`58h0NAC^bs(sbi4+y}(?0^cX?VFy=5Jl}N1XrI{JKYS=Ou+lz*lDFS z4SOr`zFB5Hv_vnP9ySQC$Uc|j$hl#Dv3>Cza(BKe^J`y?s~1-eq7_nt8^AV=&$2qMI$o26 zOLnERY)0{!(!Wgjd<6%|q*fSC;K^X~mF3A{Z)EGF#Yeb4)i!R`vuuqehQvFTi=7qZ zd6hZ#FlGBSspf!K&66lpN@?3>S>X4%ACm=4jr>+fap+@hR|+jP???mt$2LHzaxD%v z&{9TUlLA{h|2f>D4Yy6d)J+ioya0w73#tmIsb@nH69W*V)}muru5d;Opfm)D7s4xd zl`{L5tA#g@cl#1FCEV%w?L-|YO{;}w$Lhus?poE%zSXXd6Yi|5j!NpPArNbI<6;Xl zyJQM=Ys^S-BZrZe>^zJ#(1oFqz8Z8vlTu;mAvFG`uf|Rvu}+Vtz@w06Vue%VC@`f7 zr>>CTRN89RvvgKqG%GHheC*PpG!64F%hFML&QT&kX&UL4O{fuxEm=BW{!VXV>7-5% zBwBw}AU#N;E??(}ye7sEt<07!IjXZ|@FuZk?vJyX%Gh$vykg0YNoj>G%Z>@^8CxD{ zASkOt4Vbc;*m7u~WXsLOmYWK&kWI9y6Ke4 zrN?j%1eqw99y=@8_sHX)nmatUIZBVQD`c>_iK=}sIsvL}-88l>N_9%pU|W-B+=GD+ zjkHne+M%({Q991_*hw}(;>=9?YbrNhxGT%#Ffr5{G53ua1V?-;8!)n%8tyVUrtwim(xHcOX8zf#?^6C*`7Wa(ZN5vn zXQ@X=J>N&uL z(u6h)P`Y^qF1AO++|~guCM6JLBnyGQBe-ayq9VQ(aA^xJZCs}dFfLHtT;=gv6_wT_ zvJASXN|L?O9U_aLSG_rrWfi$#Ga}0>a>0g0mK(vlQE7_O&50}ry}2RDn9_>K5+vi9 z&Z{f3ylV3FdJt@*jP43j?-j%y4vyNSo$Su!Iyka%&p{eEl%uo_zFKT+J~_a)%5yMC zNyf10(iUoL`Wn%$5l1(riQd8yT=yLEbAFXNy2ap2vbr{at{w{@O1B za247DxYF}mS@IlkFJ~d=-FqxO(fHBnd1(_)&oq(&()FrfDqOWPj{4R(J+-%^MB0ts zMJvwc;>T7IVKy8;wu%U|nfS3F!XWnYFCEcoBFtvu$CkzlSd>;IqF}CCPyE;oW1FM& zKkoRkJ!82BrCZN6n1HVUL%~Ml$F3R+AWF9$Kr67-EwiVMjUT&e?7E;djqg>9AKRZ! z%-L)(;6`PnU1KMc(lpptSBSjgX0eUNo9!42AWF9$KwFFLa8>sG$%N7_8S)sRdC2&8 zrN>(_|7jEFs$CsYfUa~`E3`TUvSRh#q^8TJR!z<75H@sfCT~ zn;{QZu-98j9tOqF61@iRhRo)4AX6m9m@P6@w|9Rm7E-!~NjiGu*`1NR`@OMkQCbP0 z4BA)A?9rnh`Kp6IAKM(I2_xpa7TscZX8kE zO_lQ$XQSeZ9}4dNYPWN2l$Grs%gQKCRB+3r>lK8@&D-KV{BuJB$`u?gtEWOWFHb<( zsNsF**jc6Yt6)|y%fpfeK47MNRR+%dZoQduymCBNezD{nBcWlGra6AK1L= zi_or0UTqJuLIC>mc#%;gc!UP#htkyPEh9I~k8et*#jq)P(@}p)3tJ9zqjym<*qrrv z|5!Fm=_Ym`?;G0|rJLJ*9702ftj87_x*6;7DzeaKb|0@I4*g}@eGG;)l#IEtVIP!s5PfA~vk#CvEE=BBe5x*OUK7ja?zA8iCdc@Zm zxueu^tTa0_Rx+V94fWNQW_NGg6JfELBk@g?rcQ5}G;7Lp1v!Hi&Mh31Aesx~8?tqz z?hl~XtI~aDcVp;fXMj}p0KxIYu3U-ph4PJ-n00w~2E3Fqu{D%3ku*VVr3tFH$lav< znF)QTtV@`Z&}%~CoT1!hAd@HXQ-iWXWuFf z9q|P<)DWeW*on}i*-mejhHe?#5T(buvqL?a>s&X~koN7y)JI`2(@>9WFVn(ML)(-_ zX#m*OhQcnUp@wW1)3%|8wkwCyiVcNO<)Mab3)ASVm05{M_7*Ih*Q7gA@rE)$5bnx1 z2J#qr*126});TZOK3qUnqnMX&g&G)L2WzmyZmb&VGdS;xM(29}3h=A$ay5P2=Rf~5&b zCf|WHAzN(`&`M+6S1Y|Npj+l=sXg~ z!U>TRmE#IUm5VWXGQoC?6Z(@aL7bqEhP0b7gknFNiDfLX9%+*MG62)cQMH&@nbjO8>_kW%R)>RxU48qa2gVlzv%98SR** zdiFZ3o4uZ3w2>XdZl#B?#v^jHV{L7Iz2M!JQ^qpWF=J*d9*O|8RjqM_tNGRImvSPP z8*5v8jWwJ$%IIc|t!=e6oC}h#58x~bIrSP&N^9g$Gi!>H#v0B<=NxMdCokFBRuhpu z7q;EFhI6#Gl?q(Uu@dy(LJZEkTqIl4whi=Dw_n z?6;~Q^?j3-KvQiJJ-#*cNQu&`jdtpqv@&e~@W+$^P+Aj_N1GVH$jVH#fwg!0B6_Ko zY$2Zd7+NvwtEPyH9pos#qn>Q2A`)@Ab57V_(V|0ayJoDyP_&gUHV+6z7GD@}3QM<4 z3i%K0&CAvXJGCc-eFpqf9q>uL`U&Oxeu!4L*~5Vv8|W!+`K#(1XV+Fe5#S$%AkIP>Vy%i)Z3Nsyt)pH$>#ghQz)!7n0K|b? zgwo;QgOBAlhvR*42-#GQy|}(B6_TtUjhnd&eJUGt%ejJMG&#U<1k5o^mcJwVAq_^b zZZO6az-0${OKh`V%%v-X1KAG%CVyjp27;_c{(Y2se}dbk>}+a#$}pDfL+K0BrK&>% z>42JA#s~ObvC%ev{A>d}-w>ZKXTX`_3=HdvGb-wz#u*j$PveZ{Sevve;kBMKE`0nW zXljzG=8TFTve0d|R&&Pk1ZQwR#u?lr%GYtm@|S@#tSc2WSU(y!W1L~R_5=I;OQ#Eb2#o&WxN;j93{M4a2B$DetFoTXn3!Kk}-fCC`b?N{%NqWvbyN>NBSl zrX^=|)&)8@v;6R=K=6Tu698Fq%wf8eJZc9=XXS3a`M$I|xp2`AWn6q$V3_Y&kx4Z; z#;Msd7^#9Y6}NKLlHRa_!v~TZgYp8Yq$V}Glz6>0ky+8@@hvAWD|)$#oRVYTlk(#n z@8g9|p!T9pzpS{Te)GRt;c`Xd_Tp1jS>xl+R%N4>HJarE$q{K3^I6`)&`pm!J7fn-+Z4xlh06$cT$_CGy(k7# zh#ty=wAt58&VS0y^(X z2bm}igXc~U=fz>XCJxg+Xg10)PdvexjD6))TFhvNxq0I=wDmlGNQ@_x1V(fXyyJ|D z`v&SxupqsXT2uu-k*rDZN>l+4Wd|c7YDPZ9%Ddo#WjPl0WDArWeZ8&7XwC46{QXK5 zGGJNM9+c^R|7Hwj-4m>zU)8+_E&@Gv-EJ``I@L0>rs9DvImB|&8 zoR057&bqo=Kv%u3VY__vM?RXkpXei;5pGThN}wz&ff`Y;> z5wS?n8wU)b#M^e3N$Bnzc8TOMs<2w50V<;J;Dm#p5rOj@qyff-Bof@!bE?fASYxzBxa}xKrDeA zbVA08|!`WB2kiw?Dgw9|->~{6OB{ z$PZHQZhjc`+=1)??*nboX{%1;V89!RX#?KBQ8RmzYo&o&<*!;S4oELfj(T=41`+B)N{7ii5r|u#mK-XNz>?@J?#r`p#ALbkE!3c5(SCAhK>FePk1g0t_ z*tJc8ZY2-W#3(vTsrJg@Q<&aN7J^@0KM5{IztvQ$P?UV<5OSZ|UveNU=uE%VUu>Y& z(q=XlT46)cX4lfAC98Dgy4!eDtTJv%bmn7?2#PbW=cLbc9gHuo)5U6G3p@YU$JJ!gAb@ zRfvQtE}>IMQfN^1%u@>*Ur;RCc}jK(P zRbvlu@O_-LLb#IWfYo3`=}OW%Ky|3|pgcsuONeHw1{;|!)+z`#&Lt!&HD&h=Ri=Aa zQCvj{Kd0?S=dfdTAi1qWtsa|d$1674j#s3ti3nTjpFk~b?mPE!C=1NiDBz>2AWnjn z@r#Xq88KJ@$c`PsU7$g_>(a(-68(9NSWbZP$hvlrT9IVL7v2)Wa2EOL!bd=8L8V4f z@X%VKW1_J26VVx51bW2a(j>Z%TtsP&c!a-mkxjoupem+eKn48~L^l0$-fnukRWIRJ zgOD2`hF2&+WFS+-?iJLE#!SS!L9~9pq~}Yc_m_3QJi5PG_czz~_;XgXX!cp~h5)Sa zCbLe)j9eIV4WVG!H3oT*t@ko|jZ*mW)(n;~N+Fj;tkCaTVkR5HGaWpHgi{0=z~hbb zC%Y5in=;0(&+imp+%cTpIh@-$oPS7n{N=jy5bw?(IrGrqIPY)YpWVpMcm0e4{>$Yj zzWd`+pUbO**AFG#VSZVT1ySKbCI-$8qM#Se4E-$AjXD2BU*cjhmdYhI{kTkUE|QNu zUmsI54STa2Cd*!lvMy+BVBuDqVUVz1RJgSjmr$`L0H>+wVr$X6zPt|v!$ZS`(7iMC z1LNeDaSpqoe<#=dJ9a{>7d~X5+&z#l@w31Lg!kt;4W3T{i$)aq89*+en4Y>(Cn{BE zDWS7&A%M&y!q|~8yYq}2hp?DU3yh{Qesps>FMHu^Zu0>S;*I|;H^X7>CaF8PPk;N7 z68FgnuT1tNfBunDe3I$FO*D~GzTSuHCs(|v;# zPcc^w>})OvfngS?qJ-CjRGwL|@+=M>w8KP>*~6)P;!_w&8#)gNe96-hWWZqrKax;=kQb^4CRogxtEwY_v8hjP@5xdZuaWl}(OaO{`T`z)iR z;vOt8#(2@(gY~JZZ#$4g?n&iB32?@7uus*^x(pVo#^PmNV*@M-q88R2avJ81?Hb*2 z7rAEUq`}O5WX#NGod6;1$={;xBx2^YB%TwSPQ=X)c}F2#OvKS%=7d05O{Q@^wBqVy z8dul&QoGL8R4|RBu>ds1@&PO~e`9}kitEVJ5*9U2w?!p{L?Y$-OHC4X!j0u43RWN1 zA{UAx;|rIrmj6DnKm+#6%aT)SUo}{KQ-oVREk7z3QDLaGd_tcKv#IX>gH`4fC~#Wg z@6?43Pb>UCtS}ORm0Z6+`#4k*P{hW=H0>Q5{1KveaA}#!{KoTNfD)RdsrhG++7I-= zXiWGr$)k=qx6xM#Xev}$1Ft6FMjf^>Me$>5nL1rsm%sdxk3t62Fd?vIgqUDhk6PLc znuDkFNdYa^1MpfTM#fdb`bI89%#A7s3bG*M044}?s=B#w!h{GfkT6A-m8vnAn>Zdx zRuPrK-3Ql%-}%XM3ONes@Ue*RgGMl4F!2|8IW2#oF07HBmcL|$BbFx_J<@wcghUb7 z6CsirBE*^}o$CJn0>=*_Qq1EiuaCbY^Q3(Dr=XYLO_Xubm`Pao#bgZ|d=_E@Iz+_V z$6JB0u)SX$^82yu=$&wXHka-EvBh*j#?e}K0me}!+-3Z@aDQstH2Q314q*X(s=9uG zOd~gY#`xf@QVV1n@ytvkj6V@ftp$bjvk0(*(K6EW4J@M%NTisDh8&e?K%M-1ikcsg zZGRTi$O4^9*@rSSJ_sYm7k-T|uT7ZCHbEE&E5RPT!h?v`Uhhxggvg+O+2e6v?iaCaIu(3*8> zWCO{E7aHn`Zz}-)W0RWU04;foApanOS7y@8dCa7X;-qLM9c-9MesFceO!9teYzRH` zG>p0J^eDd%{Xm6RwR_flylh zjiLS|E}+wLTK>J2JlZIEx1sa>qY@dWIJ+f!+E9v~z7UkU=H?Vy)7*X5T}|p?h3E*2 zg8!znZYtwRMLl`ne0QX+t2U#yHs(ZQx9_(}U8N={>WIsy5TQb;ro`7WDe>=5)5eU5 zJ}noqbo%) z$Ae3=gTT|KgCi5TRe>gF9#evp9^$ z=0a2h7Z{#<7#pAP+!1~}Ja@PX&%yA-=jIfjBbP++ITBzB)^^0)g<;>h$qe|zgy$5x z(?<$_EgK_MQoWkNS{8JHM2xykCihxRcX@>FaD2(@j3GKER5igrSB2a7;Iz}1yVe6Deq+P5KYZkzbPNA zFroI)yX~33PeF_L?@IE9GY`G{k;CF6tC3%7Qxxc!CZYW0kR1cA?IUN74IZYNwPL2)`%U|o=`f-+1LK`4Ziz3(3Touopm z=dKW|vnmF$F%J}zyKpOW5Q(TzD|I6k0v%DIG7cOQ7>UP*Ob{L!YQ~XaCTEVpm2CxG z+eU&HHQX>G62w0g2|k~}^D$u2m?{$F^4z+}?+070%w~&I%Lj)%+Pf10&VZN68XL~Y z!bmX9NU&jkK-7^A{uO}@$Rgx-Qep-ImTT)y@X}(`mf8Rb#Mi*%UA$&=rq}MOUh9_M zb9yad_V{W8DesujJDFBpK#nj&w1hYX+_OB_Xhurj-137l>D!+onc9&esz4r78Zt0M z5&mqwgX0y&r(RJxS87FqjC+xQswkN6vMw+(;;!`URmGfs4r-fRUEHQQWvS$)d+;CT zi&TykqqX_NJbAO8!5)H#Wx2p99l?Wtj9BCz5V{T7eF8nYg@1_v$i7=r9>q*~7Z#4^ zIdMxCVvC##Z+o{|rVl}y7od{YQJyvMhB?DXLmiV-bm_Fut}B#zq*+p}Hn7?6w)hMc z`n$7P`}lmNqB5jNRt}_8vhvd(T*Dwd>_{t5o@C}Hi|m|hV!u@$f2~e$HllLtKlZZ!kZ>A@tZ1+Z$Hdaw( z40B~Jq%L7y);gdV; z!g(LVf(n<51>Te)6=nMv*eYheFvwAf0J{!q>dJJGjdQh)Z`P&xtUl5NEE+#Bput(; z5A=7q=b_&tptz3D`C=C4Bq&{<2j=r_)m@Z@EVX5<k)7}HZA>zsOuW{EBzPch64eEt zeJ6QLG(g(M@Bb7XMhvJfo|Uw7bntH{+C5)`2fhsL(c=^8;A)ePe(|X+*QzlyA6dMI z^;o{xlY_H^tf+hRHt{?ebx)xAMo1-xF}eCLXq^3ez-M`O-%}z3)z}(;2|pwgk%4wDbAo zweI(Eo^y3C-_JTiy+g8Lc`#dk=}Y;2)_l8a$V$drLnAV%b~*pm&_%4{xYZ$(0=yz9 zs&cPe$w|$@NPMJmfmj8O^2Ove39}+HEg=l8?jO&jGj(dRlO)=^d`WrY#K!@g$P({b^R2r`Pf@zT1L$rS-EiEm9Q%W|p1vGKKSu%3a+85hSAo zsghos5Y%Q;@?~fX76;9RH|x6{^A0r`@(elS`$F2x1RL z!0D>nB}th6D~q_p&ki9?K#>~-$OT|rg?R}8x!R$lf3#o2Qa0E$!@Qf8_DfV)2%+eB z??>YV*;H!jb2Y$+7+8ESY1f|(me_{tLa$Vgge-C)TP@Fr?(6#ymAZ&Z(ev2o96g6f z7}ngBVa=@{mi!`ym5mJwf}lztl#;RPK~X!6YWe@f$j&<$a84ym^=&X1C0$M%Os>JO z=v6{H?S5zKil&k7B;A5QQSb(a+@Edb2Q8+gnwPJZ=sk(;YgS9jbj2H_HLYX^GM&f! z=rbSVOVOG#arS37+m$lhmhEbpEAo68S$T?A2d_=K|9n$+2?CVRPVg1MK!*H8W84C3 zwrInhrox7hNYq}UhiKLs!0v~+r0l4-md#VybV&s|i?H#K_ zLUh=@NIDHA47{Cz;4mKsaXcC+aAIP+U`r0QN&hxKfVh1+x$pkazn_sw^xoPh`@T`} z?UJg0ofHcZOp6Ow&Zg~l(w_2POJ%LuZuytIulD|&->zg;zx-^1FqY7uhyB6FvWQ!N z`lbAKgdnYd5d}5(V6mzE%>VX8Qf#KTTlkyAZ+LNb{Kf6%`##8vm+;aKs7NnT&0oCh zX8O#<=l*9F5q$3Zt^r%z{p4fZ{p1e6`Ge1Kv*6cX{L+__`^ukqx+4#wUw-gke*0>< z#~=OL|H^eoplum_8F-V0EJ-sAc!aCiS1FogxV7BzK)K`Fhuh3Wr6#%&wjLcW zh)-0xNXj5>>|tNiUk0xiw_yc>wFivO?zgYL26*M&@(ceR?q9-=BIx^e29;PH42Gdl zgi@RBbwrYh+;sgw_=EE2v%!n`XiFHF5q60~c}KWp8kAKk7;kqNgWXxG_({u@-%PPg$+n3WpUcf8g) zYNkR|@M(^OYyJUBT1|v_DLS+dT{@Mr8 zCetrHjR4OcC@;V7K{-=cY4u$&ms&sWeOIhbHH|kksGcB( zK|JF|!lGY*5RA+9K-YQM()9_}6$shjMV4DP^p1x4)dEEn=3nD`Fd0sm^d7ToLWXOP zKa^r>D9@sY^50=sG6=TnN_K@D)xpPcqMPqeG$OG8^Mx|L}6X-Nr|7?8m+Wr=hlQUSRKoeEQLLz4H;zA;# z;M~LncjG`nZ7~3<7%fS(D;ayuiph$F-V;^kN2SlvhHkMyN(XU1yT4z>vJk0JcTJE_J+NX!PMr#{Bx0ubrqyv$3ikKR~ z9U4Z(0SaU)VDRXPZER+1c+C*CM!l7Z7l91;od%M!g~{0J8!OMTkhFa4_n&a3l=%!K z6yU2&s$Uqw7nRC{y$4eh8pH84k1=D|pxcK6()7o@N?Uq?$H9Oi4eLhBEVFW}eKW7& z&&U}~<$;b$zZz``Dsu0KRXHzO5HryjJg8-zJ;AF7W6m4yjHk6|Mv@qSQC%>*-4@El zD@dg0Pr;VK$hJa@SD4W$F$Xk_)+FInWntD82ZpdCfS(9g4?GF$!ar!nh!vO=M}B-Z z>mF~(x<5;d$>-Ln4sD@Y+j}yL_U4EHW`!gPhO=H)YDI*m$8gL9TGDsoyF|GBDr2p= z10f^&uPdTr+V-f=hXfUgRJRp|&K0cSo>1j%^PUcOs(UKcn}Iji2srU+6^Zr&zOAN9 zynv6ZtY({0<73cWp0g+yRSZ6!It^6+%KbaRhBiWagUPGP_sim)>~9=0_~S z4y?**U%}?%??ULw)<&lBmt8aL8Ntq;tw>jR0=Jq_soW)cV(Y)!jM@UQlFLJd2(_qA zUfUOvdkD9PFqNe$PnG7GpObpj9G0(97oCyhsQK0M{R;GWqgnYDVN38B4#MKG;UC-0vghboKStI7yeLX*-FFaPH+07N)wS)K`-N5M60+~6a8I47;$J$`y@&xZ3y1Kc_aY@P> zb-z5iXRiiZbmbk+l?tV)a9jQbAjGl1I6s@itxC6O+pqFE$7914IqSDv052XmD`$w% z?n%DrDVw>jpQ)}F%Dui2P3E3YBxyI%t0yLsuF!pBB58ZnB48yEv`=ZOvEHoAFmj3- z%f0@LiOo#x$2&CAm_<6Jo>m>f3p$>(9^TA z5e*oTZySTh#8`F|*fH^qe{X-nEPP? zdO*@E^P4~@CO9?NmID=yFwIrb&9El&NSUT6MN7d@=Xk)$DY21%oY3wiQYk}RN(RRfr+5rH;Rpd7o!Gmjj|B)aeb163nlwkQQEr+uB}cQ-?cEKJdJt&&U!HM z6zS+b3D3yV!PjO7r~eTd?=X{UDZ6}_pJ9^vMbI*4=Suz_O_@N>o#~%?sZ=e{0_9k% zX1iK|BgMANaY-OgHrs&Owa{9Q7;_V5Lz==i1CqxUs0?}06%|X?iLGwL-R73X+!;4!Q zZDGSB4}5OXs~Qe0i$Y?v6$lzK?)&Jl@p*u0B!NsIPzJ|5@|Hki8zN>x-$+(gJL5dV zMna)`<`D?m7!xE2*aIE#%)Mv7RyF`Q#94++z zBD-)zpuyc3zw)FBQy5&^Zlm*@scf^BnDVtSzs$%cDX14%6^L&9K*u!94+tVgj|^ue zK4uLG2q9+fiM#VH?_!b&bGPoX2=d( zm9WOr5rJtf->0xdxA03=1d-JqP0Sd-^hu^$ycI2DAnGf{CmC)NmEm5rWag4;Patr6 zmGcI=$rr7+$>DZ)p&W*_+Ol$bf-++q+D-+$qtl3qxbdw^ zNLX9s3>XsZeO!SW{eiR5hPYA0WEnf>)$aacYMX+me^JALxeYQ!VM zLdSdtJBX42poT;N@2n!kk_R2z9Oo&v^~w-D3`)V$?ZVL3uvwJoL%{nptI_YwsPLV6 zZ8Wd)u_1$Cb*6W+uuT&<_OkVM@b6MaOzhg!omvHdfRsJBh8?wRNf~OjEtAa4cun;r zkeU&`IkL))@v0I84eAno%y?$Z7#4sN!oX+^UGbrPBWhvf7sD)kYKj_m@iv%lF$Hr< z>Cd>VBBzDZNE#%`qNY$99pPg{2!IE7eGwPkPgU69Qq|js_+b&54qe5?M=e%hhEg-9 zXsR)6NHYeBdkbKQbX5$R_K=Zh=!!iwZHM?X!{{l5kuGE{QKP-m{nJft>A)G1S-VOe zITtmcW*V_UH2Vn6S@nCet?-4yUp~=B?yT;#H3&bgLS$lDqj*k=waqd%UdF zD&u3grcShyXN6Z(k2cxEE>4zDi*t2DA}yYjuUNf~tDdGuUJ0EiHzhYiJF`4lLtooy z7Sze_&_Dse<2g-q#0EV4kgYOcl$2^FXGR0*gjAbxRYYP@RCU!1G%|HXeo*Mj;60BZ za37J70ReeAqX{pg8wdZahNg}H&@=)xVgLu&FkszqEX+c!(rx3Aw>l#7BOCybgI`lg z$}0xddeMnyl)_w%_1NYjuL4`lL<7&(sHO>pl+khIR z2&#za8$E8P3DM)c(Ic@@qsL1qMR8DiB9lJ)pI8EiHcHVCTxtj7sCj1jxx)XjWC05jLv0e4rOOh z*@8$8apI(x1Ro)!H{7BTO5_ma62Z^gIOmK2Ee4!WZ6r72oUO4thH;ZI+SOMb7H7^2 zAdE{}&JDMDXaTOxkab%amk6Gx3r7VewYtT%D&Cvst>y!tu$sL{AQ*{Pq_FjWPGAB@ zLbh@~03&UnHc;x_u$`BHz44jdM9eX6FjTQkQu7(H6b%cZeSp{P2)+qHhXp z$eN|V!)aJtDkQ!lLqlN+r%8+^ZLGUO1|$ZCUGvS_y2U8JKEs}^IfoN4=$I>&X=mU; zFi(?z@O5abOjR&9@Gz1tsgAf%di#+5+nA%7a~sJFRKK**XV)eJjCf=k=+;aCUn%W{ zFa~yf_TU*7px4Ufb=xJewlaet{*3n?^Pg+Y;wWqydXO%o4hjHY;d zxL||W0B#Kp+>%PIdIPW%UztN(*9+DA@YFih>mB1QWcTe}ZOK;7pmkqb)vWY_4Bvx> z=y1;m$Y!}3p!(%mg?!@Uvw`6Q#>%~E^4iA6gH$V9HXfPoqw(C74FHx+-e5k73YqxU z&v^kxj@?-8dU-GfTEej}O0zW#GzIO<5(j_>Vsqzh2YY<19W9-on`{R_$Of8GrE^w4 zxEHey=gWblyb6`TtAjZS#TMa&KiYr2#}=+JYlDHm4IB6ROW*)^ghTqtJ2=)Eq{ zayp6F@|onm!7m6UHrz1xh=S4ZRhW6i2kltTmBwKKQwY?cfHtt$C7c%Hn&z9BX$KRN z82`yEQ{pzfMA~*r)-eHklO2X9ZiTK;e*Y6|Nx9V?B0e-&>wqdsHO~;ZGP(j)>rcKA ziyIbYAbO3|p?XxR_H3SjLEAh52J&-x7K{5c6 z%wRF2NA|H12?r*c)FS_oZebfz1YfsHZ}w!nJ?KlbJs`&1k^pDheW!>sbCDCZPmVym zZ$x5$DlQ|?RFO~dIwa%56_dhr+@x^O+E~r&jwV|p=lJz1@ zOVk@=coFTfQ)2a&7)$dJcT>lj*MSdNJ+&h00IOp~>hq{2)p56n&q0+YHR_kSm!@sr zLxpu^`tqPS9k?{O0`3HY6P>~vIeGbZpazI zTSYds^C5UfGBi@9a84a)iLoN;KxI@#>kvHZ184w4qx!gSh#7!ZBbbSd#waGyT#scE z+4YF*!8(+SZX;UI!cD?aDI=3`Z_tiP8Jy?0G{*-#pc%xZFO@3DIj}2@00v2TrUg7U z6PG01a14Y2*>2cGt;$MB%Au(%OGHSt{hYzkUb{Z>g5A60o-fh183=3S?+15^r0z$sTOf{N`&=M!KVR3g|-AkjYg`*TrcL4G7SgM zmAW;pkwrLjjzx8_gjxp1^weM_)|Rcpz3dP^hnR>5I?^F z0Rbnh$4n2Tb4*M?_?WKIoRa!PZj(|!EJdLYZ}rd(Hc^Kfv3{E4>=SEpXMr;y^b`)Yg|TJ>t;i*?X1!5!2#}u2Z88GDVrA)E zg=CQg4Q>vbnkDp)X@aW6I%#GA+|Yv<(J>6w7^7!+@~o_uva%M%of3LB!90WFTZ~C8 z@S--ff-A|E;DLAz_f`yPWY$(PXSL&B8|n(1V-K`_OWi@+-374OH_WxWJ+Q3B5MD!Rz3BAvsa7`UbUX_BJ$DJY)Rd5B ziaE<}EoNL(?QbZPde4j}PawIM(CK;}UMa(7}Nr1RIKK)`A)t`J76?jvBQcHd+GutA1N)GGF{ zg#1)YTa!AKlr-@OtRq~;rKG$DSONx!@oVG$0pK2&l4H(LEhT}SNlEYlAf4bEQZgpx zqcTid{#oWbzBx?^TIF`xeWppv1Xz$&UR`f5_k(jYDv|Yu zhwXf^SAix^#I_nN*|)}EURttmjlpWz&9qvDdG;GXEVEaVyD1Yi?1*E&UKe@GB$PEd zY=0YvBcs&u1Vxl7PbXg@E~=oUy<}vjH$|ApUE^3=VI#HY{Egv;b(2BrCizFniRE?& zbGhGto12C_`h_P%Eq>4(WY4@n`F+2;HY(fdWsm=bzxPhgocBs$B0T86Au4i#LbfN5f^SzRlM_B&1My;C4 za1RR*CQ^FT-1uZ}^vOvr86@{}^vOyas*;`@`{ews=+MG-t(^apZ0wVl`d9{4$HZFL zV;N><0(w^-RX171UUiekSR<_=ZTRKl`% zK|GZYWXL%UMS`{|q-zrkEV{+Q8yK7>-@Qufh3cxffZBW=*t933wL%I2R16*Y#|I>D z3sGWJdu>7wSz}m@9H$CpL57QuK>%nr?O(?J>LWkZC-slwe7hvcl(sXMNrc|=GGC=( z@rD_tT0n*CSjPah{;$5rI7nHCRJ|YaeF@n-m!l+vtoT~h5uy_cE+SH2mKdS!OE14A z5r!%jG+b4jn~?QEHNK_;_Zk02_sbRB5_aaKi&s>wGf|;?hpVBL)gh9tQ4%C{lzX$+ z1wd_@CVZyUYyu#W6=W1qBh$dbHV;)B5h958F^J$(RQCpvrTYEQYCwdp_-m1pq234) zCr8cK0TEQQAQIzWP_Gk|sB{FIuEugX8&OnEncXlpe9XA9;WN6%@GUbvB|TkzGH^wa z=ETpdrlr2D6p>cr_klwSkv2-RhYSpnMFGQT@XrtN6?V%X`{EO};?ew*+~wV0{X*LB z;gt9JoAZ~AcvuajdFSlmgHl9KwrrYbBcb)>ESH2JVk7y9H+B27$-kn{2+rD$z= zP20@Oh5NmL@iABV-*$0fOUK z@&6|3{*_GqplEi~i&K=rhGxh)+vcUpmxFiyXI;{2FX+}< zy`OvySI?%s&uQK@lB;Yg5vqPpw#r|AVvT)}{IN~?t~ouK6w`Z(z@5YkUsD}=D4YMB zUK(V`#dhy4qT6L-FCB++ja}_@@TlUNXuDI0wpP*&qAkXVcD^RssNf^f3btz5iFU-; z=iz8zs;>zARCFueU5^p*?s|+U3Uomj!MDRIg-EdQ8W=IoGh669==kDCK?if_!q&y1 zqZQHd%}M}~06<`A#c@MaJe`}s5|(Pyfcbbz5m=W~x=vgG>xQ^^8p$=Hu(Sq#hbxyN zm~)aHA{CbmwndVRv`90n;j(B?dI3`E@>)pd`_fZPIGBip>YiphXh3EA$I8Ie0i2I% zQA;`VAj^-LczKN7qx5@LYj$6G-!OY!UvvJaOk5MUM52?8mjMd!?!9=F3fTSJ#jm>c zgH|x|g0XJc(l0$_a(Yj~nRf{3Y$;LRB0t#b!mV0;oH+W|_TJn?GMMj{ANip*_@Z25 zrs*3D8QvXjbmM(+JcJ!JBpe0d(k3K6(2AXi{P#4PpLW@;C!WDY-^GsTgKETe1IC^z z_m=8*RBjm(-e9x2Q#7|GY}bH?xiu$PenrtK|HOu*!F<*!OS0cvuNwt5Qit1k;_cVX z>WKxlRqlqaOO|~!c}x1)*z7s>1Ah!y_m5D;=kwLDO*I(pe1SVdepH+)#ER$BThb@F zB2hE>w0_(Bli$@Zqj-#*%m1Y7?bgNL$(6;*Cf}^(uh^f4qj;)E;aw;2=uA|*KQ*~} zx$Ez$8^6+^+Ea`Is@+=QX$v(0ZZ?~$sP<|3d(h7_IfYKOBJD`E?H8D8$sQKfnvJ1W z{~90kj^5!0Vb0WpcXFv?zm;sTrCEju!F&V4WP8dHVLpjWnMRmSBMuRWWsE}3Lzsr* zNSKew8!^Ikq7;2L2vZ9ly!CoiqEiS{hMc!wH>)Q`m`exb_GM6QQOkJco3u0Zg7T?4<`rEW~{REOHs`0X`&zX5(nr=HN`jqvN-!wXJH zRfkO=Tp)hWWfgv>3Lar`I)0_rz5Tk`8ow$Z7d%b;O7Iwd-%J(%8hudh9)XPGE-$Cx z7eQtC{dxU@-+!TBNL2X!SGqet*`qH>xnMjcMHc z8+7oAbb`ts{P7y(7Sg`JcG9JPHf~*h@?)4Y(iJ>zRzHQ5!Frk<#|pFtC`) zpYto6A`3hi+|n=oz4FE*}GFWHqjX*x^m4wCEa4(*`G;3sYCn= zaeBhzxlGHE_E7YN%xq!^l+=g}CC=)bTl-sk+Zs&Tn`F{z;eO4e3m3qo-3t-I0-ORj zF9?%P6~Y?VbS4%1di&3rNmr;sOga+6&z(uTkx8j?Iss2m%v2#P%B6xe$(RXJK^t8l zsgR5X0av6#eMTx>1#xTBpg&0?)m&&zBXbu(BfTb#sMAKaZhh1ZJVzQqioyw%=?-8v zR@4&L-g@1rv@nWVS-Rf-aKr?9b}=^OZB!x~()PqK>G!;BNVk!&AuHRF3wLZ|@3o!P zDPydfur&r8D~S<3c~+CLW?oSf3Y2-xDJJ7=G#RyCk6yDe%`U>DRm3X6!-f5%;x5}|Gl#@8sR+W}N*K{>psE#Q z6urb+CzSN>3t#ezCMuqyq}CC=sLSzFJ8 zx7B+c2lle-kU8ufo&dL7`Stl)pnfZlmE%*wH=$ z#0-vBMLQB%ZscUO1tOC=DgW8$)Mzi|4h^S~V=X7`H?p0(0fD6I-{DJQjmpm%e9`*^GWN-^#y92;A0oHz7t ztY6@L4ZHk7Bahx|L>6Se6h!{DCn6>xIVQLEcXi9Za{}5<6%?7(SmMM*oR&|IF0tAg zm`2{sBajtO($I}OhvY6fyhNV;T|Lrw&v*~Ms=6{+0Q;?gIktf*yX9wn5Fd4HeMRpj zwdjdy5Em(~}^>(Bl?}lr_ zZvI?zXV?|4uzxt6C)+s$Lt5f+Z1|FJ1&=5JEc)ClJr-UPuBlGRQ#Dlakg9k{SDbD* zINrNOJ=?9GF%j*^ze56&-QTEw*AX+CSVCviN%gyr(A4fbc1k2a{?ls`$=l%IZhv?0 zD%Da4aaweG*F)67>koyDqZF?g{7dsI$q`c41=3bY#-ndz^MVUBs4gT7Y}c`&*umNl zyN}WRmuN`G<6G2khX6))nIM3RP^hjM&ZiruDprAY+|^`g^~4OZE=_iJG*t69ooXsj zM|;F(E2(G%ygEW6)eJCv_%>T4xF`%}q{v5T@2p_Esi1{=n&`OLCj5PKLpN#(87?Na z){vgcilV(k{Tp=s0B%BuKRr?dNil7|XSmDuD7zu-Iz6x{Q?T*Ma#D+`;K6Io}?M_auU<&E*Tk*n6Yys)=MA29ZgX)YoU(K=R!MQ9}d z$>!xA3UKQ=W{^Ptl{L-0Cu5XIQeLb;AenCTK=!hNA*JYkT`c60)U#{ZM5^4%N+UC~ zZELL2Ey<}u@CBRQ^fa2?L}epsJ`df;P)K>Qp+ts$p87A+0aJ1oDBI$mh35Si&9nI7 zr^Y;sN1qyb7ALFgE#(c6D!I5V5^kOQ*g(UWAj6xi}{1l6FtbZpmSzg>}FnYW!@F| zhs|t&+y-})-|vpKBGA0};S@c*`-s`gYixUjV#QvNCf^kgm1S!rD(Bl$dV9C)?OhMC zA*JhW;qR;{2 zsXpGYr{lXm?vH(f0rjnhG&7p%;39H5}coN$Es;H;Xvz2*b*RG6nKMXQIP$M*w0IL!8D6P z;rA&P1x#mloyl1RC1sk}hbImF!*S_eUc@vMjk|z%>{eMd_^`J3JG8LX#L!j&7b(xe zOYGFF{Mq;8(9hzP%xmF+2jtOJRUD=ck(@(&nAPh&6)tPiwn&M}$0H?5&3GE=Uh&bn zOkRT;iOCq^6yn8YBh5u)uozdx9CbrBI(1AvsV#mg-$x^(Id8>z))cgIKqJw09Dqej z2X60c4yIbE4$v&rx6wrD{QkryN|7S#CQ3U7o1bk+mkI1m1n^+kYA_W9E**;sa6@e>zwU`w^Mje@;%8l%VDa5%!UnJXfgvzhejglQ_ zCXLi7P^k!a1L(*ScsA$&LGvs~w7-na90_=p#Cy46{aCmB3m^HF)yOyXHaADU;TSF= zd{d3#{H&)C&i5kUe5Cuclah6aU++PkEr9Q310rNIU;eV^@@&>JN#4T%#~mZ)aXH7$ zQZf@Rj~=~+fwWJW$VrmLV$tO7{fXD0{il0jr=3z8cGe#~)?$9eyk|2+e0~L`f^kD+ z9J)7R*+%fT(G@R@i3?Ag>qtF=KQs^TncTfa(%Ynvrb@MPVm{ra)rQt}`vrmPRkDvO z5Gtf(PT_XtHm1c@=+f<2@xZjr)|p=-A1_*jx7)cG3D5aNa|Eo9M$huAxiS#K8iK3h zsXT<2lwvC1k8{+e(K#MoKXLaa^SNMSM>{byN0(HvLq6KQ@b_RPbtZZG}pYV&qYf?Os)gnaoVT!m30it$9h=$e{eZJ`?sEHkt)ysSGA44ndr z;j*3K@~~4s)=3Y>@8TvRazgxFL@=H@CUugg!>T{wGWFX6?$FT%IH&e1!dcF#(*4#s zr;xF|1H7Mmbr$MJ3&b$`Zu#c2xt0Vlfo*r#HF#Y5;28qvY?c zgcOAO9nNzWCd!$YCBj5yQ2dd~po_tEMtC(B(!53T**(qMwMD;U#B=SFT*nkulwHK3( z^My4Do=uhDA?({F6uHITLq^35~fzc zDNw~W{&x7=4wn?0bA;l!Ucgx18f5Atc!}+9(FCxm5Q0M7^Or4Cw)n{=77?|ubClFB zIf^SKR>0!*vLwQ0DQ?!u@n;*MrOju6!te&0q1qX4I6d5?(9%x5s_t(Oov?|>(spcE z7Q1Z{fXLX8eZ?! z#Jekxs6L|B_v&9vuOHmDn{R{`2v_>lKD4)&a*)1{4UIIMHx2S!fIBU6d&1& zFrD#Z3<+YlmOuVq*2L+%==>H8Ax@uUr+~LrFDw?YP4^TfXDYrf`L1BEGwvmi>~2 zHz}%W6y%l4A^KaR8v*`YR&Ae)ug1Cc$mxBx+lDB_X#-~RuVGMW1L(-4%5~vVLq!LP zax;Hln%7Z4O)x%(Sl1$g*N(2OW}X$Ducyy<6C9N>T1}^u;WqBx zMF2O1mmWhL+z)uQ?KqA{1Xjn@qR@0yF1{S2WdAv&~G`-@xTXnO^E>6})+ZoR#qL6$G$ z68K-nPO-Oe$!3@@FPDq2q&COcE6S{RB`V}#IVj3XZOty4NsLS=W=-`P{mV3d{j2+n z;q}E~nL%^K>-kHT^I?KcTR70ExPzerX%^fUZ{X+YhgXX?!ox?(R`Cx2$encmO)Gh^ zdnFXR81G%c;vbd|6>nyEUkfbyW#ClS9mNc=>6Q-{|EPSR_`32Ni+@}`cD(o}<*DPv z-Q|4oPX(o~2SVQfguW37eG?G+W}x#eWv6%xO}&*SnU*e&hHb??G?DpQrrQ3jd2G6y z8#YDLf8_3JbCc%F69MPuqtQp@Xa3}gq~woHOg7$u1AH4tu|J$)PQq0F=OCRb*xBuI z9y_6r*YvxZJGIHhYI=`sL!aW)aeZK2T#(70J!KaNHqU@|!-w*dl#k}2%^*6@^xk7= zEVBnK#SXwWr}wm^-P^01k=VzEpXZ6U2zNTOnL<#&yJrH?U>SS@Mw={;sI z6+qKEnQEVE6eo96mpm$AXxc*SHRh&mq4j0fKU*Z@!=Lm=CrmdcnW}zQgI~)S{EI4c zsrscqHm>!vTC(9RpV;1LID8h@Bk8l|iK}j)`yXe$`MAxW<_D0V{H{?=Ogwp7ro}j*B zxVPC$J%PBcinTTRY96j~rpqM+RUv1-a3vt(DkLn z@-A#68I&0^zqlIczZe+n$?9;4hs7R*+EQt=Xm+%-VqTAmO2 z8@Sds*#?+dSuj?r6I~lJW64EBb}+A9v5L;7|AuTKPtpvQyjqq(MGBl6i)IE%H7*7G zaFu1L@)JksXx*v(QnRpgy!7(b;a*DF1SPWXRBAvHvAQ4)OT7AGC{M=o4qNa7rqqk8 zN6ASN6zamh8WBbvG>n~J8fW0E zmvTnLhA^aKVHmz*b;$Lh{x)4dKFtIAK@Rd-aL=`tLw;MG$yzUe6{ZDZe`(i-PdE!!fSPZuWVILSQl-BLGWadVxyjjB^y{m~>U90I>{R%hL zBZ;Ji-S!HGSiB;<93mmz=bqwQ5iIuru(yS84R?Yk;+^9X1NvYW<`J=cD>uWv5)*fO zkB`u~S-ZRv82=NyBJOde$32qp#;_ObK0in`Z_@NEu}7id`XiW}@;BqRcc8!)!<9!s zNXFsyMaKJgt`^JTdg$uPVv)LW>UJV0IBAK_{-f1mU##1P;0kS@q%K=4$2Q(-z>4m#uh=F|RT zia)P&M`piMyeDqfLK;9Pq>Fscnp`jh#0J%V=#XG>!JLRB!E7-G_=VkcDPoo)p zb+n{k9=6%3<;&q)?H5cc>H3~SeS)}DJa{n%e1iV%NbzPECU$3PIKxdhFTu`MHx-@n ziqbXsfmU>fp+yEk_d>O@I1kO-LNm8Gk%8{NCT_b0udYIoNT}6A{q4FQ&+-hr--8y~ zg%;W_Ez}N2ZtHKi>Q+UQZ{>@-9R?ah^HXk>UA%N@TGE~b2Twi zIkXvhP1;W7qWqbvQpqGXRrMzwTkb*-UtILvdJ%DIPqe8M{<)8B!@Sq4aNImDKO z;;T(I-(@89*6sC?G~86OL0SvSy(zp| zgbVrVc?TqKS|uP2|LLV%FYOKgSao0+*duIcz5-#X)rlIIs6|kqA`21TB!vUF+yq=; zhx^D}(Y3d2%?=N!;rjzWiF)$ZaG&-3+qfUzdkC#Wyytcl$ARzY`v;Z3(`EdFx` zUKS`nYN}VLUsxR;MTPRS*Q~~H6hb&c$=4bgNG3uKz74E()S}Ja`pix>4-AP zztVk8ndDdLzNSnP?sZ>NCaJc%uPJjA$k?}&PG4t3p(RccQl36k(g}yb#o@3CRsu&| zh6~S587UxnEd%E8W7z`wh$Elis*F0@HaydRN4Rw(Lq>#O)nnYtI-Q!^7^4PS-!n!H zw7zGI8fbmb7&XxPo-t~m@m|NM;1=%PNyo%_m^4RKaFilYu}=fWAh?}Ta{8<=r8o>j z=xQutK$$#kS?%!Ny+;iKZx8o}{bYtGkkP&R`8NL0?tS6Tw-b$q;_N_Z7uRpPy$=cB z)1OhrH$hrlDs<#JLE+-BA?6oe&k~ePY$5SIA4{m`CJ#K>T^8>k)yy;`By37i3IlDZ zAM!D!a!v8sj~E+=RnI6y|4AF_$F*S(yOvJ5%C++*@~|!D%(DT#rE)Rhdrr{U+9;qv=w$GlDMP6P;#^OSh|xJx?kp~DaWM;r-HJJff+gxeN~z$GhhgkOh+QaR z7wDRTF{R=>>tZoarXi?~!Xg(s4@b=j+Hvk{wGiKBK?tg1> z9B8i7V%V)c-OfkdR zR|#=g{csKj4^w-n^^v?+&+4Q)7l<8s{gfa!U$EpOG*X5Z)aqLnLTdQF4pQCL3XQ=d zf;}@E27Z1A46uxA0uezMy(W-Iv24`D=8|wv%a^PMZL1yUmNKmf)MoMZJ$|tEsE+p$ z4#SpmAn2riux(4i`Fvz6%LKQ`m=>0dVg12?87eK~#2%s(WO4|k7rR{nb;Q2M-3rF~ zzI&qYxb0K=&g9Wp-<2vq>U*+r-+3?Ynr~}bI8w_wcw!+Q8SP^W^?p6`gE(+rIHSl( z&QRzZ`j4Yf%f_`#D=zEIbsd*=!lkyXlh0E4$XDZPjvf>?R^#SEVPiFJt~H(Fk{YGK zLUeJNY9?p|YSGGQJG<3LzuFiEV%d`i;H7>GXY0bKnZl@GL%TAF6tIAW+QB)5w@C7Z87Uw3KXq*d)Rz>3o`Z*hZ6fGkiTie(O!Tn8^cAAG}gek{8852t) zm7Ql-0IzGW6PH(U$kI5=()tSriKji#Qe=i`>?q0hD$am6qq~M4cAC z0vS6xKu5jPA#ku!SJMI<2B%YYI`obZtu(dVa)X^ZR-NZz`|QisBc{t5QkQ>mQ+=vJ zAdcRSU(*Rf)SP4^nOW6jdLo`6)7&%ui?jJ6XB4H!c@vO{eE}dcQ$|<2U_{lQyuPv% zNhG{D=h2`5aCEwmOf*|QH_z|^Km`^`g(FE|AXc3;#9A+t$;~5%P$?*Sjj5%vB8d2= z0B&rJNh2z;lX_;#6UXmofiIK&{5$*LaCWD`6sbL{;6t_baL07Vup6h-;>OTJJK2ds zPqbpOv7N)$FCS1Ex5GiC6S~DBWV5KF=J?g|Si=DWv88IWoEbI8M$M40XI95&4-zBof(aOEC1AKL;Si12#cC3y5a`an)NL3LjC9ax+;4q&C5k+$@ASC4p`d0TPyBmAEK}!9sD77PT5c6l3SbsYwY8+ZRih zb|~4bh;LTmYV1MYwAfkK?4b@`vE-*0x_5@&;roaAPGwo-iWdQTEHG6EHRG{@OF)6}wB67a^tfcJ z6ahsq5vW@j{EJ*3BQLRGnnWl&o*)F}Y2byFoae*u0_0`2)2}5=YHVS?8gy9;{jdnR zO=C2)ossF(_JuO&@1bEITEghzPf!%NU0!+nP8z%{zQ_7>^T_&C(c+K`H>{~4nyuKO zR*b!D6{8bn>Qu!>b$Z(^AQc0l%+0FxYj{4-l>)K372+IyT4)3k_g% zq%Y>tI$&o8?2MtJ=2Q3l+GksAVmQ9w^{G0NzJ_&Rvi?1qR-G|e zVI1WZyaXuvN%nLFDDu;w&XFiTd}dRu;SqL`*Y zfBDf-F)bv&#EvrWq}T_9lBy1p_af?=tB>sTB0FAG-Bd3xYy?Ktrq~OQEPAl z(C|~$qkzco5|>m04NWEXm%|Y3DnDArD3C27ka+ybF%}Ss;(C(wQ$928 zCW(l>K#?8r5labVXcH`{)cztDuHVX^{`0k@{Of#hJ#!;3)b-lme9Vu7(uv>5ZQs`+ z79xTs3g8{RLHD)Ks56D=+OG@}Vm$$cZU?hy7@|&CGlCObJ#8eBHZkHW9SR4=~YYWU>(r{>WcKr+=Rq zot|Q2v%ym0$2P0qm^|GxSUYUjLD%aRKq$Ra56a_jAI`0sx>p}F*b?iT7wrw18jMOa z0@=Y@cFV5djQZi6+ZCKg3t;4Z>5XOIsgGU0#HdnPw%3M^$MO>`^~9Y=9X(`Zt#HJw zncij!Bz{<43p({vKO=+uP;CSwtf$z)2OD-UGEIV!{zpTY-1@q}i2f5*f%^TtOyOV5 zv#y)KBWf2Yq*Lq!;2|N7+kga~F#oZcsd}}RD6pXYujH1CrI~5e+4YjEd|b?n0&}#U zL|=zO(Ff<$54F=Sw&L;1?dKh~ASXZ~OtGC-iSG-3m565B>Fos73pYJ!lFktM@T8p{twXMelzF+u^MpKR%ItyF@&pv2;JOHu+&fA?k=(L1Y+3$w;(yT?ii< zt!Sef*fK`8z`gd0pA?KsB0-*e5poHt3PT zX&z11Z;{XpxuUhiK()l!NLDt>KNF?O_9P^3aSDMpT(n#FxAKTNl-OF*&|+f{v|*z$ zeZ0|8TnP>TupVxE{cs6nhW4G9wQ;zW%E8K&hmS#wmy5rUNcCN^T3rq5tGW8>N~~t2 zwNMtpg^Z?_F1CQdDwjJfDIp-~C6i8arV&K;>NhK3IFPn#Asv8(y~^)U@fm}!k*(s@ zEkw7T*rL&~XUoQOk$B8(6LG5sSrBGiEGwj-NV|ni#Og_5$r{nfh{go{lK7{-=n|Bv z_7vo$2EyDBiLZ{?X(8&(%I11stv#lwj+eWpFsq4RK&>gvWcu|+fkB1HfxlrK@_eEw zpX}#4`qNCMvz-Q&IVm*%9iuypRLiFMYtDB!jd{7;W~hUa}5cPpyGR8N|!(-lc575G9IR>9LW_V zQA6;U&WR3jV;F4<9<+%ije-XQ3my=U-UJPj4j{>mp0X%S5AABfgSLVPWGKvpIRy~V z`7oqUmG=Ax52fg>u=5~9T?@4y22!-8(lFO2W+WCw5uRBI?|DSI8If5FOng^~1cniz zZr;oYb(Xze-9xjQPN<&)90kkcy*N>Upz^p&%xC7!SI*@H>J|B4r3$IWHj5Z5q%IcM zjNZg&O%5K&pP3g<#O0){l#l+%M-$mNVsTn4`ifJX(CiADbrELoV+?RkpG+N-9kO_6 z^#rcTGjlNxqIo#=kYJyCJo3!2kBE=?AFQ6Xtf56&L+t!rq*z3l2l~S^=6b~;HX{Uj zu!(F~s4iNea<>!=!%P)&4EZ}rf_x=W(`r4xtsf|O1oNPLVZ5SB5N!GXz0pwmt0(f|!ENHu~skb+FN zYe;1botez%yVl<4p8MW?vLrhRJ>_~O-E;OiXa87x{a$PD-L5{ycjpt0R z!xE`k#e)6S51N@5X__H+17@UBYo`Uj8mS{aI z4uHqaD(myr8+l}Vz0v$v6D2<@vYl6?$s0vkmL4Q_t)FM}>SO=ui&?cHRwI&E!8)0-t)@inG?1RhGZ@w2Bl3=v*OK5diArTy&Bt@ zm)H^8;7buWI-%~pN*(cJr9CFI~%bso4U}~RIFXIBsEOh zp0bjr7KAdkHzLLhhGv?|SaE@=WERvQryh%GT-Vd-&bWQhI1b{J;riG>3kExuje+L( zLiRAuNFw_@mD5qAWI-mZaV4*K}Y(cf|lT`l&p&7NA~S z7NA}Rs27V)1NJ&iFXcz~Ig5dX_dLJkNS|p1k18g4#$Rq4v_C_HE!R zG3}f9A*6kWIwH@W=^ai4(34R`QYuW(FlsQW7%4Vtpm@|E-5wDFCFpY?h>STIM>6i7 zkTQgchTwIX>M?XWE7YOviF~1dqrc;|0tED=V~VQJ754!%bB5n$t{I}=m=(Z=|K&jd zM42W;4u8oH$-agQp1o1)>?Hb>f%Z6qg(=A#avuU-1osniXoW?T8q%RDDPGd`c!Bz& zvE4e@Wqq4z#tSmy1vU{LFE9=8I~6Y&hC;}|?te!@A%8iQPbeh(Jl=FNu~8Q=1#U8g z)qlut+nY4k%@m2g=tXvkCj_odqA!7Mf*ezkN=>mVF3)Znw5tD{vqTcaF?UTS<6YH* zmYQvUKYdjle;8bjijJt$sM+*PwOyItWPO}MOBwClXq!8WmD)roHQJ=3`moXF@`}B$ z8yCdR1r7DwA_w)|RC=aYZi0B^0Fwcd1{~oLKSpyH=|bS`Ko>-q=9b8-i*JOb*-7V2 z%*{RveQ^^C|E$)a<(-r`E-E}PQLDBx^JJ=@7i+sI``lo+Cuhf5c|6}~%N^#j!zJLw z@21etcM6~^sbldQ5!;qEmdiG{Nw?P%m08-VlwZOGB#TEapQ|*47%CBd8!RHjmEueR z>8}wU&2kcLWFYbW#=0JX;<7#Y4F-x9>pG;LSgf+ZRY-#&ubUJQ#mnnDefEPL<5433 z@SaScsP-H7vYh{d_HswFg7 zmBy&0FWh_Y)pvWRMvL0#NPH~4XNf)L6mxo?`9wEwJ<_E4GrtZQ(2z#&9R{zl1(|Ve z_?KuQMMN`p^{4+Bar_+YZPfKKRxx4d1PBw>jmbtSX~@n!&~Q8fq^oT!mR3i8Fc{|5 z;XK)(>t)qZs*s>WJku1b>u5!DVeCbTEXKk3^|&p)>@<40erzu(UE0fDcUF-%8p6$p zJ`%5JX-o@EIGjJW1xm-XfOn=X=TVO=Bld3cR3~qe_(^OM$AG`&8$8)dR)D{rmmI0o zsbE>lap0wKb0|PFBZR90L5CNc5q-NkT$oLq`!wLPovr32d)l=nY?_wAewIIEU;UCTI`S4VE# zAcmV_3YT<2-q!*K^;#IX+q9%YJyTm5;>W!>#@vk#hYX())m1_o{s95FzF)Cn)!+V& zmYilZWA$4$jG5g2sj2gtP>4+JE0MsEvCb~wJ$8aK;LQzkgP}5%y;5F{UZknMj@{;E zTUg3dh*Xse2l^M_H2N(a{z>}W`5F^L6ZL<2QOAeIvejPp?Qd9z{XIsc_dfa2#(PA$ zRQAh1)+i(5rLv#?X5(87D3yKfxWD(hoMfTBgi|c{gHF`BMZDz@F6KG8NDi(Te);C+ zcEho?h-0f>7K=`0RqXJMhfS|<@dC;t;5 z{Hj1`3!0RgBt-~l?3O!5V9PAiQbpT`McdS2IvJRJ)p3xH7}86S4phxpB4?(K@mrQZ$!T zQDhi$e2%zqp;TQ77<-vxQ3Z?wYn-cTy$%+koMctkIoj!l3!2q~eN`On<_#CDGf`tx zXw}-xu_#tU5dK80*lcZ62Q6OI#E2ggFSayCEy(tHJ%U+) zd~Erd z%C3`Nk80GG;x@5Wt~|X3HIz!P%%}Eb=-Q!mRVHpdbyapLFtp{dCLp6&q%RS!q9e5Y=YIf#bY8ws@0BA%EZ^HSJFj50G?y*XJ zXRg`{SLQ~G8DvP2O;gRn0EZRTNIdM5eZ6!>sgU+W(ae&G0~@(ftY&ZP!W)5{W^qTB zSzeV>FZ_Vg8Jp<-u?Nfp66d!vXJYJy_t`*cwR?BHbjaB>%qh#=f$>aH9a3ln%6ryVkLsic(e>aZ1LZe^wDm|4;#y6SRZ zL=LodPu2syB1S38sOvz|LI0dg+7}da(`R;(qQj&m6>XS+-~N?O2vAd=wT)! zG!6<{ktG2q0T6kYi*FYIm(>D5Q__<{$nR%PgZ zj5y?>MzGFRE@Ue^^WK!FW#k5o8wOA<8Ru#mm3%;cz{s)EA8<*L_+%|@hVb^jLESYJ z`^T|ZtHqy;tHHEC`*VNmH`SM)b0fEU8p~GJZuRVE;>E9j!Y^pp^Ff{kAuKUu*~OC= zeb?>IfMFN4=QFlC4JXD~olQ@CvO008H(+R!4mR+0ZFTb1Iar+>$YS--{gtgwS*<1R z9T}gpI@_Eikfz~`?aeF0%V}>W;4QZ|frAO;TBKO0V!M;Aq|A1w8Rv@r7U*qnEwwi- z#$hC`4-L&Js&P7o1So1?J`{vVS~6eoyjrPxY4#=uGBRPtFwfQAWE+W5gOh=oU`a}s zjgg{p2In0nYofd&kzLS;T>N`%a3+*kW^kU{lnEgi9wfHR;H1LuEk41>ooppdv85zM zT!s?bA@-NI?%JWitc3Rc?~tJCM&CRoAEv$i_#I47%>QfSNsEhsVw)Q|V#b=CxU*qQ=0JnTnE|xK=0plNtkPPL0T1H@ zr?o)uI7186_(evvF;3i46V&Fc=0u5KS^LW+gEXa)=`{+VsNqzi$jH7y?sVm7LC$`KpY>e4|+EA_iQ@Ut^iNe%dp8LAOe%}{M57MP*B1ar+&U4pr0sE6Yz)>2R9JF!Dy?X+jzTyr z7gkXyyhMYQNYP4$>MH@#R|2Hw*;{I`;)&kA#9*b!SYyLrrD&f$rdGhB z!OC094Av!K?U&DBeI-EZhQ})bQjl)Bz4}UkH0J%Mc>2ng>MH@#R|2H&lxoNpX@5nfQ;<@k ztUW4LO=O&mlXp_OBP%>u5d@9dLXQ5Q72sDJyV*lq<}+%T8s>y<*cnPqC!N_oiBBnyWCj6JE(F*D?r2%dBv9HzS0_$0Y34p_ILhnqd;b0CL^bN~`t#B0XgnWg z;>9qE8@4OHZgzam=25C={s7c1P5-|+f ziMNq6&0ZdazuAt9jnO!aMQ2>5@28&P<4tUe(G3&xosU0>N0aZn_4i$c&slB4_cQvQ z4cw+?sh@0VjifQM=@)^Vo&B;DIqUC>YKv%RGDXXj?!-OmCcZ_8xFPohG}66I@z(l% z9(Ftzd9%?vXRrC2hFuvst;%$XbR1`~0~5G1-^>ah#zT8CI}6!^KQE?UZCA6~ht7#P z-8WnsmRq_dbt9w40L9sdg>B4tSab5sU57Ph=By3ExGZxzAVw3w`zBtH)TE;_?DSA2 z=g#FfR9j zu5z>hrZGW>%FN|!s9*`RH4=2Htw(KG%1zs%-Et?(ytUW3dP?Ib8#to2HX4}G&T2Z& zy-xG8r#x2K4RU6nLWACD2=*>UrAdGwwOMJu>Bw- z(U_k@#KKm_9ev!I(;Ba&*jf8A_+h|qh<4F>6Jdm{HTKDw&4jUDK?f5}RqtU}V<0Ug z7Ek9#UgA1KBc>VBDO<_lV4dl*q9JA@{lR}Tz50<3Tj%Bv@8sWB+rowA<4>?LR%>fE z%DZ3corw&wBQ5u4A;QaAedw^Hp@WdOEPrQpTJ<}vrnyYJcZxaM4Z+R&&P5V)lTL5){khLOp#TY|rCDJ-eS$yA=6aJ*zX{##%j&PgxOU1YrfT9@RyV z>42!^Ami}Qa{w8eYeSywS){;Q4Kl4it$y=UC)nbvnqwA0{Ofwx(Q%vLLDA<#H?|qM zPU5RHzNv&Rc6s35*D2a?KW7ELP|*q=2WaB~z%GO@83H;Y?(C5U2xu{i4#8v$+b!`M z9{2ku1$>_AaysF`3piwSb!5t5#g+LfJNWw)=M;rbU^E<2W)i;~|R`pZGkZk#q zMg2@Ic^NyipV#l?&g|!6?;)k^U+TJNo%>lXD-fjraTN5)YBP!s7X#*WBip6UWsm*C zUTtG3mR+&H_0fOWt7a`5o7=^7%k>L?A0KV5u4X|lwOk?*qEyxlVWOm0$rA}$@4L1x z^CBO%)w?woxe8$;jIisB@C_=wnvZ#AOhe!XU(%tw1~V}Y&6&+bzuy&KWN#c)Kus0k zw#NHEPABJz1A{d>oQ7GY%f$@?KLm|;Ic{2OzSuiP4`FxQaO_;Lc`i6+wr5h`fLLh@ z*eXB384T<}GkFBg&o&~GSnTt&ipOFA$FI`(nX%u4+7*ZvFqk}Wdo zp*s$rA-~*vI%@0INU1uZwwV{9Hcqbiu2Gw9?dX(NL3BfE;|#17sEw(7DbzOI6NYit zrfI{5ibxutmr>>bxzP(z8w^>*rnz*nm2sYDm@-mB=8m9n_0h+fN->Ls#Vb$cd{*jQ z_$UCE9ocEZw0_KMCbKFIw?ucUIA{cffk~F^wy+Xjor4@+(hUyr(D=@v8*8;N<1Dy- z|3&a{3D<|oylhNg^9txjc>Xvn)HGVVFOB6-E#vr?Q}N%9aD4GPc5@MSFK7EEq(HpDwap4m2s=Y6sN~V zA*mvT>ExDunbPqNE z0mHH#)!ce4s^7H&>P!XyyA@EO7t{o~Ou+rA0J?-XER%4kJ${8I^!Ep3d$J=pHW@UI+zkev^i=6;Qo&4dc>!Qfm!E8?BD$7mmSo znJE}5t7mlO3215lLCUCn{(@G0TT}c`dOB-y*rmIWTk2JY^u_UF zu+HDdew_;I`>XTl0MJjyL>{T=Kt#U29 zIh4}~jrHCn4KB62bSitr@q9sZtmdf4XbKnLrDFJ0|1loT6?=6& z?FMk5xTa)xgtg)PhsyKuTdda*IrM4ns17cgHuVb4>PYqTU?u7XnWh zQuYnowfa+bTy8#X^OW75PWKqj(|BBHLqSv6jDt&s>)E-!)u&OlfOts2-8s8U>+8_$ zf}JKR^~btyG7t5WQVgnQZ**>w^;Vmm*g?-mW}V97UE%y&{b0!Ay3o15ECBR+JG5%r zHYDK|CL<<5;^+a;$rvQtVv8!-CK||IQ-V}zuk!Z*=i0=Ve2B`1kubZ0CH7+X;KO7? z8NrChf93URDqRQ+&{%3g;QSvKK}`Yn78Px%kJ;l>GsPay>AD>*seu5Iq*<~FWvp;A zY)DlPdBa9$_!j^&H#h#|??yQM@26Wh{J%}t8>`*UjW4X30hyDSls=xOy)l={8XP{P zvNPZZyQwnqW3U_K9702*SlQxWTjg(mQOI;L#QeIM>UZ#ZIBL!AkSgR91B@|8L~b%j zeD3Fp8^AchwOl(&(9H>4ELPMeC!26~M~Yf-SIQEe1+EDzjEJ9+z~?<1Xp$DFlIN*2 z?619ETjpTIU=3=L*N3&YV3;e*N8BqgM+EedTrp(nqK4F(JNAUoLDU~EN$onScolm=s>jfd-=B!J0w zUc9C#4dd5fw4E1HadLJG%%+^xkB;A7)4P<5xQz5mF8445?S$=%!WtA8{AK%lubsV2 z)5iFr)_L|$*sd8>k;cHd1)ax1wdLd1USoQ)eB9!Vdg44Hjav%MqQunnbx1dSpi;`G z528Q#zU!l8WIC&Xn>^k8u9)H2kj?IjeCe#}(MT7uV3|N38^E=bCxbW}uGIC;oe4 zCN~g`Y;4N@qL-T^@UM=)o8s@D`1{Q)UTloNyW?-8=I6f=qp(XWYrHeOq~nCC6R8sV zF<1%A=PU4tsCA|*M=p#!i6#qpB)(_SjwFE0=!D7GWNCLDu(n&R#Yux;f0Y&Mq=_E> z*H@?3q)wD`90jzk>XxsmX3E!AtINx(P|7s>J)T`rZ7Q#X*KM!PFLzWM%hy%?^7Sm+ ze?xUs`NrzOa%Xj*+*RFI?ymNhZ>sJtud1GTq})^8QC?j={Yd%d>bCOxpwYMRPe*qa zd#z76ndS{`oLDj^7J`$6>U4NBFPVT4uI!Uiw6DBIr(aB!`}lXw47FZ|esbGFd4L}c z;UK?{a@x>at9E%kL~#Q{x{*fThQj#v`B1K-%QpdrL)DL#Hv@pf3~@ihxrO0eTRmL9 zqdHdJTHRH?Q@y^enl9f3JZ=Xb?*<<4iLm&7VDSUM;k}Ig4#xgI#{Pqh{Z7Vy7h`|F z#{L1u{zLTOZvK6c-VjDAkI-^~o@-G&{ELp}fkp4qprsK*{qAg&>1*?zfdbI6yNT@v zPikNC!)}=83*(KccHH+MQf56_A$SD&zIus%&Iw0ERF&EaL7qnjV?8lPr^*_N$2dde zYR)!da6+rwm2fx?^5SSIiQAV=FrB5vzEoytCd{xCkMW~L?%;CuRoPUs z-|70xV85F=fEM&}+V21wK%V*@+wXMY8A%;}@gU`WM#^bSsE4+P>2qj;G9sL{s1M6;tMHBdiJJ!+_;NIE)IZbVRy_GO8ad~6q9TGMXo zl;a<(wqO<KsDah)`yw}Uh{V$YL+R+U7J^9l&kqnn(=B5vccgjC33ax z@jF?vyWVO}Ry5>vH=GfNq(OAc8DUtaLV6BSSZa&k$77Gx9hA^QKLw{B-+^MSY!Exs z(04xKOo5%!#sYhN?p4BuJyXUPs;Cds2R(x>OC>ddjT(62f^iYAq~#bsj@q9ZVP9&w z14B~dg8l`<6k!Movy_DxNs@BEgoe(}KHFU5;mXu}W_H>pOSlqTHlu{dug*$fp~ouJ zCCtvv2@IoE#9pA%* zX=?ngU5X#MC1E5hY>_=+Wqh76rY>t>joA(CInNg+-KmBTA#C$G5yX&!15RQ?v9(@S zUc}Q#gV-^9nXN5h^R;BBZ6XVRQ#@T3Lk_|jA8S2ANDo}LP_&*jj2%6}$V02LZ|cz| z%Wj~g0(~=T?CiA@#^#`*E!r_0Q`)6{7PbJ{n#XUEjOoR0Y>{xWP&Gr}LWRWdQO;T! zNT}IFI}P#d^0|fbVrFy=lcgsMgA1g(2F5I#)4Rib=Ve)iay44%Dzwts`MDCqxI7PF z4S045|1RQMdtawpB^V^DF&Qp#r`rbmt>#?gEcS}sy!c-zR<*Lcz^=SlZo7nSVYTeb zf}eUK=z3UXjE0|)Qnt5{iAbiN!36nG1QIFy28L=^5#9Kf=Ty)@H@>8-PV_Srqyox3 z9mCMAw;bKVYPmRbWCZ>LkVl@$4VK*{e$5Cjt_>-}33b2W<1?;K-?!GjJb&xLg~6ru z%)59rPf{mb9LF^D`OSo_^`I}UM;tK<@P~`SCGsR(63T@E*9UuRb$yJkUButTF#C(1 z3LCMh!+9icu9Z!FaTpxvt>xQG#NM{>{+grVV%Yx{SO!RNv7;_pm4;nj9ADAcq(z8| zH!%8o>>C90#9lWD*vWUf!Jr(wtuB_Agb;w^q;}QqhG__L+rj`(fc&7`A7P?jrBlwe zA?T|?ZdEJu(r(082Iu2Ellau8pCq>EGQ4KNf{A2bb;4^cpX*YtF0-q>;R>!VXZke3 znK+OzZTrHYqWsE)D4noFm*sjIp5*n|=}vf^l*88z?+J)ahS#V2R#-313t?V=uw5@~ zk1s%65-c;}4R&@rXDA@5q9Z*_wfEry1#08zeo315AWZs z`|opT+4KnK-VWw&4R2YXB~gft?A4OJ>%;lCSgyrZfG>~Fq&o>jkAgW&(o=?TNh;Au zQX60fSGNFgxYROT0DG`B>jHR%DYhx16UV8)scqX(8C;kEa$>B(~pPdNO=?v zbOZ?96OM)(AqwQ#C_`c9FAax}YM@*m<#MoLA>5|>!Fu7rTf+uMzyw?x-nJhX(WTT= zUdjkH;=%d1Sl6%9pwDOgofug-8s4!$wx@l}2{ZJ;6IMX@{W?`Myv@NB@lBbvfl4}7 z$)uE)qZkX`lwKa(6W+ynCG3tzMfl#1hD#4p&(YAmUL(@|5#D(l*)XEGI4C-GK;7@u zJaNDCIeu!Fzv1dF;vq%gXRqKYc4g()3Wtlp&%Gn%2(1rM&d+_Ryk?Re72i*>;Gs_+ z(DnITQ~if^z19f3JO+_>0)6@6SjXP5R!!gQ$a0?$UlV*xKR;ZP{D*6X^?+jmPwx*O zigmbu-akAnAVM~0~~0`K4CuHl8=8r!fDcCJfc>JL@( zJ=*c92uG9?Y>how-W?tchYt1%`tT!uu8AdxtGD4tRux%J1wc+S1?1KlULO%&^HGh| ziD4hn3=!;Kfnnd?VA$_AHoX;8cu!>5-|vW5j4*7_Rt)81DO0okjRT-QPL9zf1S;AKrgJ z_dhheN1ZERDF!W3!wjVM@&4qk-sH);d^kdo%H){-htLI|2GYcI114Zd2P5^2H zmUpTS=E)vGi+sflbRP_LyTG!sTH9Po_8vbzL2MfX3oK2e87BId`WhzYyi_Fr%Lh77Pw|gC4gG zwr(;46aGxXsEueGiMfXgL<;piR3LU=--GlL1@V3c2yfj)Pv9bSgPJ)`N2mTW^^@Tm z0DKMc8N_D?4!w`J#&w@@-oPlP)cvjY(Ow$@e2li#XOk?q3^w3_hz%F&xO!jTkCLyX z8_(;GOR8~ScU(u&9$p9=Hqk}kDv@%x3ht%|pl#JC2#(;wh_@mti!i^se)dIL-UP5P?Z@a#Sg?XemAqHE4 z1YANJ;e$p4@+Hjc;L3eiqUX<4PZLg}o~r+2tVr;?BHn>ig^4GSO%llj3+AolOIMQU zMUTGa;gv{dq4;A}ym*e(+r z&A9&wbZVI{vQL)<0No~z<@GEii#V2#+QV{sTbx{K_k`9sa+F7bRB8TIF{1&E0#jHH zytB$^5bd~8l+`H>J_O-ardsDT8t;Bx2BoL2$Ff!hI3A@k1%wy*HATxTM$aQTuCx}s zP>&W62ESy330`t^;2G+Tcvoq)nF#R=FvYS@Hh=AidPWuKA=`!Fdn=d@qP$tqDdzHU zdnZ`aV4WE|Er3=Ygk@1#mDA)(G1RYQk1j4QCf}90HqF_~AucTvwnxH8TF#_dj%o5r=hkgZlh1V>)8tvpXWm+Bv3)GJ zDYBu>W-Lu!15~IwPG4R%0!Yqe=&P1TMc`?U>ZwjaBo>_6RD&J77NbZ&-+;d?3cf7( zEzjHIHn*x7E|-!!Yv5R!=XTaGv@)f3nqzC|b`l;p;zanf?%)+xdvI)h%=3iRy$o@p zVKDCH%kw0DKxa=OMRU_GQl6(~KdBp)@;q(ns@vm5r94kd=uZZEq^5i+HI2*j%oETB zIM3Rl3r+%Zs8z~$zOH;A(M-7eyq@bHnsMoS~{Ax7kvM2%JqFHt)l$4nka{Eguf ziwJ~^+@HM#7Ar3#Ojr3gk?Yn>(YguWrH+eK#}=zYoCmP+Iyf`L4=WxeM?=N3hn@9D2y7(wsVOYC1#56 z_F7spY2?%BENVV0W8Nv6;2J}7iZ#IPJDBap3DN^V_N(KEu%bB$P} zJk)LR0%Gsd<-y)gla$6Kfh?ddB?_Um_oLyMKh`URd9W-`48`lj^dJRI7L9Ry{|n_JZr z1-nAb{6wo&q|Ga~9~tCZl^;|vX7Z9uPYLSueiI zqyDmxe6D0mj*_!|KCJ=0W_jKmHxLHkyDBNRYOew5n@aFz9`S1-n04@Du@}c6J2H5Z zcV3a47#Nh?oczQTZ?2W%J>}*6G|H9SJ@$dpy5j>oB)(+Lc>EGOshE-ZLc=-*UXeZZ zX{xo?I>33VOFJ;-U1$@AuwdMzK5toeHcVL4vmNk#6x?vxf)MmZ;kb(^}X-mM2_LvzE!vQ&7>- zFhxv?GF$wuVzY87#bnXptW)l>HG`HA?Y>O`ycksGV7q}$ zj>Ic?o^oOgyqrv>jr#S#5lvZs{{!;%#K zra{MPAs?lhZlzXFgLM-ion@7gtTH7h`ZP#4VJR`w@-4z0krt>jt|_$PSFnd#PiWIQ z?$Phk^Jpx``ziX|qDKt3qePgFVoGLr`zF^CTyTlNv65`TW4m`4Ab!FDBJ{eXt^{qX49w34m3nrK?PC}huq6{m8J(Y^ zq%Vcjg~rYR`7;*lIPFS?fJe27nZgm{h`G{!O*TN*Z-Xq_SU2y05;r-C*|vF0?Bj`Tl0)__q2GaPFqKLHYG z2TwYn(gxOOnFYdN9M;Goz8q_mY0g33qMZa(7#)&9SYvW(IZ%D}>62rP&c#lzu7GMQ zBTa(s$_N9S9fL4Y0vp^K2t#x-A`DlKFyM4V7-I{~uD&?ZND%`m$Y*fwD7~0_axBul zA#vC+*+)_Lk+h*dc21pZ1*1Z$*el#&9!JE~U_#sm_%4@FBh+jP(=rLw zZAd7II)qf04o|y~GC^XJpwHGq%uJV|vtY)e8(kM9oHW#D>3~Tt6EW;?B4Pbi;&^oZAUn;O6z>q*pSG|#c^n5+YLnO>gnv?wVE2Aqxq2S{MrG=S4_ z;22M}{jpvuga8YJ=?nqY6`;CqU@>gl+D(c~LxR&&C{2f-8^MW69XeAZqFj95^Z|j7 zDV!QB%7M#Jl>741rYL7uG-LRzJJT;j;J-2D?_{Sf18ub%X(uzY(!9C6|89}k=%2=6 z3t9P{m5R?gu6ES$+p=s~kb}0P>CqIROF@Ow?LpH_dZ5OF#VS<;yBzI>OzDK=n}Wm{ zqY8lu?)Zhe`sq{w><$M9^mmOJ4qbGpHEdR6%$%%Yk^bm9CmaUPqaACEn3Y`kGFt?RDq=Tv+5Qo@k zta>V(7q6zn`OW4~_O`>O$dbf#3EFaJjV-=gWs|nnCaoRTYSN%7JQ0CCs4^5tc7=qb zCOkdH!Dr>fQX+eg{y^g9iHNvC zA68i(TqBKm60*Rl&T{m`^Vg}~=A*_WlTHz9{X}6#I!*(_8p#x>*9uRNjCHNf8PHar9FUT{1j)`DBH4M)DiV^B_^YEQvy2XcWXT!Y z6OviNv^^0P2;aG>Q43K8_JUgYpFu6c;bU;e=(@(8)1sas)_Kk{pPp%T9%-{%B8YXu z8RaN%Tz=G+2C{y& zD=k%Do&^j-+e-pDrOhMSDsI%N%^s+;ZI}&>9^}wSbXXh!YTt}$+3Z#)aK~bz&fWyH zC@HH>RnF~E8&Sde3w%pQFTQ?L|Cd-3W-np)TLVfPX+t`xUiFk6%5F4EY_sicCz}kn z9=o4)E>DNM7guJ%HVmE1E|HeBExS@OY+JTV0&GY27Ni$AYXLu~8sCEz<2st=0`OWAkTChQ zlcE`LoYa-Q+L*U|R>%Y=F-D{Yr^Q37%T>`%sXe5pkSeC?s|8tuC_%Tmmw zI!br75NmC2s03Fes|V9NqN}DhTemS)g?fuUBZ}=BSe*+sRc~NAn^rynDiijt?Y7xK z93J+A3|#z@VxMXYcYIUfG}mkDp=?_pV;%UFBRI7DGxSZR6tO7)?eMg^WXA1>H;$DViXcPLZMsiuiYMlRY5Af?g+N<^eKE0_0R?9Y74E zsj?#a07{P((G3_{DiV+vanIjD9ng*jfn-Wgt%y3B)#@$zr-#+5jytqU#ys40)c~MT z6BAW;O&{#7Ewe}SFa(HduAzdRH;_j(f(FZL1TOfzt3Gg%tDMhds7+L>Wir(O7jjDs zXpq7%12JRlE}5tqzmJqS(jC-!pQJ`l0_Qy{N+9V(i@^ zIgXi`$p$<%4K_2w*^M*Pt~Z%73X3xnG`GXrEAB_;hkK@|t}ISb@TqA`Q4NmBBtqnmcRDsy8HF>_ioBLOBPXQT?QqO$wUp!cVl5y!2Qp}f?PSY}8Bpys!x_ZoEK z*fxlzV1^y}Xh$A^1k!N~Ea`!IgU0~MG{^;!1$rW>NJ3VVlRdwZ(Q8+T&=yPt(>BeQ zUfho69xKhN-9yZm{V*hoOzU~|8B?UMuzKqW$P|^V$utu&*OQkio+hGr!jE1Hh>@38 zFmt}z$8)X3gRg%=o9AR+29H$P=YH&q!!l=>)i?eJfA7#)!0$NUrca~IpY)UX@=6GC0%9z2KUBbe+4q&1Gijb_u_OTq0n8x(9^ z1339uV^DZVRrb*zZwxAy{qiUMz1P_ZGcbK322vNY+Hb60nUB9<8thb;=u!KXY4=?B zlTZL+u%0woKoWFEDI;|)20V+s>CZ$vJXJ1<0Wrp_l;}qMMk80Zzwt)q3;U^+$%%ezI4|k`h^N67zYL<7Y-T_97_q3!Bfsu(=R56>P4w=_J!&{ z{fD3ar3smqrs0h1c}e zLNE*I%*QLOmWfr+k$am#6`6fXDLS;K4y<*5uFykn% zrl~D72ww)k969m2-_=MpMt2%C8YW@~#1trZI;D#lv;bFuzCQcR7c*0JB`ddr{bs+l zo;p4n+)q5nhiK;MdGc@_s@tMzG*ikrUihqS!ty6W{oZG8- z5NX|=EHC{0mrNSd36sS|^*jh!^#8eGRU!}Yi{8C}!-GyUJpSXg>e1YNC)H!DhERE3 zvaLlPZ&7`glnwnp$8W3u&m%8XZF*tQzRBuSi|zSG9_ruc^`iOthOt=2Xk4~{2EM01 zUU;k!Xvlgyl^^AwmR{maJc^4D!JuOZa?m3;{>m|n>-mXYx`a~79NB*ggIe<8iHAWInTONytRfsO zZ3`|T2+A2c-%&sLF829ejQG~EK_Azl_3;+zjm>-Y;t<%tCnYH!?%Wd=dqfju|GL&j-J1%9UG@dBSc-FHkeY>5cVgsMuj z+SCVt1aLJ_)raFLub#K1W_BUlKzzJ<6nL@6Y_`C5Zq{CVzI6yDTnIz_%k-TUaRVYt zeU^F1*Xg_X$hr3E&tp}x za-OHM*Q$zBNGx14Uf**a#ZEy@f8VjCkE9YIh%lYSXQgOEH>Q)+4{@EV6ECnt)7oG> z21J9J1~DFL4$q}fgK#3$GyxIX4q}^v8dMQHnzH&W|71LDmFQh}*)W~K8$t^!`~Q-l zXaBY2g7N5Zmk52?3V*v|szp`scCCU+J5}6p* zEA4rJ+aSjeiLii_p%1R&*@7Yd0_ z>t{7TIJ)$dA9t@=@a|At6DtlNxJ{)76pn%gsQaGytET;mrdxn%5_GAXBZF7%*uBx9 z_i0KIT&=lng|1S@iB2t04}@-Vz|e9OCSt$K0N^}X{Tl%QeuO0ekY_alAU|UOkg)!& zyvl1~XpYNypL2j9y2UmPI-R0A%82QcLZBzdO`C}c6=E7$^OF_c6dGCj<6weGopBUe z5sAd+4V|t-w=pC_`$3Ji5G&6j66x6zBvO&XaFX}z%Ioks&MEY(Of&gNIl)XyvVh{G zZMTD7u=&yFHmhm^w9#3HrJnMG_z^NIhe1d*$s{Kvswe3>VWhg8kVxM;647)45~=CB zIUkBOKy#uh>k~Tz`DXBjM53}L63O5~5m!H`yg^yZARt^G1A%NA1ZYA7*S=430h}QO zgyt}5nYLObZ-QCO4o^o~LLf#76B^XM7~KoAqW42TixN1TWd(%{4y2OkYWT8?d z{lSYuS;KUW#>lTwMb4JKMw0nrfrL6cwwB#2rkypPWK%pU+8Q`sLsJQr4f7 zF*{cvvn><1s9NHLoE9kJ`_>oyjp}&1_)5C?e7blpUhvH)!574rTEtlXq~`0lepb#X zDdjkk;7b&J#fpST+@MwQI3iW`hdi>KtUps%$~%h_yd&*{>*KmMbw5mVmjZ2H#czPns<2wTqZj)8v337o zwF6>}0fHR6m=+|R*Ydt(@GC8-3&+Q_S6UE5MeF5(YS;2a>o0p>sy%bQuhO7-NI~lE z?7V!({f7WmPg!R@bQhU=)1ePE2q1}j3yOGp94cl3`*Z_;_^%Avc5x}LHu|FT zXj6eY&hz3xVn&pOK_5MjbHa;<8;ROZ8sq-2{vu~KZ6w9~U%#0b%4A7zWL&2abPIPb#T#E1$PBea1Mx5;Eq#uk#D-ZXv>Y4K7#q2;YZ}vM6Qsz zZ6$u}**S>u+f4P{#|BIo|pbNb047d1@tg_HOP+;50d*bS6m3?0>{X7 zAOY$a?a6PRLpr%U4U~#wXe@z`0RZ>rz*G^DZ5fDwxh=;fN|cx*fR7i{Xa(`t0VcSa zH&Ya#O3ZL%s5GnY2#aZop=$(MVHy2nmd?*w$>F`CGu3ag0^S{J(kLnTN~2&-1sv2+ zzd?koReiNluv-Ps4GW0(WS7Z@55w-?Kg5pa6<o*hQth8GM6S{cI+fjYKb8ulh9%DGn6QNvtZ}I z4qTNUOAA&N*V^B$&7bynBY=8<20&oP&7g#7o6nY5U!2e36%I|M;@ZrjgPK2m*;Ft7 zWzt5(u~wQ|VMaZ#mXBzp5}k-+vB7|nP$5h{S+$RaiU0OVZLddVs_=TD=xVN3AKdf+ z^enGGtd3cGz#!}^*}&aV*D@bGOkY;=C|gW|+AX_buGr{4#Xd$a09p$_hj|#E73QK3 zkN#QZk|3~)68K%KvwGs;lUbD`9W?h$kYf4~Cgy}8m74@F#D={MNt1}!c*$y;l3-B+ z&?;;KxHqf~B|_pJ(mN7bhDus~!6dT-A+pryc@{Y#dM080fJ*E6Co@_Mjr}FN(QfqG zzzgRMd=BdHS1+3b++qh)CJu-_W;0^?Y9gsSqGT0NE-)kJSJt_h#z5#I~Nv>|t5 zpt2EAfJ6oO7}+Ktv}Rxe)C}Ja@C_I<#yXUx$jS$VS*s#x)B1r}61U`JmLW`qZ@fwu zbU(fyvt%FiZ{(Wb$t! z0EPN^AjBK>4ca*yUTTcMQRcYmc9P>X0fde5Amqq2{M}YQqj(J~o?BZpVMVZf0hAi3 z7L4uyYJ!0-e+l8$h?7%W3#UAu5t}b=5KXeNfkHV+PE2yzg za0Sz;S|1TqronRpX0|TIaGI~n*}6q|!4YdfNMd1Az%BP8QA##m6r$FLZ4KB_UhA!3 zQ#ndFyyJ3PXF;F)tU8EQdn%LZ! zUfZ(yi;+>5Lui8DpIhuLu3l$jGSiDdMhPIzmu)>`&2B5AlZGPNl{+sL;la^E0$AXb zzUlvbs|1m(!H~^-xnOa%jMSJtXwe}<9nF+$hQQ-~aL^ust5vvPX!KN-qvicZZndG% zVBxZwD!v6!GjOH|SVP~&Drr}%?;o_P?VOHS{W15gig>DL{`w{dRr@1o6(Eti!c0^j z&0P!1t3Uc5zXTO|T|BF3=ScqxOWHkMgKTj9vbV>G7IV)Eju-!-@CjQi&MH{Sh|o^n z2dv?@k0J>*IY!+Y>kA$>g6?GuTeKTJ)#9M`n%huXFwAEPZ|49|UbL3Y-sM$;l zPLJEi5WZTaaq)QMwA+BydA!9&6`w6C(>9?qte1bqK1+0%%Twvn-ui{237GNMeDqxW z$gzYy1yd!h>g(w;*2mk=tH|OM(zq@g9={Rsx{?BsYPio+gHD(LV-wqY=X=j4Z zX4;z-5lpHvbLBBhM_fK;N*j}%@Y3z)QM^3M4w9UU{CuoS=j2|AS)TPTp;=RTsk*mn=4AAZkvCVas*ym{Qk`c;R71qa; zRr?5U29&gsoIzQ;auZ?gq7`Z{C>!H&^PRZ!)6y|=Zys+Eqs0Py_W@cE*6)V?$QPa#%PojsVX*=^@r2SizLmH!DrsGO% zS(ZQ{v4z%mu(t-VfvkW=@(IplVvACF3uKK*3PJRUu?Y^HkrK8T^)HX2$_6rPV^ElX zNQvfv#Vu1Lfd+3Q)*JM3fvG5tRmB77CUT#sR+uU; zHYzd4X#|`08rP*D7R8&YskF>4p;dwhz&0I+DYX>uA*4;~ST?1UiaQuY;*>%-3^op1 zqSiYoP&7I?vJ1`lQQG*7p6Ir*vIO09e+Cs6rYH@;mdgbwOlb6F9I!?}We^8iGryyK zrxMK0_7@l%VG5>3Uy*#!C+Uq)4`?3jX}fJu4{pIWiZE46f)0dkH8GFeJ05>lsr!#~(;xaO29KzIyMVL&Txh5lFN~f{5&4Jjg1yKNN^{KCy z2mrE3nW|@$GKbLCTBQMVYLqzybqoe9nNte}_ z6Ur2gCvYX$ru*h_R{)xmO#ci#asDzqP zXG`(nXK|gVlNph#qvqfzTTtjuj!R@IF>8yLF|H&{%pfzjoqSfpcv5Rl|402OWS3{L zFYHGs{)FpJo;dQM*gHl5B=FB)odQoOsP2M5#~sO9Xp0J#eShBA?(|`-l=oy2HL75AOU(?1Nqi`de=jyz70ddfBbUXt-%z)$$V)f!?3I2CjDyC<+x0O!M6GF?E23{nmbQ$XavvoO za;;ofmSLF@M~+iZExUE?6Rku;LdyQtr{N!n7$V98900kHP0vq^f9@L#nM*GcZuE{! zLGiRcJ5W!Y-0^IFZ^`{M_;*I+&bB;b*afBk|0MUb0oOQkKO1npLhj4S|9e92=me)D zcZ>b`(qHKe-za=NvaiFHFb-!f`Y$^Z$uF$|4nhuNPMu zqJGL2WywxMd9WABhcx#eHW6?YKqtDuc~L2 z%&Qlqr}FN$)=9R7IjM}6Q>hXZHmcM*EW;^YKZWr@G-Q79#~ywB`HNM-b1fqCPqF_N zib;P{Nn!#Dh)h>|lwDVsV?0RpHGhp~4)Sg#HymYd>r}__3k{RJ6(sw*MdgS>DJb_1 z^~a-f&vVI*cI{i#g~pcRa#U-EbX7#2I33F;}`SlqmQ4+s<>-M+;E(?Jm^lAoq=21$`Ho) zqb>?)cKILmE2KWME0QHccr)>F>V>v3!tSW1Y>OA$(glFGZKc@L%e(n>Uj5Tg(am*y z&tvQ66ZYC@KcA+bPvoPW;}gBQtY?)iZnZRRmWi^6MgDVtm0!k!m)ASlzR?{fQv+MO zJoVK4Y}zn&wYEiUDW=8&^O#zM%x1%cWo%<{vR27Fj`GSt1=(Eo?>=oOGb=Ab`x*Ss zr#W~ClUvtcNY`ttIS`Fp40eAZteFY5;?$89ZtF=ROuLn$ygX~nTRP8sIBx=nk7yYT zLZPEij^~D-Q^HTbRF#KC77&8@irDW!+3u587Y-!)+`mOBUSz*nmKf3e-zuwGXfBpAT|0AFm*xfJ#VPWEzs5v;ri?sHTiaz$ zm?Lx%+GvR}ff38q=>cb3V%+j2#{Aq%@(oLjNs~FyTV<;RKq2J@DoCQV!Ul< z=8t#eO>3dj>?kE8l6tp+){y!q#F563dbe4HlR9-gp$X=fPK3VLD^f}eO-0$y@C!2r z6L@B%NUQaxG@s|G5CA+u9&IZ&J1ttDw^|NR24s9_mksX?0;EtEwr#1}qcL%%nA$94 z{(R1?bOGvM=7?{MFoV{DGnqAKS}I^(A%&CV6|yu^N~2qi?l7ay0t$J2^(m7=wNH~2 zrV^!nc6%5#F+H+c>(Zf`^Iuz3Vq~iHzQzV#gg8kLN9$X_c>3gCPqtA9QXK6)4tkyshD%b4x+BX)`hHAijf3v z#D47~Mzu-GSYs%wKAf=d{qnDkaqOBa@Q__sIw~)b&Xf=pAQMx5Az>((5hE2fT&WP3b z$1MTNa`L)be9E*iu=<#>5dd@;$fQ^W(^8eE!D=;UHTr-d&MH+{R3|J$&-eJ4 zVvmnsU(K$Rt%uK(D*e3cScZ)T0G!Xjr>RP3f~4pEG6>>)zn#z*sLct3Bextd-Mqo@ z2QqX8W)tLdNtO$DNQ{GWWW zsrzN2Uc#EV^xS-wv_9|II32wzTLD@ib z4jmE6q8T8)PvxaHEdbBa*m7b$^PSOBAwQ8|;Xs3DHZJMwCjsry0ysv=H_QUKFG%Q^ zT9p=gG7~&zg^RBNwOOf6fae}(@N-T;yyY{-9QS`S2XU0Dq#|E4H#uMIYTZZLFc|PC zK5C8VzFn;cDd8n=gZYkK7#9?#43tKa?g6Ir>ISJt7Tt*;&|H;53Yl<7}8v-LgnkCj?Z9%)c0 zr9Z}C948O!)yFkqeORj{0yd7Y?!cz7t{z7gHmK*efB=>q*4qHIJ4k<76-_npyk<7~y>!S;U^#IsA$3hD7lsLu%1I=c_KkGQLSM1? zG*Zk&^@5eu!~tflQulMMVquUl+c_ErKK6bdPB_a>Bql>W#o(wbxC1l<8IpN zg~_-5=(G#kBX8BnCT&p+I*Z=a>M3*?cyr=x^eo4OLo~q?*aZ%r0Af?W^8|~ng1O=e z(gaWgfZ;ffAf_q|*Scy!TO28?{+zyQeVCqBb5T9Xs%M(T+b9;I!!MZ>(=gDla0q|u zs!g-3$)Dig4F9xcvexMrXh7QOEazU&QrRZ%d;GJlL{E-Q=zxIWg@>jt;E| zm#b`K12p01gO-Y~H=MVK&3xT2(gBJ8Qa_|aIPOt)Fsm8@d*5Z=+p8P#FAH^-)J@zwStA{NneAm+eKju! zJUb3bUNWDTTjxKDyRctgT1}U)n*Z;(rh-=^Cg)5UEVs>HUB1R#iuaYToxilaEKHS` z)59x-Mg@W8hQ_0Df6Fu;#x0FUD?r`l376y=P>6S!-kP)>?&!`p7V6{FTuxrGxaTDqt`cHLbwI$pX-Y!N^J@Lr? z!M;u9q3Uy}R@FZd+u?Q}!`Dc|6{{w)yw&bZz|b!bJ&Cfg>SoebFV~tFmZQEkT(158 zN@S415M%=K;G1%}(ONMoIzODJGl=?mSc}FJj2$scBCzvQ z<$4SUly4W>qlR(^Jw?IZF@w<95q3N@cwKm1*m29I!H%2cUKEv;uNS#qQ@&w#^Gvu# z{P(7?UnhE|lyCQ`jT|_0lZzC9cWH-_usS^K4`?Fu)bs@)KFZ5r&l zwuh7oZ<9L5Q&qPs+-RyAEI{IJH(y`N^-Q=n99Sr?70AOuRJFG*l-IxtuOPFpx-vq( z+$TnLXlHR3Kl^qTcQF3{{FR^ikH7dUKl2PsL1vg(uWkNpAc6c@ZuFI0Lz@~L5;!9K z{ViT^g4(A3qM2|wygR%r+%Ddfhj$&^q>IA`d;55BJKGgf$Z!ztw>%Zz^YOus@ckTh zv@h&BzI zYkQli;ho_SfR|Qwi0eCm$om$`+qmSVchb9eFO=^Jw}iv{ds8|x9HGHSeA1?Whctcq zoE-f*X&_5t3%*P-@- z-mH?@1ho%fyi^^aMtY~eu@LSS)Tn%+ypxYV$jAKrP}mpYwvX!%9bE|bEtGe2$!kAE z{}vX?4~F-LJNMhUFA;8hBDn1n-1K=9ZhV)k&XE@!Zu@!&=ksc7?SI6sv@p0zvT+-(s{DPQND zhX3KM_=GenP1k+yU)%mhn%kp-VEV`K3fBAj$dSO&bYzxvd=-NtB zf~O`3&Pqn$IF*dpL&Ik)lQgDtXpxm0YVj=yq3;W?dFVDwA(KzT0_4Ho@Y;`s%Z`_O z1fJ?QanY1lH=x9PzM1de681ba*mFA*DFCuZg8}-@Vk7_;wP+6Qu*>Y2t;qOBmBmmZ zHfY>lE-S=}3PNS-qzPEQFXy%HVorMaO zbe1I?dIR*Tgz7sT)gLJh)rZJ#kaT=6cf%saAUjb85Pl8fbxqj4X|Ox`ZJ>^Bn0JA? z6VjMBfjTcDpsQfJ6M;~?0-Cvoa|t7*>xNGFMLa3h?=FNuG_37BH4T#2G!pbe9T|8Z z8j7DB7`6f|{Io>!1@`n84EzwVb~5p;e8Q!soXV(?X1WJaY2w?AEe+hw^UWv^vH}L# z5qTtXk>CQ#M<(G5-5&#ZyZPIR@D&_XDk5fX`v&%GZ7k43 zv($!K6M6)=_2OESOvo2it?)g$=&FAFH<4hMyXbl@$v0-kT>hZ-%5L9O!{=4Q4zD48 zSWU+doAR+8UvXna$S;k@^#Dg$X#==EOj-goNlQ0tW_P-rL#nvG72ike()$v*yeN?y z-+!aO{{~|xdxe$P=)VK-9yq0Y6BK*e7h2_^)?UgE!L-cX#xK%Chi|UDB^>}v~agl0C* zx(E)yB$&RN(>;cQ*}z5Y^lgGpULNL0^^ep3d2Ckv*+JvBanQg_cu{CDkq=|I(CY0N zlkc7{%JbJQzq zzO1G(*1%Xej(HE>gP~wf1#8gm6kCaCwQnq14ae6&tGg0f-33~`|EY*pc@wQ*JLzwT zR+v(>$(|zyYV@gP7Aqy z7>XC4)9+v(3IhvsmD&N@a}ia<-*`{&Mol)!2m)o25&Xy=<3|#Pp90F;>OYtG&%l35 zu#6@bwT4+@=5`VvO$jMtmnvI=7JG%-H<3QDMURqXx6=>%B#pw?;5I)={JaGh*YaAr zb-OWiE!brIphGykGlOfz!E>5J7H&TR8^66gY-;PRP?Px`_;8_`R3zyz%yPibK^#AT z^4Q?6kntxJ&6G8=&Isss>XKEe)Ah3(3Z=VUbBKx3t`apzkn{S4ANbdbZ z)&{I$U-giSsc@&P=ShWA;DM$(qdG(1p5pYw`#fPtrXjw3v0uj zrc*N;cMfM`pUnm@PsW#hHek;2y?PS%*(C7hM0(Q}LW_+@S=t`LeqRlHK4|F!V2@LU z-iS>Zo3rK4a_-3Capr&W2jTtl6}>ngv__60OD63**eiA2^v~ElQ7Tb?tB8;}x|N0X ztVBNKVBk9h9@`b7dTWb2CY;Du@QTpZ`P-c)oKo?dVMVj5Xdi4Af0*hsaK#!qP^u#u ziZyN-TjLhsjCMl5HVuGPU&}j()muMRJqc1a)=p!ro5zk7ciYk`fqY#hc8oe~5#!jV z>Q!^oPY8mr zWBbl#-}lA73o71sI;8WT@R3=+?nG79))uO@#Em8%a92af-yRN|=?Dvw=?Jq>yT*yo zl%%#K#H3V$e^=r{l7!5wK7+>?-=Rfo3=EcZFpS%!y&lup#5k0o64^>E782V@Y>4SJ zSisqq)hsk}-TeLHiXZUnTXg*nzeeens?8k0B$SQ^Lg=6E777IOa5Ec>$<2%&Ug$<1 zE{79iw3I7-j^;G_%nS+3wn`n`MT@3onT~}?M_?X)Mcx>bfT6XyOz9bRi*ji z?*p!LcpCL|si(7xq3k80YetY$_C4zvx(9og5Zu?o2Ibk#*us!W+Zg{6Hdr3m#+#Su zGqF$-Z*1#LRw8J>4Q;qdR*sUmS$R)w=F9CNZ01i0k2~^@+6Kj1qi^dG)GUbwo%#GB zc4%-2-9i|LQ(dZ$R7U|DfC9LN)~u^~y*Am+1nBDNCr&Vlxt_+m>Ov+`+oq|k`e=^M zV&R##3=!Z+vB7kvQnoo6SWfl8qXRsWPJGUA1rbQhdWx-V|3CKL1)D5)^2ELN<&j@lhUGO4fGOwr8ny3KoF2JL2W|p!E<^UFjiF5c*80eqoP42 zSOldAN($&Hh{uW`RZ*jsV-fUJMeR8U?Em|Fo_DRi_ROAi(zNRNe@^Gq?6uyt)_Zy0 z=l(qJ`;sXHaI>ju*bSo5_-6rl@t8)zFR*!pG!JE29n;ziFgTacK&>YLNhp&{grTeg z@~nyjZ`QFD1YMPz@I~-Eq!m2EB{y2{@|a3RH)VQ4kp-E0GzvnK88IQ-3BQY8SkSv< zr}&$k_qNr2V!dRv%J^nf4=Y>c5tJXY{}F9{oQCGbwG5bJf(F|#B(nM-OJ25@AXiNr zNS9`4GPstdhmq~g-vpQk0bH)quw#r@1M)Jz6Ks4l0G4l)C)UF7t1h5(7`O#>^-ris z9pnN)6IECG@L2U2)ten>WBOoK(4UnVz|uzd>QA*bGNm%(7>3m)1wqJz{#}AZ)3#iY z*n+rWkVyM4L83#d7lVXS8A{#-AnPD$NjbJMaNe`}j=@_MDDhI;yU&qJ+iCXa8iZDj#4F;od(6y=weN@sv&p#;D%1OSxM;qBT6qA37;b6VhMo5mPQ)aGOO zvoMDfd@D>grJ8(viO@vh6k)kgn}2z=-1H6X49uu4FA&QXd?#tmYz~TMA@yDXk|k@f zY3Re2gbqv7RmW&8v>NZ~Ln1l1WFiqi*;PVQ&Gd?autA*Xqrc?#&Ko_m02dMsV3=ovHXm~VU z?P97-8QllZ0?ceMywrwALAfuE;TNNlnS=BksPIw1rNM9)pa?^@2^6sn#!drDzN{oJ z)9SsZSL(IXC{t3=C|``AQA!8B=5?phTCa639L3_Z^g1AP*v@B|Ta3g`@VSPavv-+- zr)fan6JH?b+?0{D#7ki%0;?m317)&Rd0paDNtrSabR-o@OQa=g!N2MUU}>onpG*xt z(S+-hsor{1RCVg>iIJgz53?TXvC58)%NFqs2q#z%@>lI}=BqLy(Kxq_QaG1fU2O_3 z%hq0&Fy{K7fYcKgho)zeHT}k6WEY^ls&kQlnGs}$aHcV z$06!)L`t(VO{yd7Wrb|34j*M*ze01fQ$NYZ_X5U;P9`ZFJ>*h(F+@TGTwJfSfhHnTjgICjF#k82MHrTWu zk)GDE(mK<)#`Y_))oRk`rs2IkKoM)I{7=ksk1rO~kXalGv*Em0munrVi7=a$0z9RG zZ0Q8~b{qN=%pr_VA2N2Kji0By64IqnyayIMSJ&xmFI&md)eO~Bf&(Cd1p@7fD9Dux z82kK`%Y=X#Yt2kY&@=%AeyV|>6!5ol!9ZA(T8%;qF<<41tx;&*M+%SZJ|aThXA6&p zIE$2kX;sPh>^Za$_1$1z^O69o_)aZzqAor=@x#Yx4Mw`9a zlU+ih7dW7ReM4$_u;+j@Z#0b+RFcNZTm^--$LNJ! z+mnpnUQJsK^;en(kTcc9REH8z#jyAYGI2l%XaGm_1JKw(AiGdOt$60au{&S8Zg_H z%3Hny(U~kvOH4Kz$z-KNfR~t}&SU{QlevJ&j^$B`2%szCq%t0y$%6TT$)Y(0UJLzF zS}|GU1jbs;NbZQI3UQptl3MHq##RH94Tnh9m~6}IgBP_zdkxsFFcF$9S#1eh%S{m9 zRW8B;MvIbRy1mR0u)UBD&s(Go&wdZ=_@EPtEEirA8;G67jpoOu0ve@qh&@m@emqw3 zE_{1|RAB%=IV|8cGybH;kLe5|#Uf)y`kxMI>_1O$S6i^a5P4&PQ!?Sqn!>@5Bmg03>*U^mUfF=6C>79 zLEZ^XdrbAr%Ifxj zDLYUcfSh8}8D`2*I{qg8V|y?x&6I&$q#67-WXjTff2NtV@w1}yhO<_Zf;DjRU;gpm z95wlD!siigaH@VgEHxFT8MYbQH4ni$mRrdYTkyx~0X){c?b(fuOa^m(GnQENL_N~> zxw0Jy8x}dhpLkHBvc_ZlUDgHZqSeQ`>hJ;@gSu6-icQJJh%?O$mw`)6-w4#YsFTXV z&KaTm*e*d|!!@QoQ`t3LyaWXUCmny<+`)*8(n?Y*ITeupf!ggr!AnfGqwXUwNSV1|8LmAPlM@VMx(p=n*k7X=tu$DVg|H_T<5ry;f@qx+TOA-wga-3hrnMAG| zfDm>jQ4wdOjwG^|s4i#V=oIcS$f7winArX3iH;_kZM;DzLvg4htT@8Y?5@Lw2NR7v zm1r4ljyj#_B$}j$^L{W~*jQ7~sjI4gPr-Sa2~7~*#U{}1G~nJM=N+Ze%&ZA|;!Vi4Y(?yfL`Je2BmDLR z&DrMX+RN3O)4_|2o1=7Lb2zef7J=A8lLT_etMMIK`W>@JquWu;qw6*vF4Eif-~@pQ zuUG^}jxA$*C5I!+YuNupt-??FQ|Km~XJ`42^+eXfQ5UQ4NYg}Q{=%&CYs~yP(_)x(vS6Il9%+XMKx=s~RrvxKARY)Fl zU@VuSJSgfQx)A88HvooJY&|#oG(D_Nr?ag$FvS<%eE_dvgBw}g%B~zYvEiL(Gjt7w z7Y?oEbz(RK1yUyDK#Q7>H^ zM|W#624V$S8~%;EMB4%WRrIx3Ent2iGv2aM>eRbDs!37r<+24Sk>BUueL(t|L|pU0 zuvnF^eIQmt)$?&pvK}hW8C<#_&ALDzAzalmGoWs0CM4WXq8pmtrbFyXrC$29F&%yJ zL2%;n$J4zwX%m_rPD9lFg6W$mCIoIpR~8EIEM?9ou9P2ZsA}oxbrkSS5TT6t3T;o2 zVFR{{p~gYQD{-ngYcWJ84~(VhT@7epOVz#uiVj@}gHm7;2_#IZ9$jUtwW9298IGDwHa)>9qLeMXT3uT;ae=R@b zJ5pFs#{LhG9A+(!DbO}4nEhg{wEJWxy4kfy6>(Z83ieF&Lep{WEo2A)n~8RnYHw83 z_tnf=hl|H!=0Q@yc;Z?#!C+n3J#^ZJJ`oM>J;Z-8A={C=$f{lF)0rg}+}bAPOU zGXVwziD!G!pe@+zp%`YEkgABeDnWzG=A!6yUYnk?9XB-yt8m+nB+D?Vv($8tNK!HL zn_`vAqT<=%_x*3aKjKu<-m|00$N#;lKyno-*ydD#3s6*$ElC9zRx@8w!Fh|RV5Xvi zyiNtl&INR^fCy?7z{D&<|7bD#|MM{V|6Pglp#T3UuNR^}^SluK*Oq9~C<5k(xo;GP z_QN<2*7V!8R6SS>RNxqA7Vx}m*BU(w;Y7dl&bqQeD{_rE$-JM2{#!|ZUQ;$#++UU$Sy5b;i0|>~F*}{b z3C)gw<(msj@QD9f_0V%gedZYAt?8;rw6=3cgrcH80q<5xR}~=5V=g+Yi0pLLTulV= zV50RxBO^7~wXQA%s7`TEAwosbN4VX9>U>s=1dm5`HUGz>ZMJ?+?zGK~js=CxGCt!T zOD4crpv&$zjD$U`B&M>s_W<)mzYklnk3o(XHW0!|p&)T0$#XO|^-ce1#*PAND{1xE z2siUfv~m?+(H|!qqQomXE7j;$KG!KUC`=ZE4i&5;qak3PRVYbRzn2&a_xe#6gss@T zp)ash42Mu##=)DkBGZ7)hR2JHt8CXsJC(-zqt-(XtT2VvIYCA<2Gkt~=>W&$3>DEH z4!g2QU^&V(9Rg;C`&7c|KILO42h}Tm)a#w6DRp|#lq#tR2n>}77&NK^xb~n<6+nMg zjrx3^KI|@HS$r;oOp172Rm(@cCZmFYn>JFFQ=ykT4y#=C?nY-|&ZRBX=X?mxvEZyZ z*RWb{Bo0qJfPPvgo=p#zp7@v!Y2p#FTxsI9ud3OS@q%fO2XkSphiT_{rV4IC4jbBW zryV~*^@Zk`N=RfJDxwl%EoITDX&<1U=8kC})Tshysj9I)?TY3b#ejaoM7?X76OM96 zy*qMZd$na3>>C@}5|a;!B}Hbm(N+_~_40sGmMG`k&M=Ax)GEKaz8FTSof5#XHCg9M zqvZpwL& z$<_K6?FjJ@`~i`dacY*z4!%YHg;0jiL1mx7tgp&|fyxdXs+EOr|Nd>YZ(*o<@90n0 z-XrL#vU?8K%J8SC>@R<=_HAh6E${I6-kijk?K|s#d@}x*h+*aJG zPv-G9>iMw)I6wHL7~Ag^K5y?n9zV{4qlO;;3g3E-+kH(I6(0LFs}P$E#F&lw?ss+HTy zJp(rmSm2abaD*jm zIh(X5iaVzOAKzEl^|Cd04v_c|+XUkIXS+bW9WY@$3rZu#p3BIFQS3>1L$bMu6DgBQ zt_K7FxeE*j`rh(*Kd%Xbw^_F|JuvZa_RV1zBoMA zWBd0}r*(n-2w4+FPZK^u@T<-7&=O;gh2ay$s{N49qtV`dSt2~2pZ_TNBjyq%v(>B9 z2-MGx>K2Tl?k$2s7$H^7TOSjOxbCUHX(4ifGIx=)rjK9~)BFHeMBh1l$`0lQm|-3%^aNOU9?%gneV{pEAjQPAmM!O=HUu*TM~;x=xk4Ju`3;J zvfHk-my z8tw|6rBq$<4#<@{q62*89T)+TTKlvmsCoMqxvW6Z@b>Rp(7ppe?R!r;RZlbs*dZ833~_uC+$%{}@#Jt|QgPR7jEKNr zl>Jzo$DEI;5vp#oR7BNwqH2qzaBgbTc8isaS#;7HSCH7~Dd08@D`u3!ncAYJ4nKTO zU7{pgEXRVJjJ*2A&j|r4_oQQpzf^ndj;i+5*Zu^_p{X~VP1;vF&dexJAZX^Sv>AF( zwIFI5*#ep4R)1HpNV9GjRvR*enC%n#DC+IhsJFe30Xp@TFv1h1vnX48*bW~~k;38d zW(PJ+Fa7PvpzSu0u~!=5X!Hzu7-uMsH5SWUsX~ZjBfOD$(}g$!EqU*7eW75hpA+T8 zCv=$)Q&^uv>L>zyK4#BD?tO@D`8L}Yhb0Mg4@hD==J&PDLai!YW+zr1@9!bfq+@Tg zXlt}h3rmU=Wt@Na%2Nlb;7p_Dmbq!QT~f>d!!c_*W71BVM!t@IFyZ;gVv*wPMSPnJ z!`sM;U@d1#O{~$CTVA08t5-}MXlU$8hpuhLWu^fse=Em`SVg1}n4)LKBx4Y* zsG@$`6oAlAJ08}1N>zHq@+dW}TH!eo_Jj5;+X*DHr?qAZ(Ftq$QBE+*I<6*9|ddBMzF+$AiA`n%KFC72p2P22Rp!&C{QqVc#BA9x)%;&5*|jP zC4ZcDj7&>zJCcvhV%d2H20R{7oi(j#srP6W3#~78V_(5!V|devV1Ln}BHh)GH`@8= zFh0Jc1zZlSW~&;(UC+QSjt7kxv@287>jw9Ii0XljGjIgt@)cfnfqDfpog3F{S8fo4 z*Qn@tLyV-sTOqtI|3+a0G$R%_hmTCfw2LY?G$4uCh7Cw@%E5pxNKn8GVh#Kh(0(E} z1v9lYxR|A(s_o?wu#)%1s|G8y0KHFEDY_cXNce;7zV63dG!5{M@l;5n6(By65`1Wc zDibjXL)wNRmR1Jj&I7r$!F6#V>U1`Cz#FCr%4vwF6Cp=GODAoR%HoiZRn{Dl1~p`R zL|=v8>`7n|+OPzW=Qg9GNEgL?_(utA%sxd+Wum;n3V4@mDH1XTKS2alviZTWX46*i z22$`;Ums=0Plhqah@fmygmCk+ezRPDs;N)Fe5Ellvp`GNd-@*bgrl~P`wTU`ZLs-Y>91PSQSGH3kP=`(^)K1e4ThNQ9ro1U@kn25$`3M7#?W5$H+cPU# z`?GXk@nwawL=WT29*wNF+bH9$RNWFX&{B&)i8ZlA-7Tj8KHM5@E_(a-g*Lo; z?a#t!V8SAXPC2$f6?96pP#X~Hqwqa_f<{w?M=nS*g9?a=$3XaBtBCXi&MR16MOgj@ zi9tovi|W&gi{5hT)0pt!;!s93SsUwn`1*MnKCgo%D;AAl+B9fpsdHDy}fs%WYD8*;(&Jw_vitdq+c1d zZnW8F8+wpVBu9#@t?LyyCM7gMqu!aAA52dDS6x;eqDsh7RM|Ek3xmogoIaI8?@kF+ zT2bDie|AT}lFp0ZSa|d;wf7)neS7o|wUK zS)x(#&JWh!gF@BD7vEPa3(k;7-dig}8`paee6H4)Ft&Rhua!aNdhfAEYTt%FfA(J& zzjx0YYwv|`AN)Y=z0k%RzOVLPsPDa@jW1lD^jM%E&j35$1Q{AzI<;rrVHPp7;c$6V#kk{gBr&P6CY1iF^8?03C@=D@PxMR|F zlY;HbiG-%d>ZOPujh}1iTU+5h!{HLLRtU^Gb(m$v(E!dre zkq`~28kI@m@Zh*9afH&JoE9qR%EReFUo@z5<73IiF{hPq&7rD*pYRx!qwm5F+~8xw zfvQReF^zfMa+TWbs+^k3Ch845NCO6B8XyCKM&Na3QT+9rjxx2y**StJ3Gcf9#Qt2}|s8!Kij;Np}k`{sHb*^L`t`Jj7jE{4J-j)By6_i{qVq zIKDl)jGxx_==omF?j6w;TsbUe`3|RZ?{3WBl)Wi7_PJn7VSrFXGtvK?pY<3oY8|(K zQ{Hm@m*w>-#RX&(@ELpH3;64HL^_FTtGYyF(4Ejp@eJKVELD^*DNYMTRUpvk9vC4? zY(De@%#-2*K893?s5+|DT>C!bepZb?T$ojibnwsYL_;#DwkIDHcEe1e6MjRbJ$^Ma zs6#`cFy+f3(9t4brbpwf#a;m{_&&y&Hnm!g^5vqMvTX-3 zIUupZCG|#UPUrvg7TnwZlVAPN54T4_FR7w_-O;iMTGJM0l zF~LzJw1r2PEmZY86;pmSY>{P zE>-o0Dp*buuJARN)r#wd*<9}&RGXDBb2xMUp7_ zy}o#kGgO_4>C%jtUQ!UbON+h1zGdj2}siOG4 z*V+54%l9{TPPgoE;wavIs(HwhQ_vAEigr_qqWE%t;QTf~{fpq*#_xBDIB}0$;_AXb z5xYo>2P#0N#aFE4!CFb{qR3eP-`bM_{TeYeE{YzeA7NUf&xJnq&Lf4sc$;^w0g&`C# zKCTIX-G&JmSqqR)G+h5H>kLV&w)n_a)1}JE0{{F41#7HT{R~2TJt5ve-wSMxItK_Ttu!E_nCa@n*=pOZ0*ggloPo0xn$QIN0e{oD zImETD#2z_IS7lXtgO@+4#%V@*=2eq~O4Ve+suxb?KtO9n2nj^^yEY!_ubFM$-9N=P z^IDUgqU|+^Jd({X17B%r&HZp%TWX_?nag^0ISvnPYS&KEV#31Dw*0J>;)23bX(?!9 zOKK@n&`C(5F?1E}8C;9_C=x46ash3BQ^yqVngbQW3bsep3`W!;kJZpkc+aLS8;b!E!)Uo`Rj}5T@o=7x#u~vRHP8r;S}J%JC0R`qD$uq_+hC4ag>4;r>`Io~CR;@J|v;FWJ3fX&gMN zc{MsI_0+{AQ;v8s#ge<@aIJE8jAnOA|ACRN@?G!f1wE2$iuI^k0EAl3-zpXWtvVuV zG0NuQ>cjm+)Y8*T`{q0j24v?3Y55ko)UMJi)%zqMSO67G1f@Z02O5zj@kFkJR4SkO z*vb?k^(;pKV*}D4>({Rms$wS)@iJqfpI}+S()elR5b;dZ%TM8rmT(i&w*0wjE$w)A z%8sZ9x~);R=Xkan8xkwOc=R7WLM8&+h`pX1lWdGODxfR;B2-w!rz+4cVw2Jq0UalFOX} zFArRMGD*Kd6}b2^WJ%MYP6>FIh`(Yia)Nq3`Qssb@9&! zre2+(@IMIikh-H3T`nd4os=@c9yLWu%?R)XJvVnM=QTh0(i$A4iUpC*j9IQ42RO;St%>ljUU$mq*(jn{z1fhhJm>> z>QwVWmY3s35qMKT?;4JrLT;f^4eO-Q6iSS&@Vw-SwK|9S+;FEjkzq70R_(B`*@B@M z!&MoFAaDraV9$a@Dy0d~aW=V-04)|Mn6(d=PxnTIXojT^SDa}9?K8590+;2+9k%cm zVfkWLuFQtgHd5=ucplJbxSoZk-N+hja8Hh>*9N5Y?$}Y)R=rze6513i z`l*e7$CI6@Kh{=Xm^&t<5eHmpjjR;<778sYFlP;bZPK5l?Mgof-g37}DWAYmOc;ol zFsh_=SwgpVgfd=M-9tHYFje>XNTgbX`=nr#6wEXIv@nOX+Mqu!bEt{mwCY^hAK7@` zpLn=G+Hju79{E9?d8+KX+H-Xq<1e6o1(dr{#*TjxN>bO(OALQlT+ zkO4ekWWouvPmzYHmG?P(iXJn#Gyb`#;p8a6yr-L1++caQ4281I4As`$J zXRNoo*vz3Va|59Ar;QTL{n0dp3mQHM0m4l>!pY|`X$UtiOO=SNDk>3fk%6UQ*C^hG zU8DGx5Kg&KAY4VY6GFHNEwXonbDxLS&>6y^ZkGsG5t?GaVX$HFPc6ch~q{L z=a>OA3F+`cAC}oGp`6*T!nbB^gmTvnQ&AN{MGpGiJYjH^bGcLv(RjsnPf|6sgzTA= z_-dsZdjI5#UF#S%4YR z)|6oFX`I@5p0Vl@3#Z(l4oyU2sO}cvZ6SRq^9HTVVgg4EenJJ+D%YJ^NQfA-kjRZO zJjY@R77}p`Wt$CINa7u}NO!F35b4IOGA)VEU`XmeGtK$v9_jX(4z0%??N(XU%h5u3Bw}{Mw1GwMhs27A(dBpo0lsDZ-iiA7nNI( zUbE+uRh3_$ehg;S%H7r<%)J#7{S#E{iZ!!pinVNbOBr+<-WEt$KYAQwPb^5hA4jZh zFcaj%B9%4^B4vSZ)!e9+6mbD!OIS>lAT&e1OFz-+2SQ(u7TGW6k*mUV?sSZ_$by*Cwc^p&toE>#>_RH+Hp zRl{YbPPeNvK1%$CopOlyY``jLbT-O3Xj@Cx&OVYPY|M&(AF?A}`pp_^KGY~4{e%16 zO~qqV(+>J;s1{-nC4WA|;?INRq@Wn3gAOujUD%!gfeOgUFeqLpAP+#{1J;Z#2Jr%D5K!#A-fX_1X+`iFj@kFeY4~@(K*MXj zU$xm?M#C){e%(l@lM%20)(@ml6&ja-UQQE7Qvg_;7@4fFi6pFNRIwOqMvUaiG{Xk; z;0s~Ia?55hp%Q1GKIkE#XjU8g1*RkR<2hR@^Tjb?&^1Q%6b*WTRzGy2e+ki>VQog+?Jvhbc^;?%=a3@?BosIG}$xdFaYoqmCDaK`*kv-=<;}7meO22{dzo2U;{J#__I!~7`s?O7u5g7_Q{R5_cM_4r{MX1jXgv#F0W1Mr7>2yw3xa#-rYy}JO zsJ&aPd$rboa86N{DA17Ut*}8l64c$$%tcJ~2-U0Vo zal?^2`sA}@EA9|Cy9q8gX8*w88f?$On=3LdIK|ZKmw%8v8wHvsIRt_|;AM;w&exawhZn2d}3h$loer1+_MasapB}a5s1E+^!!O^3& z0!w}(`WD_ui>=!c-i!sWF#=4K4(xgld*TXv0qkKT@%5cOCyZ9r{;me5C3ODIV67Uu z{sNs}zbZS{lQC>)9t4$_GDuF+)`THR{)=!S7HJyd!{;xuNo1<%$#aLFAlypc&1P?FHklTK)?!+WbR}UtJ!sX85+?#W z)vhFoiln-OX*Gwn)E8-@rJ=KGz#G^fcIDSts82j(x=MIF0NLBFS^m-a!S<=%d~UFg zsscdbdljlgXR19ahPK-C^~JvD>435+OdJt>dZ+H4&=bOImgC}$oio>ap`NVkqsD3R zaDVkp_S_j;U#g#TJOT*w`s2U3FP`YN|YE&t%#tBM&>jG2Iy5~lW(Oc1doWCDRceR2-~y4ORzaZ|GbPvEbabP$4<9(*EE?rUjCOWp0d9Ja?e@ z?N8oMut`KYAi>^&IANzGGk-jziOiq8^Y0|E#gLx_4KDHw|3`5oTn(s4nI2EQ7Xe&A zl2q~!uF^ZAiPputVomUirI>YIJX!put7SdZva1|<0+%sl35sAcY_K2rJl-{-{{mfb zgu%{BLw+*?8Q)k%b}s3@v<&UgnU~hech|~yvqcYh9y+R|R0U`!yEk>d-V_7F60K1Q z(fEqCoU~1xxb$<;Z4}-YGmySCZ1X)>BlUxFT##!S_S`V;fvjp*H_*)T&6%ld~oKAE=Dhr0A=_dt8|<997_D%P>)J@+?40wAJGnDGOE}v@=_I zVA)lMx{FvO2NtATqX*J{TN36OH20vTUj7A6c6hc)XZARy{EuoSB`*Gct?Z3}-S`{6 zyb5WBJvJ#{slE9XtMB!Vfm9&C_AwJhu=wI{Qr|Y`jbH({{}jGNW)z>ds^zgS{uUR1 zq#V_>_I9a^&Z!MCv)?6P5 zaF~a^!+!kR*YPb2<=83E1_4YsXNK%nedqun zZF_qJ1~Je<*z(5b+_0pyKG-zCbdhGI3Mj&ghg!M-GwoGg>h(O+#@23qv@bShJ_UTPrwc|8|Hf&2q9BKrPY!=9VV26iR!)kg!Xtc zf+Z@*VklzeIs^#{+5{YiIIGT7t#MYSw&JYKz*+h1G};0~5MglEX0~=ask`h8zMZ^I z9#{_}-qA@X3q)npy^DiDyZY^{`R4{8wMhXkjUi=#7Z6HnWd z$0UZ)sxbgk?HFStdDQ&N8p*lFo>9WKC(4o#K)vnWukwL(c&rzGAJUe){5}@-qpQU*Zc8Vvd1-C4UViOAe8DTcs`_E+!*jIc-Um;4DkhP;Js;gN9RH% zk{CB;wM(h$(+}BMs1Ivggb^Q-xM$GCr??CYSP4c^Ksv5)+8!diC_&&=CB&X7ft9%m zVsOJva1=6;9wEIlW7EC|^$R@BNHKPne3l~VsQgQ3Wc*()1t;)J3XN7PIz2wyv@Q&5 zcMF;4MU$4q4ee}j5|LIS)Hf|kN{A1^%G}zftn!_TEY(%Y7Aq#hRI-q}nrflXhkQ-L zghD^E9+sqqeDry-L5XeN*6C6zFiii#YaJw!A297Htjo2h%A(^E}JuKHDNPu6U&ZcDi)@_ojnq5 ztBJwNn%bhj`X#w`wiM@C;TP1k`>o-3!69UT&5l?v)`j2E4J`Po`2H^<{(dUf(Pj0< zGjGIE)|eDT@t`FWJ%sLNBxx(U5g_mj_hYaKV48(CZT9HaM$W?a;ZMbG;G`Svdl8v^ z%^K1u*;)Q+Mn09`_Sk53?eS$`?SfS~#sjwbGO!KC12&XAfKn~oCUjWRzx83l6XSd$ z$;PZEa$(=pC0eM4)Ncz*0c9y!+u%R<5P>@=+9H;9B9w5Stt+LR7^(H09?_(BF|Y+v zbNzMN9rtYYVn0Aw$KOTjQXc>+r!z1=99>^G^@Vw8cXem{Yg|nHt>f#qzNS=b z4aFGS{1!bxI&fwXoq@EKyQqs_05|HxVBVEo#` zd-#3q#Pc*;w~R_gPBT3gs3!IlnGVaC@M&hRhcjJa1!DYZoCYOI1tn+oU4xVcZs=w- zZF!KUs|)t!um>F!15UDazQvNGqc_S3r1ef{vkYcl(;wz@LNl-FukM+7O@DchreioD zo*f(q?Pcf+rG5lwSQtUlkZt{r>*8AcAa!TM>bjFSm9*kH#dW)%Vv}6M=7vkx zs@s*AMIig@-tC~xx<+Na^==0&uvx@3ai)JRogO$(Z*{F{k%lBeZv6xigOWti_T(N3 z3t+^*dQvG#OuH#bjgnXTFUV+zVZbIN7mZhNy$d7VI1RbN{I#JWH0aA!s?=epA6Z)F)g{i)#L~xX(;V2_O?Z7!2)zUqJvZ zr;?FKK#zq4%{?xF&^-f`HjAw4wg%^`T;8R0Ab>yxAT>e&Ddh#XiL#SRG0U_YqPhU; zI{$KH1)wEfF!QCZFW;5?9*A6KO_+&gOWu?$TX0JrG&?b_nXS`-!9jT+BwaL#u7EYp z#l*bylCVbE7Uqu$vTE2Lf_GtkMsJ~qN!)*J+b)qh74k4M2f+J0 zn3rzp?8(WHJ=q?SJ=rwCl-ZMF2xZVgDFd41O3;<@ROcxYh+)=&$$(RoDK<)}T26{h zJR-$L=*yVOK_*2l&!%tc4MR_gTBeOdIEogkGGb&U3TuX`wM-|HPbkb##Su#jls7BR zS?OMr!@AeV?44>G@)7u4nV*)!!?IX4&rp?Mz>T+P*`XXzqNEI52EO*WON5_5KT&>N z*gu{yfVnRmkcYs4Re2B$NOmU=gQ1`9W;rO=`~*s+RKh`UBb07~(wzV`lk>FLe^BP! z5j$O0&Rtmb{*>k1$=A*_hMYULR4W!5vq9b$3yoSrTyTl{>cy38*eXVX{}v8n+(VJD z1oB2KTwpU@FH56Z@Ybu+cmY zrgP(aQt{v<+aMN=el8ZxgTQQ=1z4P?4~QUO%w;};eCg!CnEjxdv-NUT3t7a07>Wep zS%WZ%vqc8jg_-HIO5qKu0$*L4B}A>xjh-<`71(CFX;&^Q4ZFV2aHr zn6iZtsv3Uv1;t}J6^V?3b8=Ln>1aBa$J*sp=KM+hHs!jOam4)-CKlMpExAB7Kx^5? zD%w~}F4(AOV^f>zmEwY6OVg4IBo7C3P1s1{uY!+~3nU;N&P->sN-iMEV95ndB^PW) z86euYQE-rcq2vOyD696$0atCgcq+$Ti7Cef6PPtpjamxov;2}qMw-3w@+^UQnN?^k^ch<`?S1_EuV00d4WPKQuGYm?1V+{gKq z&)|y>q;t8FJl@Cenf$(o-?NG&Kds2}4g3;=VKZsqSW*n3uQRjF+aZ&)vW@!TYo`yx zb|c*E^w9B5;<|azS~dxR&Zu_{a*HL*GVN}eH5KYQ4bRU+cAAuR+Z2*acOqM-W@Cr@ z?B;YiS5PN>#Bz+mWA2Pk%utbpPe+7kTuXSuYH};9i=MKqrnL8`!<((*v6Q`^=+QH> z))4*9U@l0rD1OIIbCn)DO=F++a~|r{dp5;?;l;ef+D=ZA^@Z{lk?!b-N&!J8W=CWU ztoqMXFgD@-!N{VV=WzK6zZ_6!e`_{VVT93VeZK zXjD|0Pcz*!K_x#MFnDOe*3M?rS1~_Xc6K&xq`GlHs(t9ZBGWD0)JSw=MWP!6iEeZf z<;O{MMv=}yrBQaaM8pi#1MkYRtzo?VY$l9z3nMl*D{j6hpqRnbWRzGU)#-fic~W^+ zlFJ#{@rmO!MwOqIZ9tVLM@il@6!@0vYoX^3*lE;l>adiK4kaxkmr*yBH5en(B7U2#N=R&vNl(X!DWJun;Q(_L z0x1=EQ!a)>APZuJnue2$Gjr_lr3BPC^Y<#tXFlX{W>l1?BhC!xu{g7$>JOMb+h;*h zASsuiute0P0W$Fx@(1TZokkUBetB#d&YFgemyJ08;OYu!pm~1&)@!@j!PgUVOxGYjY7X~$m&xUxd zh;M@~t?enQPfT!AW(vYre5FfSX55lZnydFJ zfB3c*u}IYN38gPnjhwfniYb=$UDT8?7oCdCvvK~!Tl+CfF*;hC$4vq zQiFZDAGX4mU}SLQQaZpucjgMu?EoSRBH5)Jx=9zbEFHR~sk$(NT8pzTd{hsvmKy!Q zFD$8N9x9Y6K?!$a@OjetIUSi24P>DY5W}xM+Go8Q^}*bg@>z@6%x6uhhKhn{K5H8$ z&g#y(4p-*!;r8ANds05hBbUe&7OX8 zno>^`mXObKQc(?aKpR^jXTe8WvK7$aE@xk36GIP#}W9gQj3 zS}l1&fL$;Vq(?T%7$e0DG?P-)F^tef@ao#i#?fxxYHk%RZxlIRG6fi6EA{9FEX`P3 z^>)C7)BF=#OkzH|XMSY8<<1z#M%rdqtJSrWS>rFzI z_0oqYLZ}pM4_=u6psb8RSE6A^NvQE{*KR~a0J@&Q)kVncXa#lg21?udSsf%4&lN=;Cp zRc_Zu5SGe0JH{{EJC;V|?@+mgc1&+5wIqbDHYj%UNxmae!qg=Rrqvo3ZREJb_7!ci3e!tjELG;#zOyhY)rffh2X zpI9`oroULku%_R%rM1A;q_I?rOIM0Zcd$pSaS>bw^*v&R6Pogdk^lvg?~@)`!9ZHa zkba@3L6*0NtQ*-x{;W>B$4hO1#~SUTc)$-uudUvCpd|s$ww%m`X3=SyEWjvR%QXTY zI1@CJ9b!o12Yz*&mwz zpH2C?OwnH%|MomaW?xvYD1+@BEDE=hFIvf?z7oMoJdaVh-~_J1*(k$-MlX(v0y(0< zh!V`QC>$ztuEyU>r`3YU3{X^=#`d zqKVqNi;%mr4Z^NyepznaB~OaDeDzS5~8;sqZT42f8O)f-Y99Wai&L# z8D*`rQnG)zuhxg?i@$IdMmyH?E%$hofCz(As&ws>xSaF(h)D@pj zCpyPY1GK#y`;;&z?z8uM~H%) zD<7s0S`V=OQN3-GAz&fi#-a|kd^GS;Vl9hWAV7dRllJV2&DJNv9?PbsqH~D3i;=}x z{WK;Nv12F`I=UsAa-@SHnJaH~_&qcHvg4u3|9MlR!Ctlr|ATk)F}v%Rh*wU^Q~xUz zigZR%I%0R)EM;%lXErCgov~JeBEfSq((0!ab&VxDvh4w7@xOrK}kx%GyI- zZR4x3$h7x5wUPic#2OAp*`GR zf}2dY%erSVP_`gIM0j*WL<&G+$SiEI5Qa$6bg6-2yyBq8b+SEy|M3K%BoOs9mjHvA z(H5f<=5mSUT8IjGh(HE@E;-zaZW!#DVX&Llu0I75i4~u<#Tw;C%IuGAL+q##4P=wG zEv$$EfK8t@)q8zHySDB2NzItR;1zzSDl|PXqFatA|GwxHV9_dJp@R;5qh~YQ#deu5 z3h_BKifWyp&8*Exm_JQE8=coSm}aJJiM&s<&8<)KGpw!XG6bLyLvYtd)1g(aTq2^H zQ|Y;J>*A=%6`O$~u`><|dIm7G{P4)oufmQ1S6pJo>I`WBe0X(S;BKpFh5iQf=>%ji zbNZGB5oBS-`6_fViV(uI>11FdFdm*G+9GW~PY(-|eAYEn01R)arqYSyVv9CJ;dgrOyeMK9Gwo(3>Lp~z@1#w1Z~s22Q|0_( z44@B|oWc5RptRblNOW$cRkuyrlZZ17yTY+dbx5HhkaJL*1}tV&VM74^5H@TP?Ce!E zlz_rwpH@_YtJa%R^d-f=A`dvyv_zl4=r%28bXx{Rk|A+%PW26jxweeB-Pj)cOAOea zNI*#*2AC~Ia7poHOCbpO8X!{dwDcg&xJD?r8A`c;r?ecP>03T?(9-P}$6H)`LKV;i zj^d3?>4`q%A&TFo;hf-*odq0s$jqgzwSUuL`*JbV>{yas;$ftq2pnk3#ZedZ3K+$= zSzB;+ErFyJUBb-+Spp`~!U8_p7RE-t1MU=Xlx2|csg@((lqT`a5>+_pTK7z2jXQz7 zVZJMrJx4_Y+FZ_nK1$GrsO2k@m z@<~l9lTt~lOa%~l#SrU!yn5?ddaEzc4fqIj__l9 zG983$Vg8fRNG1LIX-T{oRV*ZV+ z9Gs3Odpo&#_zQkhJn%39UP_C5=R?UuZwVJ4`~kn9VK+J-0wK)$Ty*id)>wL1yq+q~9r!%_@UJPf@Ut}4poB*c8pY|l zXUygOTHON{zfWwl608C?Mi4a3LO+Q4Rq zHriT@$YBsEJvf7=5-FhvVFGlA0?f}5IEHW1aeU|5DqQvo~9 z^e(c8Fbx z?$KXaFnQC0`E>H~&`8Faa)8>@EqTVP-K#KS(c^ZAjt*AGL z1GUWI_qS+lP1Y;lD)Hi0DI>LciRSu#_oV%++bO3*uHbP)( za2xXgoaYQ~sY}_Znq>*4YQU0e)lfxG)gVPo`viQ2{Y>B(rZC9A=9p*7hPk`|7-3#{xUwl5ll=9A zptzk4waRe{HZ~DuLSwGJki=b`*Ysdy=QY7h7*gDOUm~Ja6kw;8)`-0CdX1&Iuw5Xu zXN&G3zEmnyJ}%@FE+~CFGpw-GYT%Uu2%PO!%vF{0F9cMAIB#=RTi7v^W`eWU0|B5h z{cz@_?@&lNzWgxd-3s#N>jncedP&Sc@pbyXLfy8NFx8l{aUncG2^>a9b2}AI9LK;$ zU)44k&i2ULlP&z9tYy5&jB~Os<(gqt#;-bIMa;7mxxla@n4lH8SfPlpml~OTD2`JB zJ6q&Yq;AAgKO*8zuOrU~7wf@;nd%<>0U-@@sEQPgwnW51k*r%pu-t4Al0XOVWC8@@ zuqA+T0sPg_lb#SSl3rQu1TgGer8}g1L^?l>Q42~1f_NlQIFNZa_^4W_X%#?6BPyU&(T?E?n$oLPL<$ESBV6IMkZ-f8z+&of z3I$mDWq}0@99F2=GCQdmX z^eZD+pKbT|xe@;wu(2WCvx*Th@IkOURgB2l+2m@mT6n!YcaMGiBjQY6 z=0_YBAF^F4L)m(N@4ip_d%XJWIKC^{iBPqz)v0Ut4U+Q&U4=;&$V`y3k@zO7Fa*SZ zOyidL$cd5lH!;0;!M7FS6d%C)Z+AH&B6kt**WFT&FEvV}Xg7mj-F63cl za*Y58#>`v*Bss0Paoxz=FpgM9U7av$VF7|BeJ^;zoNo(Lu4(Ksas0?Cfs&Avn$2kn znazwlC?kQMOkfHdwkO!axD&k;v1wiffHp1604aj%qF$nCeARL=^O5l()I8t6QEm(x zl(6{#$b1wvXMoMc(F0#im>ql$%rB6@@jrU*iGR`<`s9xrN$LjiqZq_#8H}|BmH}CZ z4mE&aszVJp`k>IE2FCChiJ7!)c%lq&DRg!(bSD5HMWwpuL<0di+^5AM%S{^2qLm3u zAWhFK^9D7KPX;OVQYjA&nZTwBR_9I*Okk9ii=snHIaVD?E>U~2y`T%3Tm&)?#R|$@ zBL=Rm?WHavp-f!_3u01v-mN;wBr%=V)n7EYk6K<C>t0JI=h>byF< z8`_R_{S)l_5ssO|G(@3JAA4*RXfUo(Ifu5m42n*74bW(;o0;nEP59&(op zr1+1IeAl16>39F+JsB)Ys72z$Gp}mQG&ytfPp$ARte^2Y{>~HkhgGL>O~@f zJYFA$%4DU@-eqrQ9EaMP)fst-_>P`39)@}j`|tGLK<(3sY*v0=n+KgtH}kQU1!%S2 z^s9@TWzISv@KUU>>Lw*FLLuhl7##^i$D$L>vHN@ItN@7Mo1)w;sInUdFwtM>O>*eH zHZhoisSN$v>*z%yjMUpYyS;py-yC6TLvsLTc62x!$?C9h4i)3`p8O2*F5tqLjbCVM zK9il<6fb1Wo9k7ts8yYbHGfyN(ugb|!_B zti!KVA%k$lan$?7LjF@^@uV_ZyTPy6vWoi@M_OAmSxozb5=$U=-%DiDa;k*NEg6H> zoiVDpnZ6V^^Eux}`Kk5S@pP`H4AWbm8Fvzy(=DkoSRfTUD6x}jZOSVqq|q#wBRKri z>{P*j40tmaTx-`D8M<1AF;;^=A}7E<5--V4b%Hy!ngPHrVWhPD)pE%NkV&Jf2^5SU z&ZsS?1u1D0Av4d$=>rZZq|sHBSd}qEAAiO8L`|WrVr9ZAV_|cVfAzJQn1D0UW97A<--FW-w`ow1R%BB; zzNe-hO=(w=ntC*){X}Z&Q6l|Sy^|n$ZJ{+xw2ZX~T#|E?I~m62hqlNl8rn39<2x)Lz{b{YE7w853WR?MPW7ufwDj)Hpv&3*yPQ+ZUA6)oD$e^ zT*ZJ_OdX)1aWh@bnW<&M*_5R>E@ge7OPQN)iJd;)@<;JA+m_lGlinELc^=m*`JLi- zjNjG#PVqZw<;k7v_+7`no+&J)Z}hu?|0no=GW>s*G^YpW8zI; zyuL^pG@(WzGJ3CN*NAqSiBZG<{r_TXShURiIf1A9b zyJYvX@fDqDywOZr6JwKUJI2qZWJ2X~X6YVwxsXCGAlRlCZRnW&yszl4!*;=?O7bFm zx?G~gHS$sHfiY2fSAZQ0M}%+V1xHrvv%UMX_C6F}>ehPHCIMC|A1~(Py^7S}>DtA? ztK+X^cX`|4t#M6vd(kEP;MYvuLjc6R??Xd{|HxSlhnP;b5LG1qLfj&gx{4U+cTfmS zd)_8jLcXH&vEzM@NA))OZU*0X^}SAZ@$ci#Zy)b_YhOBO)xI{KueHCj^N}a~9)cZw zzo7lJbMz#?|BaLU{?||P`}dvX_wPO4_k`bW6W&G*RJ9d;eC#tb~acQ`?`wlq5*s?B5?%Kq{aW}Z@@EKyt8VC*@^`F-VY={0cJnC$gV@L`bVFtvfaG7d6&4uH^)rAXn#c{^7)Z8#6 zdOgMenw|CK>|hO+v%?$5nV*;X{Crb@L3W%OTECBjxRyIZQ;bNf1D2kljXWBKZ9XD2 zT^rG+azs7f&|3I*{1JVVkLYE~7}2JE><6*D5g{Y!(Rk-QMyG~t>;_TsZ?4WUNwAqK zPmVra9oUj*`i%cIO?io2y=-$0xn8C_AyG5a|l@11h z+Ej6_E3-A?P}p1*J=;#QizLV^B`tP!G3$&=SBf**-C`-SabLc1*%-Bo{+!);dkv$W zNpBWnlniyJXaYH+=&gJvYJOHZ5##~YCgK*|iJDuxy06N%j=-j8?aQB4PDJat*pyz; zJsZHE(pf1+>Rd-0W?>(tTY4XDCE^xSs@2D4*+(3u>Z2G9;_OwWIO9+d_GJovbS>J& zSyS2nf#bC4W2r)8b{o&ZO|H@bn(XSHJ_#RdUz*3fL&_cbP_lZl>YiEX9D%p6N_7fN z`)vmAr_7{8+KW(TQltWTb;^-`tF^RFD$BY2zbz+#OdR@aTrq3U`(G$W*LcYe|awXg+J2dSO^H+SA-A3DbUh+UsDsYNJ) zh9~#GLpiG-sO;6CY$w48)Nso7AbLV+;WDXwApG|Wc80l2!C!Vh6P{}kpc33*h z$b@)IvXAVk@RrnP(L7U{MQhAg0)RzN4;UAZ>tNZ`(>t!V0rC5-F(V~geDSnkrm@K| zcbjQeY@pHk-g2BLL5U+VbH-6+jZo!mnp@TR?y{+;0;Epi>@YCkf-I4B2JlsC^Zd?t zK6UMBmXz*lPQcPW#R!zO2otW7D}!Kfl{O|a;m2YL1<#HHOS{anR(a?W3oUFxQT+tm$U#bI`}w$GRv^MfJHmof%cB#^!&o2lRpQznaQ7DRJ8Jo{f?17x40|+ zYV^(gYl`vwc_^3p&f=E5D6)JOUt9isCZmzRV0Ke}$!wNiT5QTMgPt4cTtWab#|8D|Cm<)1n0Sf6$avzLK#koc* zj*dJd17hx+2&l0)w7IX*i#UjYK9Y|_I@jJyx~B_M?%D^|+drtRbZ*Ue=QyP4!@%t|AlV+SL(iC<8U~I42RCotMsticn9nK z@?U^`=f9|ieo1e>Q|%tHCf}tdf7zP6S53ZKP5z2C`JQ-oP5xfB_NyBDuc^xSl_R@P zckkDoHG7ti>engF+I#X3=)nio{BNky-;9f6QT`z{eN;`~Z%uz#O@G9i{-~P%Ej9hy z*7Sc9m>*E5KW1S5xPke1;^P0r`6sxZzdirmc(#%MclGY~1d9jNpWiQg_etITL5#Sx z-jSypT=?Ls=jDU``5C+|`8NHtrw4+Q4es~ldlNr9eCxEdI9JCoPJjQI$Ib~4*|NtbM%()`bFurUiJ z*8qo``2TwTzmESuEs);G|9@z(rL)xHEI-vql^O@j|5}O>^;aO$Q)BsYc7w-<0PN++ zwK4LAG?lP?n47Wut1S%lWh6zWuP=rDvrN5mUtjJ0y~d(Wh*qYkLnT$GjrG#Qv;-iK zzpT5Zm`^;nelUlyR%Z`lax>XA`a!tJp+J2WZ@RR*CA-eXLv7b(pSFbgo6rp!*-cE{ zr{g2Djl26d%dW$(esho(%$;7>?A@4MZ{p%cX72`<6E|McMH9IZ$ng&e9nI`|&EqN; z1cVS?Bt+huUCk;Xfnr~l?(4tEpE8{@e#La2t*b`1@fwbnyGanbDZ3t)o!g2$+1|wE z^6N^-m;^-Ix5wY*EXSRhx%@MtnumlKe;KxMZe_;gvmm=ag|0~h?!^jOZ-P4h3Q zkN-rfS^m$l$;A9$jJZ4}bj<&kF_-_Xe%+q`A47Hq_hpUnD{59AmojFmmP2JaY_Ny_-A&WOYH5mZKGsV*| zWX&dsJTfEC&5q~{vH@6sJxB_mGf}o9YEllGCMMSV(gmBtG zQCdRd;TtDt)DuzS355X?opGYy~q>dl}30OZk5Sk%@7Ky_QYv=|ey` zHTeg&32UE%?V;&%Jc&jBv(3A@JFGS=CXByW#$N&#)gSgkx+jZe^mq#c2(lhRTOgyiehpVSYt2Y+79LxUf%3OEqlmS! z@fv)hb2G0{hJrm`&$frV1ti4zW!)Z3CsxNax7wk#^O8w;%D7=ZhReUA@Rtb&3mwA& zXl{_OpD#N}?3a-MqX+Jo8Q*FU{#G}n93d8skblf!AM5+W1%kjY|Bo|gM} zKm$`OfcC0=2zbQv^E=zsw9n9*?7Hp+o!OzjJax=`;DK#>580XhaGr|Z>Ue}RqSd)} zGUyzg3qVoFqw#EWzj;mftE4WB_s%4H@-BePFZXHhEW2;mJ(^dzPwgHLOt?qR%~_Ey zmVE2@Uu|Ai-R+Srmi;JO7$5o8#K=+`Q#p2NfO?Bz0%Y*<=>|?D4 zT7t*l$CS6{oBey&bLyDP{iO?|%#kWbukd6enX^6z=& z8kHsaQ&NU9)9fk}cUKzTb-=qnhbWefy`JOx8mnTTRnex3Kck9P_DpZ|97*}DmGbr# zj6SrtFFT@7^7fxvgQZrE!iD+qlggAvIa)Kq8bG-p?R;BgSAp?w4j7MJE{tE9y@usk zxS`%6jDJnB>D6=jTg5xxCZzr;v6w?5fS(ot{7i}aKP%jSyKw*KRKBtE{t;dN`IG6g ztQH$_ZwsA1Y@L?AZki?L1<}r{STRS(-=U6QWgY(ob^I6A@n2HM->HrtQ3u~ucKnys z@q5+rceCjr9rvun64oss{VONX?WJ>}>GXT5PO}uG4B&hPjf#Wz^7pFOXyQt2|5bJN z*VNhfX#n@B$M4rDe!cAW2h{Bks@uPj6q9uO12If}xqsQl6;qHv+GvhVcGsM`Zc}#7 zIg{B{{j0Mbb8g?DNsXsF`B%#Ag;%f+=D9NK$Fhs`gU@6IIxH_smHp~VyZhyT+134a z4Qr6{cTq^z$i9Y*zwAOX=EnCa`8j)@T=tD@rxJ9<-LqLO18KZ6E9SE2@6ERFk^>`= z+RUKmdbz62vK^Op@jR&XIp#LL#&0gRn``yXmi&cuS!&{S*ai)C{IsEt<3ZxgKXn|H zT^&CV({s#)?~1MK{p(TKXD^_E7hu8Q)B0-QLip-M>fW2x%@^(J zzJ+cI0Qh|Hz*zw6qD-zE)o*RwAXCNySWJz+W?KGKPO%+|M7)SU1tH?>g3GN~#>|a8 zRm9;&jG3Q?Y#H5L{vv73iaOv;QsO|I<6XM3GH1MPf#asR{!Lf0ctnT+RD~v5#sMDS zCwdWkBq)gG1AdVv`^xNUxhJpm4)MbRRjRR=-I45)JNq|hm*VXDOl;mR_46~ajqFNs z$tE9ORt8Ao4tW~ZNkSt(qn_tiN*}tKSLE>;&n~{LkDoHm7^H3doxM=27+ykBBqLT?63sVUigPp(&ip4pqRF|*Z(jo3b^9VG97k6k z*~gYhmt}l>rENZtU+r&QAF#}pGngqDXWypK=(l})|HdQPt+*<)S224WRVQC%_H~!* zQfR~iqqmCY_TuWz#z2(oJ*H{ZJBYvDhsclUYcCrt$U43z`?lKzxJGuhcD;y2Tk;Dl zThz*!i0hG^pw_>GsZ{7?lo3ANHA*)2jXbq>F1*||S-)Y|8$wJ)0+pq6r$ zLe!1qBJ8GpLapm~#Zl`exAi%}mceNOlJ@8UWooGPYAs&a6Hx10z%w7?xBh?Boe6+k zMYZ?)-k$E6p6;GZ7DC7*nYx`xGLvMIn1lofLOPI5_7D<8-*b5`FhPY7A_#`ChzKaF zii(Pg281Z?yGBJtMMXtK@VVl?EA9*5?|-W9?e3XL!h`sI?<4e7-MV$FPMtdERMn|d zr-np{IkNx9klWy6PYZ;1mOCILt=J1c>x`$lbJS5q_oAl$I!PVk+}2gq>ApWh&xOn< z_{^c(kdz^_%?uz9cdn!+=<%Pq7Y@}WX%E-YN-3VX%5>q%we~wt>x6 zPpn8GT0lRba(CyOKW9%L#;9(w`KBergi`?~882nt?$YRKy?Ow#;j^t!d-x$aSM6Ez2wm$vJeC!y&M*z#q*?z#{ zP=LQh*y&kYz1aip_nc4Uh8Tcub7!xqN}j(WV)Nl3B3DK1HycdX0HiK3>seJ@Ly6}L z-90MsjRD;^X?#5IEKsn)^>}nM5s>|^pq6&jP@gx z*8}JxQfk5@AhKv}^_m9gFl9=o=N%2`Q3`rwphxa%R8x2{X`;>Dp>GX91oYvz$)MRP zrUWXwxk=z(5^bwtBJz?5#{5R)UKvSjfVgjX&b-cqOhMmW8a0?xhERbyuO-@so>km= zz2y>rBDE{P4{M?nlw4P<1Ls`?VVo?JmB_u6sC8E4E+c9_U?cZ3qG5!%oalN#SX@Dr z;X|Ks1(7>e(Q8%V5c{sGnubMey7GRC@$t`r>E@``<6cb`D5U09pHOPv*x-ifC_Fr{ zE42!TE0KE*;q&yU{IUywzH^=t*i?BfgxuzCh~NNk)9YSmn_!elx87(+os9h7kdpuF zf$@!ebraqw)<`VmB$uDmZE&}P z``|&xgw=*7VWn+IjV|h?qT5N%X)0e^b&=JFEaX`r)J|MmeW_U24u>#3L}aP`>)bm) zy*^Gmtmxhe#6^a^h_`oGhf&7{GQAtn^KRX9-Mi?r_we1@P(|k}&y?V7g=3tDBMESD zj<^Yq%O5)&aRx^`9FDkh(nvVQw!*Qk8H@`aGdA)W6riXT8`|3(fem@XqF2N*qJs09 zp*a6BLlI?A(2dPdghh$AJ4BtH&|?kaw{M3`B@k@WWI)f!$?(kwBljWO&?Rz<@tj3k z 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

l{31tG=AGaRRS627r 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 E0joEw_W%F@ literal 873354 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

elC&5)RgRfZ%rK{N?Lmg5>U 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

!1vg@%`7}52S8oCOn4PDVEkB_dOsG;k< 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

I!R6OisC=iAkIXcM80_gKg^FQ`E!oFfZKCR55Z z(JF<0i%_m?0o4cIR9BRF6GD|ba8Gj@`m2xP;X(Bhe3x~n5lF8R0J)?z0L6|71gg#Q zC`Nyq9;w^uX_rSf!$%=??or=6Q5vOUQWaNj!SH2(77)Cn97`VYR)$b3MGS>?R$-;L z4<=BsjlR0R&<8l^0#0|MY1GOCr-9gfVjq-ur1EEm7G0gM!>-6P(s^j;)f1GB*shhf z%0D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 guIBk`g5s>4-uHK$z#n+a diff --git a/substrate/srml/assets/Cargo.toml b/substrate/srml/assets/Cargo.toml index 621d4a1ac4..f274661e6c 100644 --- a/substrate/srml/assets/Cargo.toml +++ b/substrate/srml/assets/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } # Needed for various traits. In our case, `OnFinalise`. primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } # Needed for type-safe access to storage DB. diff --git a/substrate/srml/aura/Cargo.toml b/substrate/srml/aura/Cargo.toml index bb8af29e8d..9d1eda38c0 100644 --- a/substrate/srml/aura/Cargo.toml +++ b/substrate/srml/aura/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } parity-codec-derive = { version = "3.1", default-features = false } serde = { version = "1.0", optional = true } inherents = { package = "substrate-inherents", path = "../../core/inherents", default-features = false } diff --git a/substrate/srml/balances/Cargo.toml b/substrate/srml/balances/Cargo.toml index c8d5d152a3..43759643dd 100644 --- a/substrate/srml/balances/Cargo.toml +++ b/substrate/srml/balances/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-keyring = { path = "../../core/keyring", optional = true } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/balances/src/lib.rs b/substrate/srml/balances/src/lib.rs index c9b62998fc..ff0493f35f 100644 --- a/substrate/srml/balances/src/lib.rs +++ b/substrate/srml/balances/src/lib.rs @@ -41,7 +41,7 @@ use system::{IsDeadAccount, OnNewAccount, ensure_signed}; mod mock; mod tests; -pub trait Trait: system::Trait { +pub trait Trait: system::Trait { /// The balance of an account. type Balance: Parameter + Member + SimpleArithmetic + Codec + Default + Copy + As + As + MaybeSerializeDebug; @@ -55,7 +55,7 @@ pub trait Trait: system::Trait { type OnNewAccount: OnNewAccount; /// The overarching event type. - type Event: From> + Into<::Event>; + type Event: From> + Into<::Event>; } impl ArithmeticType for Module { @@ -63,9 +63,9 @@ impl ArithmeticType for Module { } decl_event!( - pub enum Event where + pub enum Event where ::AccountId, - ::Balance + >::Balance { /// A new account was created. NewAccount(AccountId, Balance), @@ -107,9 +107,9 @@ pub struct BalanceLock { } decl_storage! { - trait Store for Module as Balances { + trait Store for Module, I: Instance=DefaultInstance> as Balances { /// The total amount of stake on the system. - pub TotalIssuance get(total_issuance) build(|config: &GenesisConfig| { + pub TotalIssuance get(total_issuance) build(|config: &GenesisConfig| { config.balances.iter().fold(Zero::zero(), |acc: T::Balance, &(_, n)| acc + n) }): T::Balance; /// The minimum amount allowed to keep an account open. @@ -120,7 +120,7 @@ decl_storage! { pub CreationFee get(creation_fee) config(): T::Balance; /// Information regarding the vesting of a given account. - pub Vesting get(vesting) build(|config: &GenesisConfig| { + pub Vesting get(vesting) build(|config: &GenesisConfig| { config.vesting.iter().filter_map(|&(ref who, begin, length)| { let begin: u64 = begin.as_(); let length: u64 = length.as_(); @@ -152,7 +152,7 @@ decl_storage! { /// /// `system::AccountNonce` is also deleted if `ReservedBalance` is also zero (it also gets /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. - pub FreeBalance get(free_balance) build(|config: &GenesisConfig| config.balances.clone()): map T::AccountId => T::Balance; + pub FreeBalance get(free_balance) build(|config: &GenesisConfig| config.balances.clone()): map T::AccountId => T::Balance; /// The amount of the balance of a given account that is externally reserved; this can still get /// slashed, but gets slashed last of all. @@ -175,11 +175,12 @@ decl_storage! { config(balances): Vec<(T::AccountId, T::Balance)>; config(vesting): Vec<(T::AccountId, T::BlockNumber, T::BlockNumber)>; // begin, length } + extra_genesis_skip_phantom_data_field; } decl_module! { - pub struct Module for enum Call where origin: T::Origin { - fn deposit_event() = default; + pub struct Module, I: Instance = DefaultInstance> for enum Call where origin: T::Origin { + fn deposit_event() = default; /// Transfer some liquid free balance to another staker. pub fn transfer( @@ -206,7 +207,7 @@ decl_module! { } // For funding methods, see Currency trait -impl Module { +impl, I: Instance> Module { /// Get the amount that is currently being vested and cannot be transfered out of this account. pub fn vesting_balance(who: &T::AccountId) -> T::Balance { @@ -223,11 +224,11 @@ impl Module { /// In that case it will return `AccountKilled`. pub fn set_reserved_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { if balance < Self::existential_deposit() { - >::insert(who, balance); + >::insert(who, balance); Self::on_reserved_too_low(who); UpdateBalanceOutcome::AccountKilled } else { - >::insert(who, balance); + >::insert(who, balance); UpdateBalanceOutcome::Updated } } @@ -243,11 +244,11 @@ impl Module { // Commented out for no - but consider it instructive. // assert!(!Self::total_balance(who).is_zero()); if balance < Self::existential_deposit() { - >::insert(who, balance); + >::insert(who, balance); Self::on_free_too_low(who); UpdateBalanceOutcome::AccountKilled } else { - >::insert(who, balance); + >::insert(who, balance); UpdateBalanceOutcome::Updated } } @@ -260,7 +261,7 @@ impl Module { /// /// [`set_free_balance`]: #method.set_free_balance pub fn set_free_balance_creating(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { - let ed = >::existential_deposit(); + let ed = >::existential_deposit(); // If the balance is too low, then the account is reaped. // NOTE: There are two balances for every account: `reserved_balance` and // `free_balance`. This contract subsystem only cares about the latter: whenever @@ -275,7 +276,7 @@ impl Module { Self::set_free_balance(who, balance); UpdateBalanceOutcome::AccountKilled } else { - if !>::exists(who) { + if !>::exists(who) { Self::new_account(&who, balance); } Self::set_free_balance(who, balance); @@ -335,8 +336,8 @@ impl Module { /// Kill an account's free portion. fn on_free_too_low(who: &T::AccountId) { Self::decrease_total_stake_by(Self::free_balance(who)); - >::remove(who); - >::remove(who); + >::remove(who); + >::remove(who); T::OnFreeBalanceZero::on_free_balance_zero(who); @@ -348,7 +349,7 @@ impl Module { /// Kill an account's reserved portion. fn on_reserved_too_low(who: &T::AccountId) { Self::decrease_total_stake_by(Self::reserved_balance(who)); - >::remove(who); + >::remove(who); if Self::free_balance(who).is_zero() { Self::reap_account(who); @@ -357,14 +358,14 @@ impl Module { /// Increase TotalIssuance by Value. pub fn increase_total_stake_by(value: T::Balance) { - if let Some(v) = >::total_issuance().checked_add(&value) { - >::put(v); + if let Some(v) = >::total_issuance().checked_add(&value) { + >::put(v); } } /// Decrease TotalIssuance by Value. pub fn decrease_total_stake_by(value: T::Balance) { - if let Some(v) = >::total_issuance().checked_sub(&value) { - >::put(v); + if let Some(v) = >::total_issuance().checked_sub(&value) { + >::put(v); } } @@ -398,7 +399,7 @@ impl Module { } } -impl Currency for Module +impl, I: Instance> Currency for Module where T::Balance: MaybeSerializeDebug { @@ -421,7 +422,7 @@ where } fn total_issuance() -> Self::Balance { - >::get() + >::get() } fn minimum_balance() -> Self::Balance { @@ -429,11 +430,11 @@ where } fn free_balance(who: &T::AccountId) -> Self::Balance { - >::get(who) + >::get(who) } fn reserved_balance(who: &T::AccountId) -> Self::Balance { - >::get(who) + >::get(who) } fn slash(who: &T::AccountId, value: Self::Balance) -> Option { @@ -517,7 +518,7 @@ where } } -impl LockableCurrency for Module +impl, I: Instance> LockableCurrency for Module where T::Balance: MaybeSerializeDebug { @@ -543,7 +544,7 @@ where if let Some(lock) = new_lock { locks.push(lock) } - >::insert(who, locks); + >::insert(who, locks); } fn extend_lock( @@ -573,7 +574,7 @@ where if let Some(lock) = new_lock { locks.push(lock) } - >::insert(who, locks); + >::insert(who, locks); } fn remove_lock( @@ -587,11 +588,11 @@ where } else { None }).collect::>(); - >::insert(who, locks); + >::insert(who, locks); } } -impl TransferAsset for Module { +impl, I: Instance> TransferAsset for Module { type Amount = T::Balance; fn transfer(from: &T::AccountId, to: &T::AccountId, amount: T::Balance) -> Result { @@ -615,7 +616,7 @@ impl TransferAsset for Module { } } -impl IsDeadAccount for Module +impl, I: Instance> IsDeadAccount for Module where T::Balance: MaybeSerializeDebug { diff --git a/substrate/srml/consensus/Cargo.toml b/substrate/srml/consensus/Cargo.toml index 105f978c63..6adeb90d02 100644 --- a/substrate/srml/consensus/Cargo.toml +++ b/substrate/srml/consensus/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } inherents = { package = "substrate-inherents", path = "../../core/inherents", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/contract/Cargo.toml b/substrate/srml/contract/Cargo.toml index d0c851e26e..0d373978b0 100644 --- a/substrate/srml/contract/Cargo.toml +++ b/substrate/srml/contract/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } pwasm-utils = { version = "0.6.1", default-features = false } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } parity-wasm = { version = "0.31", default-features = false } substrate-primitives = { path = "../../core/primitives", default-features = false } runtime-primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/council/Cargo.toml b/substrate/srml/council/Cargo.toml index 868ec3bcff..e26003a73e 100644 --- a/substrate/srml/council/Cargo.toml +++ b/substrate/srml/council/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } substrate-primitives = { path = "../../core/primitives", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/democracy/Cargo.toml b/substrate/srml/democracy/Cargo.toml index 29b70938f2..890882c485 100644 --- a/substrate/srml/democracy/Cargo.toml +++ b/substrate/srml/democracy/Cargo.toml @@ -9,7 +9,7 @@ hex-literal = "0.1.0" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/example/Cargo.toml b/substrate/srml/example/Cargo.toml index c1cf286346..57abe374c9 100644 --- a/substrate/srml/example/Cargo.toml +++ b/substrate/srml/example/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } srml-support = { path = "../support", default-features = false } system = { package = "srml-system", path = "../system", default-features = false } balances = { package = "srml-balances", path = "../balances", default-features = false } diff --git a/substrate/srml/executive/Cargo.toml b/substrate/srml/executive/Cargo.toml index 04f6526666..0165a37bb2 100644 --- a/substrate/srml/executive/Cargo.toml +++ b/substrate/srml/executive/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/fees/Cargo.toml b/substrate/srml/fees/Cargo.toml index d29d77c748..2bb4474ce6 100644 --- a/substrate/srml/fees/Cargo.toml +++ b/substrate/srml/fees/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } primitives = { package = "substrate-primitives", path = "../../core/primitives", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/finality-tracker/Cargo.toml b/substrate/srml/finality-tracker/Cargo.toml index ac30f1e13d..22691e1aa7 100644 --- a/substrate/srml/finality-tracker/Cargo.toml +++ b/substrate/srml/finality-tracker/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", default-features = false } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } inherents = { package = "substrate-inherents", path = "../../core/inherents", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/grandpa/Cargo.toml b/substrate/srml/grandpa/Cargo.toml index de260b622e..b7cc5dc231 100644 --- a/substrate/srml/grandpa/Cargo.toml +++ b/substrate/srml/grandpa/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" #hex-literal = "0.1.0" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } substrate-finality-grandpa-primitives = { path = "../../core/finality-grandpa/primitives", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/indices/Cargo.toml b/substrate/srml/indices/Cargo.toml index 399c7b1bd0..2331f325d1 100644 --- a/substrate/srml/indices/Cargo.toml +++ b/substrate/srml/indices/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } substrate-keyring = { path = "../../core/keyring", optional = true } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/metadata/Cargo.toml b/substrate/srml/metadata/Cargo.toml index 1bbb8a77df..eed5e6b4e3 100644 --- a/substrate/srml/metadata/Cargo.toml +++ b/substrate/srml/metadata/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } diff --git a/substrate/srml/session/Cargo.toml b/substrate/srml/session/Cargo.toml index 8412505d32..84b49b7788 100644 --- a/substrate/srml/session/Cargo.toml +++ b/substrate/srml/session/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/staking/Cargo.toml b/substrate/srml/staking/Cargo.toml index c548b3a2ef..967cee3391 100644 --- a/substrate/srml/staking/Cargo.toml +++ b/substrate/srml/staking/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-keyring = { path = "../../core/keyring", optional = true } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } diff --git a/substrate/srml/sudo/Cargo.toml b/substrate/srml/sudo/Cargo.toml index 8473d2fb44..ef0bb59b53 100644 --- a/substrate/srml/sudo/Cargo.toml +++ b/substrate/srml/sudo/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } sr-std = { path = "../../core/sr-std", default-features = false } sr-primitives = { path = "../../core/sr-primitives", default-features = false } diff --git a/substrate/srml/support/Cargo.toml b/substrate/srml/support/Cargo.toml index 2cc4cfa0c8..357aa0c757 100644 --- a/substrate/srml/support/Cargo.toml +++ b/substrate/srml/support/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = { version = "0.1.0", optional = true } serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } srml-metadata = { path = "../metadata", default-features = false } sr-std = { path = "../../core/sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } @@ -17,6 +17,7 @@ inherents = { package = "substrate-inherents", path = "../../core/inherents", de srml-support-procedural = { path = "./procedural" } paste = "0.1" once_cell = { version = "0.1.6", default-features = false, optional = true } +spin = "0.5" bitmask = { git = "https://github.com/paritytech/bitmask", default-features = false } [dev-dependencies] diff --git a/substrate/srml/support/procedural/src/lib.rs b/substrate/srml/support/procedural/src/lib.rs index 47aef0fe9f..5464302e29 100644 --- a/substrate/srml/support/procedural/src/lib.rs +++ b/substrate/srml/support/procedural/src/lib.rs @@ -58,6 +58,18 @@ use proc_macro::TokenStream; /// ``` /// or when at least one storage field requires default initialization (both `get` and `config` or `build`). /// This struct can be expose as `Config` by `decl_runtime` macro. +/// +/// ### Module with instances +/// +/// `decl_storage!` macro support building modules with instances with the following syntax: (DefaultInstance type +/// is optionnal) +/// ```nocompile +/// trait Store for Module, I: Instance=DefaultInstance> as Example {} +/// ``` +/// +/// Then the genesis config is generated with two generic parameter `GenesisConfig` +/// and storages are now accessible using two generic parameters like: +/// `>::get()` or `Dummy::::get()` #[proc_macro] pub fn decl_storage(input: TokenStream) -> TokenStream { storage::transformation::decl_storage_impl(input) diff --git a/substrate/srml/support/procedural/src/storage/impls.rs b/substrate/srml/support/procedural/src/storage/impls.rs index 661f6b7a59..efbb9a8d7a 100644 --- a/substrate/srml/support/procedural/src/storage/impls.rs +++ b/substrate/srml/support/procedural/src/storage/impls.rs @@ -17,7 +17,7 @@ use proc_macro2::TokenStream as TokenStream2; use syn; use quote::quote; -use crate::storage::transformation::DeclStorageTypeInfos; +use crate::storage::transformation::{DeclStorageTypeInfos, InstanceOpts}; pub fn option_unwrap(is_option: bool) -> TokenStream2 { if !is_option { @@ -34,9 +34,11 @@ pub(crate) struct Impls<'a, I: Iterator> { pub visibility: &'a syn::Visibility, pub traitinstance: &'a syn::Ident, pub traittype: &'a syn::TypeParamBound, + pub instance_opts: &'a InstanceOpts, pub type_infos: DeclStorageTypeInfos<'a>, pub fielddefault: TokenStream2, pub prefix: String, + pub cratename: &'a syn::Ident, pub name: &'a syn::Ident, pub attrs: I, } @@ -48,11 +50,13 @@ impl<'a, I: Iterator> Impls<'a, I> { visibility, traitinstance, traittype, + instance_opts, type_infos, fielddefault, prefix, name, attrs, + .. } = self; let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; let option_simple_1 = option_unwrap(is_option); @@ -70,17 +74,32 @@ impl<'a, I: Iterator> Impls<'a, I> { } }; + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + + let final_prefix = if let Some(instance) = instance { + let method_name = syn::Ident::new(&format!("build_prefix_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#method_name(#prefix.as_bytes()) } + } else { + quote!{ #prefix.as_bytes() } + }; + // generator for value quote!{ #( #[ #attrs ] )* - #visibility struct #name<#traitinstance: #traittype>(#scrate::storage::generator::PhantomData<#traitinstance>); + #visibility struct #name<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>(#scrate::storage::generator::PhantomData<(#traitinstance #comma_instance)>); - impl<#traitinstance: #traittype> #scrate::storage::generator::StorageValue<#typ> for #name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::generator::StorageValue<#typ> for #name<#traitinstance, #instance> { type Query = #value_type; /// Get the storage key. fn key() -> &'static [u8] { - #prefix.as_bytes() + #final_prefix } /// Load the value from the provided storage instance. @@ -113,11 +132,13 @@ impl<'a, I: Iterator> Impls<'a, I> { visibility, traitinstance, traittype, + instance_opts, type_infos, fielddefault, prefix, name, attrs, + .. } = self; let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; let option_simple_1 = option_unwrap(is_option); @@ -134,22 +155,38 @@ impl<'a, I: Iterator> Impls<'a, I> { } } }; + + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + + let final_prefix = if let Some(instance) = instance { + let method_name = syn::Ident::new(&format!("build_prefix_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#method_name(#prefix.as_bytes()) } + } else { + quote!{ #prefix.as_bytes() } + }; + // generator for map quote!{ #( #[ #attrs ] )* - #visibility struct #name<#traitinstance: #traittype>(#scrate::storage::generator::PhantomData<#traitinstance>); + #visibility struct #name<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>(#scrate::storage::generator::PhantomData<(#traitinstance #comma_instance)>); - impl<#traitinstance: #traittype> #scrate::storage::generator::StorageMap<#kty, #typ> for #name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::generator::StorageMap<#kty, #typ> for #name<#traitinstance, #instance> { type Query = #value_type; /// Get the prefix key in storage. fn prefix() -> &'static [u8] { - #prefix.as_bytes() + #final_prefix } /// Get the storage key used to fetch a value corresponding to a specific key. fn key_for(x: &#kty) -> #scrate::rstd::vec::Vec { - let mut key = #prefix.as_bytes().to_vec(); + let mut key = >::prefix().to_vec(); #scrate::codec::Encode::encode_to(x, &mut key); key } @@ -185,16 +222,41 @@ impl<'a, I: Iterator> Impls<'a, I> { visibility, traitinstance, traittype, + instance_opts, type_infos, fielddefault, prefix, name, attrs, + .. } = self; + + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + + let final_prefix = if let Some(instance) = instance { + let method_name = syn::Ident::new(&format!("build_prefix_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#method_name(#prefix.as_bytes()) } + } else { + quote!{ #prefix.as_bytes() } + }; + + // make sure to use different prefix for head and elements. + let final_head_key = if let Some(instance) = instance { + let method_name = syn::Ident::new(&format!("build_head_key_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#method_name(#prefix.as_bytes()) } + } else { + let final_head_key = format!("head of {}", prefix); + quote!{ #final_head_key.as_bytes() } + }; + let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; let option_simple_1 = option_unwrap(is_option); - // make sure to use different prefix for head and elements. - let head_key = format!("head of {}", prefix); let name_lowercase = name.to_string().to_lowercase(); let inner_module = syn::Ident::new(&format!("__linked_map_details_for_{}_do_not_use", name_lowercase), name.span()); let linkage = syn::Ident::new(&format!("__LinkageFor{}DoNotUse", name), name.span()); @@ -250,30 +312,22 @@ impl<'a, I: Iterator> Impls<'a, I> { pub _data: #phantom_data, } - impl<'a, S: #scrate::GenericStorage, K, V> Iterator for Enumerator<'a, S, K, V> where - K: 'a + #scrate::codec::Codec, - V: 'a + #scrate::codec::Decode, + impl<'a, S: #scrate::GenericStorage, #traitinstance: #traittype, #instance #bound_instantiable> Iterator for Enumerator<'a, S, #kty, (#typ, #traitinstance, #instance)> + where #traitinstance: 'a { - type Item = (K, V); + type Item = (#kty, #typ); fn next(&mut self) -> Option { let next = self.next.take()?; - let key_for = key_for(&next); - let (val, linkage): (V, Linkage) = self.storage.get(&*key_for) + let key_for = as #scrate::storage::generator::StorageMap<#kty, #typ>>::key_for(&next); + let (val, linkage): (#typ, Linkage<#kty>) = self.storage.get(&*key_for) .expect("previous/next only contain existing entires; we enumerate using next; entry exists; qed"); self.next = linkage.next; Some((next, val)) } } - /// Generate a storage key for given item. - pub(crate) fn key_for(key: &Key) -> #scrate::rstd::vec::Vec { - let mut key_for = #prefix.as_bytes().to_vec(); - #scrate::codec::Encode::encode_to(&key, &mut key_for); - key_for - } - - pub(crate) trait Utils<#traitinstance: #traittype> { + pub(crate) trait Utils<#traitinstance: #traittype, #instance #bound_instantiable> { /// Update linkage when this element is removed. /// /// Takes care of updating previous and next elements points @@ -304,17 +358,17 @@ impl<'a, I: Iterator> Impls<'a, I> { let structure = quote! { #( #[ #attrs ] )* - #visibility struct #name<#traitinstance: #traittype>(#phantom_data<#traitinstance>); + #visibility struct #name<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>(#phantom_data<(#traitinstance #comma_instance)>); - impl<#traitinstance: #traittype> self::#inner_module::Utils<#traitinstance> for #name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> self::#inner_module::Utils<#traitinstance, #instance> for #name<#traitinstance, #instance> { fn remove_linkage( linkage: self::#inner_module::Linkage<#kty>, storage: &S, ) { - use self::#inner_module::{key_for, Utils}; + use self::#inner_module::Utils; - let next_key = linkage.next.as_ref().map(|x| key_for(x)); - let prev_key = linkage.previous.as_ref().map(|x| key_for(x)); + let next_key = linkage.next.as_ref().map(|x| #as_map::key_for(x)); + let prev_key = linkage.previous.as_ref().map(|x| #as_map::key_for(x)); if let Some(prev_key) = prev_key { // Retrieve previous element and update `next` @@ -347,12 +401,12 @@ impl<'a, I: Iterator> Impls<'a, I> { storage: &S, key: &#kty, ) -> self::#inner_module::Linkage<#kty> { - use self::#inner_module::{key_for, Utils}; + use self::#inner_module::Utils; if let Some(head) = Self::read_head(storage) { // update previous head predecessor { - let head_key = key_for(&head); + let head_key = #as_map::key_for(&head); let (data, linkage) = Self::read_with_linkage(storage, &*head_key).expect(r#" head is set when first element is inserted and unset when last element is removed; if head is Some then it points to existing key; qed @@ -376,13 +430,13 @@ impl<'a, I: Iterator> Impls<'a, I> { } fn read_head(storage: &S) -> Option<#kty> { - storage.get(#head_key.as_bytes()) + storage.get(#final_head_key) } fn write_head(storage: &S, head: Option<&#kty>) { match head { - Some(head) => storage.put(#head_key.as_bytes(), head), - None => storage.kill(#head_key.as_bytes()), + Some(head) => storage.put(#final_head_key, head), + None => storage.kill(#final_head_key), } } } @@ -393,17 +447,19 @@ impl<'a, I: Iterator> Impls<'a, I> { #structure - impl<#traitinstance: #traittype> #scrate::storage::generator::StorageMap<#kty, #typ> for #name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::generator::StorageMap<#kty, #typ> for #name<#traitinstance, #instance> { type Query = #value_type; /// Get the prefix key in storage. fn prefix() -> &'static [u8] { - #prefix.as_bytes() + #final_prefix } /// Get the storage key used to fetch a value corresponding to a specific key. - fn key_for(x: &#kty) -> #scrate::rstd::vec::Vec { - self::#inner_module::key_for(x) + fn key_for(key: &#kty) -> #scrate::rstd::vec::Vec { + let mut key_for = #as_map::prefix().to_vec(); + #scrate::codec::Encode::encode_to(&key, &mut key_for); + key_for } /// Load the value associated with the given key from the map. @@ -413,9 +469,9 @@ impl<'a, I: Iterator> Impls<'a, I> { /// Take the value, reading and removing it. fn take(key: &#kty, storage: &S) -> Self::Query { - use self::#inner_module::{Utils, key_for}; + use self::#inner_module::Utils; - let res: Option<(#value_type, self::#inner_module::Linkage<#kty>)> = storage.take(&*key_for(key)); + let res: Option<(#value_type, self::#inner_module::Linkage<#kty>)> = storage.take(&*#as_map::key_for(key)); match res { Some((data, linkage)) => { Self::remove_linkage(linkage, storage); @@ -432,9 +488,9 @@ impl<'a, I: Iterator> Impls<'a, I> { /// Store a value to be associated with the given key from the map. fn insert(key: &#kty, val: &#typ, storage: &S) { - use self::#inner_module::{Utils, key_for}; + use self::#inner_module::Utils; - let key_for = &*key_for(key); + let key_for = &*#as_map::key_for(key); let linkage = match Self::read_with_linkage(storage, key_for) { // overwrite but reuse existing linkage Some((_data, linkage)) => linkage, @@ -446,9 +502,9 @@ impl<'a, I: Iterator> Impls<'a, I> { /// Mutate the value under a key fn mutate R, S: #scrate::GenericStorage>(key: &#kty, f: F, storage: &S) -> R { - use self::#inner_module::{Utils, key_for}; + use self::#inner_module::Utils; - let key_for = &*key_for(key); + let key_for = &*#as_map::key_for(key); let (mut val, linkage) = Self::read_with_linkage(storage, key_for) .map(|(data, linkage)| (data, Some(linkage))) .unwrap_or_else(|| (#fielddefault, None)); @@ -459,7 +515,7 @@ impl<'a, I: Iterator> Impls<'a, I> { } } - impl<#traitinstance: #traittype> #scrate::storage::generator::EnumerableStorageMap<#kty, #typ> for #name<#traitinstance> { + impl<#traitinstance: 'static + #traittype, #instance #bound_instantiable> #scrate::storage::generator::EnumerableStorageMap<#kty, #typ> for #name<#traitinstance, #instance> { fn head(storage: &S) -> Option<#kty> { use self::#inner_module::Utils; @@ -475,7 +531,7 @@ impl<'a, I: Iterator> Impls<'a, I> { #scrate::storage::generator::Box::new(Enumerator { next: Self::read_head(storage), storage, - _data: #phantom_data::<#typ>::default(), + _data: #phantom_data::<(#typ, #traitinstance, #instance)>::default(), }) } } diff --git a/substrate/srml/support/procedural/src/storage/mod.rs b/substrate/srml/support/procedural/src/storage/mod.rs index 4cf8ea216f..7bb547c4f7 100644 --- a/substrate/srml/support/procedural/src/storage/mod.rs +++ b/substrate/srml/support/procedural/src/storage/mod.rs @@ -39,14 +39,20 @@ struct StorageDefinition { pub module_ident: Ident, pub mod_lt_token: Token![<], pub mod_param: syn::GenericParam, + pub mod_instance_param_token: Option, + pub mod_instance: Option, + pub mod_instantiable_token: Option, + pub mod_instantiable: Option, + pub mod_default_instance_token: Option, + pub mod_default_instance: Option, pub mod_gt_token: Token![>], pub as_token: Token![as], pub crate_ident: Ident, pub content: ext::Braces>, pub extra_genesis: Option, + pub extra_genesis_skip_phantom_data_field: Option, } - #[derive(Parse, ToTokens, Debug)] struct SpecificHiddenCrate { pub keyword: ext::CustomToken, @@ -59,6 +65,12 @@ struct AddExtraGenesis { pub content: ext::Braces, } +#[derive(Parse, ToTokens, Debug)] +struct ExtraGenesisSkipPhantomDataField { + pub genesis_phantom_keyword: ext::CustomToken, + pub token: Token![;], +} + #[derive(Parse, ToTokens, Debug)] struct AddExtraGenesisContent { pub lines: ext::Punctuated, @@ -153,3 +165,4 @@ custom_keyword_impl!(AddExtraGenesis, "add_extra_genesis", "storage extra genesi custom_keyword_impl!(DeclStorageGetter, "get", "storage getter"); custom_keyword!(MapKeyword, "map", "map as keyword"); custom_keyword!(LinkedMapKeyword, "linked_map", "linked_map as keyword"); +custom_keyword_impl!(ExtraGenesisSkipPhantomDataField, "extra_genesis_skip_phantom_data_field", "extra_genesis_skip_phantom_data_field as keyword"); diff --git a/substrate/srml/support/procedural/src/storage/transformation.rs b/substrate/srml/support/procedural/src/storage/transformation.rs index fc5ba7b721..c2c7438673 100644 --- a/substrate/srml/support/procedural/src/storage/transformation.rs +++ b/substrate/srml/support/procedural/src/storage/transformation.rs @@ -38,6 +38,8 @@ use quote::quote; use super::*; +const NUMBER_OF_INSTANCE: usize = 16; + // try macro but returning tokenized error macro_rules! try_tok(( $expre : expr ) => { match $expre { @@ -57,11 +59,21 @@ pub fn decl_storage_impl(input: TokenStream) -> TokenStream { ident: storetype, module_ident, mod_param: strait, + mod_instance, + mod_instantiable, + mod_default_instance, crate_ident: cratename, content: ext::Braces { content: storage_lines, ..}, extra_genesis, + extra_genesis_skip_phantom_data_field, .. } = def; + + let instance_opts = match get_instance_opts(mod_instance, mod_instantiable, mod_default_instance) { + Ok(opts) => opts, + Err(err) => return err.to_compile_error().into(), + }; + let hidden_crate_name = hidden_crate.map(|rc| rc.ident.content).map(|i| i.to_string()) .unwrap_or_else(|| "decl_storage".to_string()); let scrate = generate_crate_access(&hidden_crate_name, "srml-support"); @@ -89,13 +101,16 @@ pub fn decl_storage_impl(input: TokenStream) -> TokenStream { &scrate, &traitinstance, &traittype, + &instance_opts, &storage_lines, &extra_genesis, + extra_genesis_skip_phantom_data_field.is_some(), )); let decl_storage_items = decl_storage_items( &scrate, &traitinstance, &traittype, + &instance_opts, &cratename, &storage_lines, ); @@ -104,19 +119,29 @@ pub fn decl_storage_impl(input: TokenStream) -> TokenStream { ); let impl_store_items = impl_store_items( &traitinstance, + &instance_opts.instance, &storage_lines, ); let impl_store_fns = impl_store_fns( &scrate, &traitinstance, + &instance_opts.instance, &storage_lines, ); let (store_default_struct, store_functions_to_metadata) = store_functions_to_metadata( &scrate, &traitinstance, &traittype, + &instance_opts, &storage_lines, ); + + let InstanceOpts { + instance, + bound_instantiable, + .. + } = instance_opts; + let cratename_string = cratename.to_string(); let expanded = quote! { #scrate_decl @@ -125,10 +150,10 @@ pub fn decl_storage_impl(input: TokenStream) -> TokenStream { #decl_store_items } #store_default_struct - impl<#traitinstance: #traittype> #storetype for #module_ident<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #storetype for #module_ident<#traitinstance, #instance> { #impl_store_items } - impl<#traitinstance: 'static + #traittype> #module_ident<#traitinstance> { + impl<#traitinstance: 'static + #traittype, #instance #bound_instantiable> #module_ident<#traitinstance, #instance> { #impl_store_fns #[doc(hidden)] pub fn store_metadata() -> #scrate::storage::generator::StorageMetadata { @@ -157,10 +182,20 @@ fn decl_store_extra_genesis( scrate: &TokenStream2, traitinstance: &Ident, traittype: &syn::TypeParamBound, + instance_opts: &InstanceOpts, storage_lines: &ext::Punctuated, extra_genesis: &Option, + extra_genesis_skip_phantom_data_field: bool, ) -> Result { + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + let mut is_trait_needed = false; let mut has_trait_field = false; let mut serde_complete_bound = std::collections::HashSet::new(); @@ -222,7 +257,7 @@ fn decl_store_extra_genesis( }, }); opt_build = Some(build.as_ref().map(|b| &b.expr.content).map(|b|quote!( #b )) - .unwrap_or_else(|| quote!( (|config: &GenesisConfig<#traitinstance>| config.#ident.clone()) ))); + .unwrap_or_else(|| quote!( (|config: &GenesisConfig<#traitinstance, #instance>| config.#ident.clone()) ))); let fielddefault = default_value.inner.as_ref().map(|d| &d.expr).map(|d| if type_infos.is_option { @@ -246,8 +281,7 @@ fn decl_store_extra_genesis( use #scrate::codec::{Encode, Decode}; let v = (#builder)(&self); - <#name<#traitinstance> as #scrate::storage::generator::StorageValue<#typ>>::put(&v, &storage); - + <#name<#traitinstance, #instance> as #scrate::storage::generator::StorageValue<#typ>>::put(&v, &storage); }} }, DeclStorageTypeInfosKind::Map { key_type, .. } => { @@ -257,7 +291,7 @@ fn decl_store_extra_genesis( let data = (#builder)(&self); for (k, v) in data.into_iter() { - <#name<#traitinstance> as #scrate::storage::generator::StorageMap<#key_type, #typ>>::insert(&k, &v, &storage); + <#name<#traitinstance, #instance> as #scrate::storage::generator::StorageMap<#key_type, #typ>>::insert(&k, &v, &storage); } }} }, @@ -335,24 +369,26 @@ fn decl_store_extra_genesis( || !genesis_extrafields.is_empty() || !builders.is_empty(); Ok(if is_extra_genesis_needed { - let (fparam, sparam, ph_field, ph_default) = if is_trait_needed { - if has_trait_field { + let (fparam_struct, fparam_impl, sparam, ph_field, ph_default) = if is_trait_needed { + if (has_trait_field && instance.is_none()) || extra_genesis_skip_phantom_data_field { // no phantom data required ( - quote!(<#traitinstance: #traittype>), - quote!(<#traitinstance>), + quote!(<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>), + quote!(<#traitinstance: #traittype, #instance #bound_instantiable>), + quote!(<#traitinstance, #instance>), quote!(), quote!(), ) } else { // need phantom data ( - quote!(<#traitinstance: #traittype>), - quote!(<#traitinstance>), + quote!(<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>), + quote!(<#traitinstance: #traittype, #instance #bound_instantiable>), + quote!(<#traitinstance, #instance>), quote!{ #[serde(skip)] - pub _genesis_phantom_data: #scrate::storage::generator::PhantomData<#traitinstance>, + pub _genesis_phantom_data: #scrate::storage::generator::PhantomData<(#traitinstance #comma_instance)>, }, quote!{ _genesis_phantom_data: Default::default(), @@ -361,7 +397,7 @@ fn decl_store_extra_genesis( } } else { // do not even need type parameter - (quote!(), quote!(), quote!(), quote!()) + (quote!(), quote!(), quote!(), quote!(), quote!()) }; quote!{ @@ -370,14 +406,14 @@ fn decl_store_extra_genesis( #[serde(rename_all = "camelCase")] #[serde(deny_unknown_fields)] #serde_bug_bound - pub struct GenesisConfig#fparam { + pub struct GenesisConfig#fparam_struct { #ph_field #config_field #genesis_extrafields } #[cfg(feature = "std")] - impl#fparam Default for GenesisConfig#sparam { + impl#fparam_impl Default for GenesisConfig#sparam { fn default() -> Self { GenesisConfig { #ph_default @@ -388,7 +424,7 @@ fn decl_store_extra_genesis( } #[cfg(feature = "std")] - impl#fparam #scrate::runtime_primitives::BuildStorage for GenesisConfig#sparam { + impl#fparam_impl #scrate::runtime_primitives::BuildStorage for GenesisConfig#sparam { fn assimilate_storage(self, r: &mut #scrate::runtime_primitives::StorageOverlay, c: &mut #scrate::runtime_primitives::ChildrenStorageOverlay) -> ::std::result::Result<(), String> { use #scrate::rstd::{cell::RefCell, marker::PhantomData}; let storage = (RefCell::new(r), PhantomData::::default()); @@ -412,11 +448,96 @@ fn decl_storage_items( scrate: &TokenStream2, traitinstance: &Ident, traittype: &syn::TypeParamBound, + instance_opts: &InstanceOpts, cratename: &Ident, storage_lines: &ext::Punctuated, ) -> TokenStream2 { let mut impls = TokenStream2::new(); + + let InstanceOpts { + instance, + default_instance, + instantiable, + .. + } = instance_opts; + + // Build Instantiable trait + if instance.is_some() { + let mut method_defs = TokenStream2::new(); + let mut method_impls = TokenStream2::new(); + for sline in storage_lines.inner.iter() { + let DeclStorageLine { + storage_type, + name, + .. + } = sline; + + let type_infos = get_type_infos(storage_type); + + let method_name = syn::Ident::new(&format!("build_prefix_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + + method_defs.extend(quote!{ fn #method_name(prefix: &'static [u8]) -> &'static [u8]; }); + method_impls.extend(quote!{ + fn #method_name(prefix: &'static [u8]) -> &'static [u8] { + static LAZY: #scrate::lazy::Lazy<#scrate::rstd::vec::Vec> = #scrate::lazy::Lazy::INIT; + LAZY.get(|| { + let mut final_prefix = #scrate::rstd::vec::Vec::new(); + final_prefix.extend_from_slice(prefix); + final_prefix.extend_from_slice(Self::INSTANCE_PREFIX.as_bytes()); + final_prefix + }) + } + }); + + if let DeclStorageTypeInfosKind::Map { is_linked: true, .. } = type_infos.kind { + let method_name = syn::Ident::new(&format!("build_head_key_once_for_{}", name.to_string()), proc_macro2::Span::call_site()); + + method_defs.extend(quote!{ fn #method_name(prefix: &'static [u8]) -> &'static [u8]; }); + method_impls.extend(quote!{ + fn #method_name(prefix: &'static [u8]) -> &'static [u8] { + static LAZY: #scrate::lazy::Lazy<#scrate::rstd::vec::Vec> = #scrate::lazy::Lazy::INIT; + LAZY.get(|| { + let mut final_prefix = #scrate::rstd::vec::Vec::new(); + final_prefix.extend_from_slice("head of ".as_bytes()); + final_prefix.extend_from_slice(prefix); + final_prefix.extend_from_slice(Self::INSTANCE_PREFIX.as_bytes()); + final_prefix + }) + } + }); + } + } + + impls.extend(quote! { + pub trait #instantiable: 'static { + const INSTANCE_PREFIX: &'static str; + #method_defs + } + }); + + let instances = (0..NUMBER_OF_INSTANCE) + .map(|i| { + let name = format!("Instance{}", i); + let ident = syn::Ident::new(&name, proc_macro2::Span::call_site()); + (name, ident) + }) + .chain(default_instance.clone().map(|ident| (String::new(), ident))); + + for (prefix, ident) in instances { + impls.extend(quote! { + // Those trait are derived because of wrong bounds for generics + #[cfg_attr(feature = "std", derive(Debug))] + #[derive(Clone, Eq, PartialEq, #scrate::codec::Encode, #scrate::codec::Decode)] + pub struct #ident; + impl #instantiable for #ident { + const INSTANCE_PREFIX: &'static str = #prefix; + #method_impls + } + }); + } + } + for sline in storage_lines.inner.iter() { let DeclStorageLine { attrs, @@ -435,8 +556,10 @@ fn decl_storage_items( let i = impls::Impls { scrate, visibility, + cratename, traitinstance, traittype, + instance_opts, type_infos, fielddefault: default_value.inner.as_ref().map(|d| &d.expr).map(|d| quote!( #d )) .unwrap_or_else(|| quote!{ Default::default() }), @@ -474,13 +597,14 @@ fn decl_store_items( fn impl_store_items( traitinstance: &Ident, + instance: &Option, storage_lines: &ext::Punctuated, ) -> TokenStream2 { storage_lines.inner.iter().map(|sline| &sline.name) .fold(TokenStream2::new(), |mut items, name| { items.extend( quote!( - type #name = #name<#traitinstance>; + type #name = #name<#traitinstance, #instance>; ) ); items @@ -490,6 +614,7 @@ fn impl_store_items( fn impl_store_fns( scrate: &TokenStream2, traitinstance: &Ident, + instance: &Option, storage_lines: &ext::Punctuated, ) -> TokenStream2 { let mut items = TokenStream2::new(); @@ -517,7 +642,7 @@ fn impl_store_fns( quote!{ #( #[ #attrs ] )* pub fn #get_fn() -> #value_type { - <#name<#traitinstance> as #scrate::storage::generator::StorageValue<#typ>> :: get(&#scrate::storage::RuntimeStorage) + <#name<#traitinstance, #instance> as #scrate::storage::generator::StorageValue<#typ>> :: get(&#scrate::storage::RuntimeStorage) } } }, @@ -525,7 +650,7 @@ fn impl_store_fns( quote!{ #( #[ #attrs ] )* pub fn #get_fn>(key: K) -> #value_type { - <#name<#traitinstance> as #scrate::storage::generator::StorageMap<#key_type, #typ>> :: get(key.borrow(), &#scrate::storage::RuntimeStorage) + <#name<#traitinstance, #instance> as #scrate::storage::generator::StorageMap<#key_type, #typ>> :: get(key.borrow(), &#scrate::storage::RuntimeStorage) } } } @@ -540,9 +665,18 @@ fn store_functions_to_metadata ( scrate: &TokenStream2, traitinstance: &Ident, traittype: &syn::TypeParamBound, + instance_opts: &InstanceOpts, storage_lines: &ext::Punctuated, ) -> (TokenStream2, TokenStream2) { + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + let mut items = TokenStream2::new(); let mut default_getter_struct_def = TokenStream2::new(); for sline in storage_lines.inner.iter() { @@ -613,7 +747,7 @@ fn store_functions_to_metadata ( ty: #stype, default: #scrate::storage::generator::DecodeDifferent::Encode( #scrate::storage::generator::DefaultByteGetter( - &#struct_name::<#traitinstance>(#scrate::rstd::marker::PhantomData) + &#struct_name::<#traitinstance, #instance>(#scrate::rstd::marker::PhantomData) ) ), documentation: #scrate::storage::generator::DecodeDifferent::Encode(&[ #docs ]), @@ -622,12 +756,12 @@ fn store_functions_to_metadata ( items.extend(item); let def_get = quote! { #[doc(hidden)] - pub struct #struct_name<#traitinstance>(pub #scrate::rstd::marker::PhantomData<#traitinstance>); + pub struct #struct_name<#traitinstance, #instance #bound_instantiable #equal_default_instance>(pub #scrate::rstd::marker::PhantomData<(#traitinstance #comma_instance)>); #[cfg(feature = "std")] #[allow(non_upper_case_globals)] static #cache_name: #scrate::once_cell::sync::OnceCell<#scrate::rstd::vec::Vec> = #scrate::once_cell::sync::OnceCell::INIT; #[cfg(feature = "std")] - impl<#traitinstance: #traittype> #scrate::storage::generator::DefaultByte for #struct_name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::generator::DefaultByte for #struct_name<#traitinstance, #instance> { fn default_byte(&self) -> #scrate::rstd::vec::Vec { use #scrate::codec::Encode; #cache_name.get_or_init(|| { @@ -637,7 +771,7 @@ fn store_functions_to_metadata ( } } #[cfg(not(feature = "std"))] - impl<#traitinstance: #traittype> #scrate::storage::generator::DefaultByte for #struct_name<#traitinstance> { + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::generator::DefaultByte for #struct_name<#traitinstance, #instance> { fn default_byte(&self) -> #scrate::rstd::vec::Vec { use #scrate::codec::Encode; let def_val: #value_type = #default; @@ -708,3 +842,44 @@ fn get_type_infos(storage_type: &DeclStorageType) -> DeclStorageTypeInfos { } } + +#[derive(Default)] +pub(crate) struct InstanceOpts { + pub instance: Option, + pub default_instance: Option, + pub instantiable: Option, + pub comma_instance: TokenStream2, + pub equal_default_instance: TokenStream2, + pub bound_instantiable: TokenStream2, +} + +fn get_instance_opts( + instance: Option, + instantiable: Option, + default_instance: Option, +) -> syn::Result { + + let right_syntax = "Should be $Instance: $Instantiable = $DefaultInstance"; + + match (instance, instantiable, default_instance) { + (Some(instance), Some(instantiable), default_instance_def) => { + let (equal_default_instance, default_instance) = if let Some(default_instance) = default_instance_def { + (quote!{= #default_instance}, Some(default_instance)) + } else { + (quote!{}, None) + }; + Ok(InstanceOpts { + comma_instance: quote!{, #instance}, + equal_default_instance, + bound_instantiable: quote!{: #instantiable}, + instance: Some(instance), + default_instance, + instantiable: Some(instantiable), + }) + }, + (None, None, None) => Ok(Default::default()), + (Some(instance), None, _) => Err(syn::Error::new(instance.span(), format!("Expect instantiable trait bound for instance: {}. {}", instance, right_syntax))), + (None, Some(instantiable), _) => Err(syn::Error::new(instantiable.span(), format!("Expect instance generic for bound instantiable: {}. {}", instantiable, right_syntax))), + (None, _, Some(default_instance)) => Err(syn::Error::new(default_instance.span(), format!("Expect instance generic for default instance: {}. {}", default_instance, right_syntax))), + } +} diff --git a/substrate/srml/support/src/dispatch.rs b/substrate/srml/support/src/dispatch.rs index 0e842a9802..c6151d2390 100644 --- a/substrate/srml/support/src/dispatch.rs +++ b/substrate/srml/support/src/dispatch.rs @@ -91,20 +91,28 @@ impl Parameter for T where T: Codec + Clone + Eq {} /// /// The `on_initialise` and `on_finalise` functions are special, since it can either take no /// parameters, or one parameter, which has the runtime's block number type. +/// +/// ### Module with instances +/// +/// decl_module! support modules with instances with the following syntax: (DefaultInstance type is +/// optionnal) +/// ```nocompile +/// pub struct Module, I: Instance = DefaultInstance> for enum Call where origin: T::Origin {} +/// ``` #[macro_export] macro_rules! decl_module { // Macro transformations (to convert invocations with incomplete parameters to the canonical // form) ( $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty { $($t:tt)* } ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = system {} {} @@ -115,14 +123,14 @@ macro_rules! decl_module { }; ( $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $($t:tt)* } ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system {} {} @@ -134,21 +142,21 @@ macro_rules! decl_module { (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident {} { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $vis:vis fn deposit_event $(<$dpeg:ident>)* () = default; + $vis:vis fn deposit_event $(<$dpeg:ident $(, $dpeg_instance:ident)?>)* () = default; $($rest:tt)* ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system - { $vis fn deposit_event $(<$dpeg>)* () = default; } + { $vis fn deposit_event $(<$dpeg $(, $dpeg_instance)?>)* () = default; } { $( $on_initialise )* } { $( $on_finalise )* } [ $($t)* ] @@ -157,23 +165,23 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident {} { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $vis:vis fn deposit_event $(<$dpeg:ident>)* ( + $vis:vis fn deposit_event $(<$dpeg:ident $(, $dpeg_instance:ident)?>)* ( $($param_name:ident : $param:ty),* ) { $( $impl:tt )* } $($rest:tt)* ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system - { $vis fn deposit_event $(<$dpeg>)* ($( $param_name: $param ),* ) { $( $impl )* } } + { $vis fn deposit_event $(<$dpeg $(, $dpeg_instance)?>)* ($( $param_name: $param ),* ) { $( $impl )* } } { $( $on_initialise )* } { $( $on_finalise )* } [ $($t)* ] @@ -182,7 +190,7 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -194,7 +202,7 @@ macro_rules! decl_module { ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { $( $deposit_event )* } { $( $on_initialise )* } @@ -205,7 +213,7 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } {} @@ -217,7 +225,7 @@ macro_rules! decl_module { ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { $( $deposit_event )* } { fn on_initialise( $( $param_name : $param ),* ) { $( $impl )* } } @@ -228,7 +236,7 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -242,7 +250,7 @@ macro_rules! decl_module { ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, $instance: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { $( $deposit_event )* } { $( $on_initialise )* } @@ -253,13 +261,14 @@ macro_rules! decl_module { $fn_vis fn $fn_name( $origin $( , $(#[$codec_attr])* $param_name : $param )* ) $( -> $result )* { $( $impl )* } + { $($instance: $instantiable)? } ] $($rest)* ); }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -279,7 +288,7 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -299,7 +308,7 @@ macro_rules! decl_module { }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -313,7 +322,7 @@ macro_rules! decl_module { ) => { decl_module!(@normalize $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, $instance: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { $( $deposit_event )* } { $( $on_initialise )* } @@ -324,13 +333,14 @@ macro_rules! decl_module { $fn_vis fn $fn_name( root $( , $(#[$codec_attr])* $param_name : $param )* ) $( -> $result )* { $( $impl )* } + { $($instance: $instantiable)? } ] $($rest)* ); }; (@normalize $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } @@ -339,7 +349,7 @@ macro_rules! decl_module { ) => { decl_module!(@imp $(#[$attr])* - pub struct $mod_type<$trait_instance: $trait_name> + pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { $($t)* } @@ -354,62 +364,46 @@ macro_rules! decl_module { (@call root - $mod_type:ident $trait_instance:ident $fn_name:ident $origin:ident $system:ident [ $( $param_name:ident),* ] + $mod_type:ident<$trait_instance:ident $(, $instance:ident)?> $fn_name:ident $origin:ident $system:ident [ $( $param_name:ident),* ] ) => { { $system::ensure_root($origin)?; - <$mod_type<$trait_instance>>::$fn_name( $( $param_name ),* ) + <$mod_type<$trait_instance $(, $instance)?>>::$fn_name( $( $param_name ),* ) } }; (@call $ingore:ident - $mod_type:ident $trait_instance:ident $fn_name:ident $origin:ident $system:ident [ $( $param_name:ident),* ] + $mod_type:ident<$trait_instance:ident $(, $instance:ident)?> $fn_name:ident $origin:ident $system:ident [ $( $param_name:ident),* ] ) => { - <$mod_type<$trait_instance>>::$fn_name( $origin $(, $param_name )* ) + <$mod_type<$trait_instance $(, $instance)?>>::$fn_name( $origin $(, $param_name )* ) }; // no `deposit_event` function wanted (@impl_deposit_event - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, I: $instantiable:path)?>; $system:ident; ) => {}; - // Non-generic event (@impl_deposit_event - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $system:ident; - $vis:vis fn deposit_event() = default; + $vis:vis fn deposit_event$(<$event_trait_instance:ident $(, $event_instance:ident)?>)?() = default; ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $vis fn deposit_event(event: Event) { + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $module<$trait_instance $(, $instance)?> { + $vis fn deposit_event(event: Event$(<$event_trait_instance $(, $event_instance)?>)?) { <$system::Module<$trait_instance>>::deposit_event( - <$trait_instance as $trait_name>::Event::from(event).into() - ); - } - } - }; - - // Generic event - (@impl_deposit_event - $module:ident<$trait_instance:ident: $trait_name:ident>; - $system:ident; - $vis:vis fn deposit_event<$ignore:ident>() = default; - ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $vis fn deposit_event(event: Event<$trait_instance>) { - <$system::Module<$trait_instance>>::deposit_event( - <$trait_instance as $trait_name>::Event::from(event).into() + <$trait_instance as $trait_name$(<$instance>)?>::Event::from(event).into() ); } } }; (@impl_deposit_event - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $system:ident; $vis:vis fn deposit_event($param:ident : $param_ty:ty) { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $module<$trait_instance $(, $instance)?> { $vis fn deposit_event($param: $param_ty) { $( $impl )* } @@ -417,74 +411,74 @@ macro_rules! decl_module { }; (@impl_on_initialise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; fn on_initialise() { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> { fn on_initialise(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } } }; (@impl_on_initialise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; fn on_initialise($param:ident : $param_ty:ty) { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> { fn on_initialise($param: $param_ty) { $( $impl )* } } }; (@impl_on_initialise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> {} }; (@impl_on_finalise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; fn on_finalise() { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> { fn on_finalise(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } } }; (@impl_on_finalise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; fn on_finalise($param:ident : $param_ty:ty) { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> { fn on_finalise($param: $param_ty) { $( $impl )* } } }; (@impl_on_finalise - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; ) => { - impl<$trait_instance: $trait_name> + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> - for $module<$trait_instance> + for $module<$trait_instance$(, $instance)?> { } }; (@impl_function - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $origin_ty:ty; root; $(#[doc = $doc_attr:tt])* @@ -498,7 +492,7 @@ macro_rules! decl_module { }; (@impl_function - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $origin_ty:ty; root; $(#[doc = $doc_attr:tt])* @@ -513,7 +507,7 @@ macro_rules! decl_module { }; (@impl_function - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $origin_ty:ty; $ignore:ident; $(#[doc = $doc_attr:tt])* @@ -531,7 +525,7 @@ macro_rules! decl_module { }; (@impl_function - $module:ident<$trait_instance:ident: $trait_name:ident>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $origin_ty:ty; $ignore:ident; $(#[doc = $doc_attr:tt])* @@ -549,13 +543,14 @@ macro_rules! decl_module { (@imp $(#[$attr:meta])* - pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path $(= $module_default_instance:path)?)?> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( $from:ident $( , $(#[$codec_attr:ident])* $param_name:ident : $param:ty)* ) $( -> $result:ty )* { $( $impl:tt )* } + { $($fn_instance:ident: $fn_instantiable:path)? } )* } { $( $deposit_event:tt )* } @@ -569,29 +564,29 @@ macro_rules! decl_module { // serde-derive for when we attempt to derive `Deserialize` on these types, // in a situation where we've imported `srml_support` as another name. #[cfg(feature = "std")] - pub struct $mod_type<$trait_instance: $trait_name>(::std::marker::PhantomData<$trait_instance>); + pub struct $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable $( = $module_default_instance)?)?>(::std::marker::PhantomData<($trait_instance $(, $instance)?)>); // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, Copy, PartialEq, Eq)] #[cfg_attr(feature = "std", derive(Debug))] #[cfg(not(feature = "std"))] - pub struct $mod_type<$trait_instance: $trait_name>(::core::marker::PhantomData<$trait_instance>); + pub struct $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable $( = $module_default_instance)?)?>(::core::marker::PhantomData<($trait_instance $(, $instance)?)>); decl_module! { @impl_on_initialise - $mod_type<$trait_instance: $trait_name>; + $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $( $on_initialise )* } decl_module! { @impl_on_finalise - $mod_type<$trait_instance: $trait_name>; + $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $( $on_finalise )* } decl_module! { @impl_deposit_event - $mod_type<$trait_instance: $trait_name>; + $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $system; $( $deposit_event )* } @@ -599,11 +594,11 @@ macro_rules! decl_module { /// Can also be called using [`Call`]. /// /// [`Call`]: enum.Call.html - impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $mod_type<$trait_instance $(, $instance)?> { $( decl_module! { @impl_function - $mod_type<$trait_instance: $trait_name>; + $mod_type<$trait_instance: $trait_name $(, $fn_instance: $fn_instantiable)?>; $origin_type; $from; $(#[doc = $doc_attr])* @@ -616,9 +611,9 @@ macro_rules! decl_module { #[cfg(feature = "std")] $(#[$attr])* - pub enum $call_type<$trait_instance: $trait_name> { + pub enum $call_type<$trait_instance: $trait_name$(, $instance: $instantiable $( = $module_default_instance)?)?> { #[doc(hidden)] - __PhantomItem(::std::marker::PhantomData<$trait_instance>, $crate::dispatch::Never), + __PhantomItem(::std::marker::PhantomData<($trait_instance $(, $instance)?)>, $crate::dispatch::Never), $( #[allow(non_camel_case_types)] $(#[doc = $doc_attr])* @@ -628,9 +623,9 @@ macro_rules! decl_module { #[cfg(not(feature = "std"))] $(#[$attr])* - pub enum $call_type<$trait_instance: $trait_name> { + pub enum $call_type<$trait_instance: $trait_name$(, $instance: $instantiable $( = $module_default_instance)?)?> { #[doc(hidden)] - __PhantomItem(::core::marker::PhantomData<$trait_instance>, $crate::dispatch::Never), + __PhantomItem(::core::marker::PhantomData<($trait_instance $(, $instance)?)>, $crate::dispatch::Never), $( #[allow(non_camel_case_types)] $(#[doc = $doc_attr])* @@ -640,8 +635,8 @@ macro_rules! decl_module { // manual implementation of clone/eq/partialeq because using derive erroneously requires // clone/eq/partialeq from T. - impl<$trait_instance: $trait_name> $crate::dispatch::Clone - for $call_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Clone + for $call_type<$trait_instance $(, $instance)?> { fn clone(&self) -> Self { match *self { @@ -653,8 +648,8 @@ macro_rules! decl_module { } } } - impl<$trait_instance: $trait_name> $crate::dispatch::PartialEq - for $call_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::PartialEq + for $call_type<$trait_instance $(, $instance)?> { fn eq(&self, _other: &Self) -> bool { match *self { @@ -675,13 +670,13 @@ macro_rules! decl_module { } } } - impl<$trait_instance: $trait_name> $crate::dispatch::Eq - for $call_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Eq + for $call_type<$trait_instance $(, $instance)?> {} #[cfg(feature = "std")] - impl<$trait_instance: $trait_name> $crate::dispatch::fmt::Debug - for $call_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::fmt::Debug + for $call_type<$trait_instance $(, $instance)?> { fn fmt(&self, _f: &mut $crate::dispatch::fmt::Formatter) -> $crate::dispatch::result::Result<(), $crate::dispatch::fmt::Error> { match *self { @@ -697,20 +692,20 @@ macro_rules! decl_module { } } - impl<$trait_instance: $trait_name> $crate::dispatch::Decode for $call_type<$trait_instance> { - fn decode(input: &mut I) -> Option { + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Decode for $call_type<$trait_instance $(, $instance)?> { + fn decode(input: &mut Input) -> Option { let _input_id = input.read_byte()?; $crate::__impl_decode!(input; _input_id; 0; $call_type; $( fn $fn_name( $( $(#[$codec_attr on type $param])* $param_name ),* ); )*) } } - impl<$trait_instance: $trait_name> $crate::dispatch::Encode for $call_type<$trait_instance> { + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Encode for $call_type<$trait_instance $(, $instance)?> { fn encode_to(&self, _dest: &mut W) { $crate::__impl_encode!(_dest; *self; 0; $call_type; $( fn $fn_name( $( $(#[$codec_attr on type $param])* $param_name ),* ); )*); } } - impl<$trait_instance: $trait_name> $crate::dispatch::Dispatchable - for $call_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Dispatchable + for $call_type<$trait_instance $(, $instance)?> { type Trait = $trait_instance; type Origin = $origin_type; @@ -721,7 +716,7 @@ macro_rules! decl_module { $crate::decl_module!( @call $from - $mod_type $trait_instance $fn_name _origin $system [ $( $param_name ),* ] + $mod_type<$trait_instance $(, $fn_instance)?> $fn_name _origin $system [ $( $param_name ),* ] ) }, )* @@ -729,20 +724,20 @@ macro_rules! decl_module { } } } - impl<$trait_instance: $trait_name> $crate::dispatch::Callable - for $mod_type<$trait_instance> + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $crate::dispatch::Callable + for $mod_type<$trait_instance $(, $instance)?> { - type Call = $call_type<$trait_instance>; + type Call = $call_type<$trait_instance $(, $instance)?>; } - impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $mod_type<$trait_instance $(, $instance)?> { #[doc(hidden)] pub fn dispatch>(d: D, origin: D::Origin) -> $crate::dispatch::Result { d.dispatch(origin) } } $crate::__dispatch_impl_metadata! { - $mod_type $trait_instance $trait_name $call_type $origin_type + $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?> $call_type $origin_type {$( $(#[doc = $doc_attr])* fn $fn_name($from $(, $(#[$codec_attr])* $param_name : $param )*); )*} } } @@ -949,10 +944,10 @@ macro_rules! __impl_outer_dispatch_common { #[doc(hidden)] macro_rules! __dispatch_impl_metadata { ( - $mod_type:ident $trait_instance:ident $trait_name:ident + $mod_type:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?> $($rest:tt)* ) => { - impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $mod_type<$trait_instance $(, $instance)?> { #[doc(hidden)] pub fn call_functions() -> &'static [$crate::dispatch::FunctionMetadata] { $crate::__call_to_functions!($($rest)*) diff --git a/substrate/srml/support/src/event.rs b/substrate/srml/support/src/event.rs index dc51b66a94..3dc132a490 100644 --- a/substrate/srml/support/src/event.rs +++ b/substrate/srml/support/src/event.rs @@ -88,16 +88,48 @@ pub use srml_metadata::{EventMetadata, DecodeDifferent, OuterEventMetadata, FnEn /// ``` /// /// The syntax for generic events requires the `where`. +/// +/// # Generic Event with Instance Example: +/// +/// ```rust +/// #[macro_use] +/// extern crate srml_support; +/// extern crate parity_codec as codec; +/// #[macro_use] +/// extern crate parity_codec; +/// #[macro_use] +/// extern crate serde_derive; +/// +///# struct DefaultInstance; +///# trait Instance {} +///# impl Instance for DefaultInstance {} +/// trait Trait { +/// type Balance; +/// type Token; +/// } +/// +/// // For module with instances, DefaultInstance is optionnal +/// decl_event!( +/// pub enum Event where +/// ::Balance, +/// ::Token +/// { +/// Message(Balance, Token), +/// } +/// ); +///# fn main() {} +/// ``` #[macro_export] macro_rules! decl_event { ( $(#[$attr:meta])* - pub enum Event<$evt_generic_param:ident> where + pub enum Event<$evt_generic_param:ident $(, $instance:ident $(: $instantiable:ident)? $( = $event_default_instance:path)? )?> where $( $tt:tt )* ) => { $crate::__decl_generic_event!( $( #[ $attr ] )*; $evt_generic_param; + $($instance $( = $event_default_instance)? )?; { $( $tt )* }; ); }; @@ -138,11 +170,13 @@ macro_rules! __decl_generic_event { ( $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $( $tt:tt )* }; ) => { $crate::__decl_generic_event!(@format_generic $( #[ $attr ] )*; $event_generic_param; + $($instance $( = $event_default_instance)? )?; { $( $tt )* }; {}; ); @@ -151,12 +185,14 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $generic_rename:ident = $generic_type:ty, $($rest:tt)* }; {$( $parsed:tt)*}; ) => { $crate::__decl_generic_event!(@format_generic $( #[ $attr ] )*; $event_generic_param; + $($instance $( = $event_default_instance)? )?; { $($rest)* }; { $($parsed)*, $generic_rename = $generic_type }; ); @@ -165,12 +201,14 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { <$generic:ident as $trait:path>::$trait_type:ident, $($rest:tt)* }; {$($parsed:tt)*}; ) => { $crate::__decl_generic_event!(@format_generic $( #[ $attr ] )*; $event_generic_param; + $($instance $( = $event_default_instance)? )?; { $($rest)* }; { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type }; ); @@ -179,6 +217,7 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $generic_type:ty, $($rest:tt)* }; {$($parsed:tt)*}; ) => { @@ -188,12 +227,14 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { <$generic:ident as $trait:path>::$trait_type:ident { $( $events:tt )* } }; {$( $parsed:tt)*}; ) => { $crate::__decl_generic_event!(@generate $( #[ $attr ] )*; $event_generic_param; + $($instance $( = $event_default_instance)? )?; { $($events)* }; { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type}; ); @@ -202,12 +243,14 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $generic_rename:ident = $generic_type:ty { $( $events:tt )* } }; {$( $parsed:tt)*}; ) => { $crate::__decl_generic_event!(@generate $(#[$attr])*; $event_generic_param; + $($instance $( = $event_default_instance)? )?; { $($events)* }; { $($parsed)*, $generic_rename = $generic_type}; ); @@ -216,6 +259,7 @@ macro_rules! __decl_generic_event { (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $generic_type:ty { $( $events:tt )* } }; {$( $parsed:tt)*}; ) => { @@ -224,6 +268,7 @@ macro_rules! __decl_generic_event { (@generate $(#[$attr:meta])*; $event_generic_param:ident; + $($instance:ident $( = $event_default_instance:path)? )?; { $( $events:tt )* }; { ,$( $generic_param:ident = $generic_type:ty ),* }; ) => { @@ -231,20 +276,22 @@ macro_rules! __decl_generic_event { /// /// [`RawEvent`]: enum.RawEvent.html /// [`Trait`]: trait.Trait.html - pub type Event<$event_generic_param> = RawEvent<$( $generic_type ),*>; + pub type Event<$event_generic_param $(, $instance $( = $event_default_instance)? )?> = RawEvent<$( $generic_type ),* $(, $instance)? >; // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, $crate::codec::Encode, $crate::codec::Decode)] #[cfg_attr(feature = "std", derive(Debug))] $(#[$attr])* - pub enum RawEvent<$( $generic_param ),*> { + pub enum RawEvent<$( $generic_param ),* $(, $instance)? > { + #[doc(hidden)] + $(PhantomData($crate::rstd::marker::PhantomData<$instance>),)? $( $events )* } - impl<$( $generic_param ),*> From> for () { - fn from(_: RawEvent<$( $generic_param ),*>) -> () { () } + impl<$( $generic_param ),* $(, $instance)? > From> for () { + fn from(_: RawEvent<$( $generic_param ),* $(, $instance)?>) -> () { () } } - impl<$( $generic_param ),*> RawEvent<$( $generic_param ),*> { + impl<$( $generic_param ),* $(, $instance)?> RawEvent<$( $generic_param ),* $(, $instance)?> { #[allow(dead_code)] pub fn metadata() -> &'static [$crate::event::EventMetadata] { $crate::__events_to_metadata!(; $( $events )* ) @@ -297,7 +344,7 @@ macro_rules! impl_outer_event { ( $(#[$attr:meta])* pub enum $name:ident for $runtime:ident { - $( $rest:tt $( <$t:ident> )*, )* + $( $rest:tt $( <$t:ident $(, $rest_instance:path)? > )*, )* } ) => { $crate::impl_outer_event!( @@ -305,14 +352,14 @@ macro_rules! impl_outer_event { $name; $runtime; system; - Modules { $( $rest $(<$t>)*, )* }; + Modules { $( $rest $(<$t $(, $rest_instance)? >)*, )* }; ; ); }; ( $(#[$attr:meta])* pub enum $name:ident for $runtime:ident where system = $system:ident { - $( $rest:tt $( <$t:ident> )*, )* + $( $rest:tt $( <$t:ident $(, $rest_instance:path)? > )*, )* } ) => { $crate::impl_outer_event!( @@ -320,7 +367,7 @@ macro_rules! impl_outer_event { $name; $runtime; $system; - Modules { $( $rest $(<$t>)*, )* }; + Modules { $( $rest $(<$t $(, $rest_instance)? >)*, )* }; ; ); }; @@ -330,18 +377,18 @@ macro_rules! impl_outer_event { $runtime:ident; $system:ident; Modules { - $module:ident, - $( $rest:tt $( <$t:ident> )*, )* + $module:ident, + $( $rest:tt $( <$t:ident $(, $rest_instance:path)? > )*, )* }; - $( $module_name:ident::Event $( <$generic_param:ident> )*, )*; + $( $module_name:ident::Event $( <$generic_param:ident $(, $generic_instance:path)? > )*, )*; ) => { $crate::impl_outer_event!( $( #[$attr] )*; $name; $runtime; $system; - Modules { $( $rest $(<$t>)*, )* }; - $( $module_name::Event $( <$generic_param> )*, )* $module::Event<$runtime>,; + Modules { $( $rest $(<$t $(, $rest_instance)? >)*, )* }; + $( $module_name::Event $( <$generic_param $(, $generic_instance)? > )*, )* $module::Event<$runtime $(, $instance)? >,; ); }; ( @@ -351,17 +398,17 @@ macro_rules! impl_outer_event { $system:ident; Modules { $module:ident, - $( $rest:tt, )* + $( $rest:tt )* }; - $( $module_name:ident::Event $( <$generic_param:ident> )*, )*; + $( $module_name:ident::Event $( <$generic_param:ident $(, $generic_instance:path)? > )*, )*; ) => { $crate::impl_outer_event!( $( #[$attr] )*; $name; $runtime; $system; - Modules { $( $rest, )* }; - $( $module_name::Event $( <$generic_param> )*, )* $module::Event,; + Modules { $( $rest )* }; + $( $module_name::Event $( <$generic_param $(, $generic_instance)? > )*, )* $module::Event,; ); }; @@ -373,7 +420,7 @@ macro_rules! impl_outer_event { $runtime:ident; $system:ident; Modules {}; - $( $module_name:ident::Event $( <$generic_param:ident> )*, )*; + $( $module_name:ident::Event $( <$generic_param:ident $(, $generic_instance:path)? > )*, )*; ) => { // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, $crate::codec::Encode, $crate::codec::Decode)] @@ -383,7 +430,7 @@ macro_rules! impl_outer_event { pub enum $name { system($system::Event), $( - $module_name( $module_name::Event $( <$generic_param> )* ), + $module_name( $module_name::Event $( <$generic_param $(, $generic_instance)? > )* ), )* } impl From<$system::Event> for $name { @@ -392,8 +439,8 @@ macro_rules! impl_outer_event { } } $( - impl From<$module_name::Event $( <$generic_param> )*> for $name { - fn from(x: $module_name::Event $( <$generic_param> )*) -> Self { + impl From<$module_name::Event $( <$generic_param $(, $generic_instance)? > )*> for $name { + fn from(x: $module_name::Event $( <$generic_param $(, $generic_instance)? > )*) -> Self { $name::$module_name(x) } } @@ -402,7 +449,7 @@ macro_rules! impl_outer_event { $runtime; $name; $system; - $( $module_name::Event $( <$generic_param> )*, )*; + $( $module_name::Event $( <$generic_param $(, $generic_instance)? > )*, )*; ); } } @@ -414,7 +461,7 @@ macro_rules! __impl_outer_event_json_metadata { $runtime:ident; $event_name:ident; $system:ident; - $( $module_name:ident::Event $( <$generic_param:ident> )*, )*; + $( $module_name:ident::Event $( <$generic_param:ident $(, $generic_instance:path)? > )*, )*; ) => { impl $runtime { #[allow(dead_code)] @@ -427,7 +474,7 @@ macro_rules! __impl_outer_event_json_metadata { , ( stringify!($module_name), $crate::event::FnEncode( - $module_name::Event $( ::<$generic_param> )* ::metadata + $module_name::Event $( ::<$generic_param $(, $generic_instance)? > )* ::metadata ) ) )* @@ -442,7 +489,7 @@ macro_rules! __impl_outer_event_json_metadata { #[allow(dead_code)] $crate::paste::item!{ pub fn [< __module_events_ $module_name >] () -> &'static [$crate::event::EventMetadata] { - $module_name::Event $( ::<$generic_param> )* ::metadata() + $module_name::Event $( ::<$generic_param $(, $generic_instance)? > )* ::metadata() } } )* diff --git a/substrate/srml/support/src/lib.rs b/substrate/srml/support/src/lib.rs index 7914e7d677..89b14fe2fc 100644 --- a/substrate/srml/support/src/lib.rs +++ b/substrate/srml/support/src/lib.rs @@ -64,6 +64,21 @@ pub use runtime_io::print; #[doc(inline)] pub use srml_support_procedural::decl_storage; +pub mod lazy { + use spin::Once; + + pub struct Lazy(Once); + + impl Lazy { + pub const INIT: Self = Lazy(Once::INIT); + + #[inline(always)] + pub fn get(&'static self, builder: F) -> &T where F: FnOnce() -> T { + self.0.call_once(builder) + } + } +} + #[macro_export] macro_rules! fail { ( $y:expr ) => {{ diff --git a/substrate/srml/support/src/metadata.rs b/substrate/srml/support/src/metadata.rs index 1a919e36f8..d61dbe4352 100644 --- a/substrate/srml/support/src/metadata.rs +++ b/substrate/srml/support/src/metadata.rs @@ -52,17 +52,17 @@ macro_rules! __runtime_modules_to_metadata { ( $runtime: ident; $( $metadata:expr ),*; - $mod:ident::$module:ident $(with)+ $($kw:ident)*, + $mod:ident::$module:ident $( < $instance:ident > )? $(with)+ $($kw:ident)*, $( $rest:tt )* ) => { $crate::__runtime_modules_to_metadata!( $runtime; $( $metadata, )* $crate::metadata::ModuleMetadata { name: $crate::metadata::DecodeDifferent::Encode(stringify!($mod)), - prefix: $crate::__runtime_modules_to_metadata_calls_storagename!($mod, $module, $runtime, $(with $kw)*), - storage: $crate::__runtime_modules_to_metadata_calls_storage!($mod, $module, $runtime, $(with $kw)*), - calls: $crate::__runtime_modules_to_metadata_calls_call!($mod, $module, $runtime, $(with $kw)*), - event: $crate::__runtime_modules_to_metadata_calls_event!($mod, $module, $runtime, $(with $kw)*), + prefix: $crate::__runtime_modules_to_metadata_calls_storagename!($mod, $module $( <$instance> )?, $runtime, $(with $kw)*), + storage: $crate::__runtime_modules_to_metadata_calls_storage!($mod, $module $( <$instance> )?, $runtime, $(with $kw)*), + calls: $crate::__runtime_modules_to_metadata_calls_call!($mod, $module $( <$instance> )?, $runtime, $(with $kw)*), + event: $crate::__runtime_modules_to_metadata_calls_event!($mod, $module $( <$instance> )?, $runtime, $(with $kw)*), }; $( $rest )* ) @@ -81,7 +81,7 @@ macro_rules! __runtime_modules_to_metadata_calls_call { // skip system ( system, - $skip_module: ident, + $skip_module: ident $( <$instance:ident> )?, $skip_runtime: ident, with Call $(with $kws:ident)* @@ -90,29 +90,29 @@ macro_rules! __runtime_modules_to_metadata_calls_call { }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with Call $(with $kws:ident)* ) => { Some($crate::metadata::DecodeDifferent::Encode( $crate::metadata::FnEncode( - $mod::$module::<$runtime>::call_functions + $mod::$module::<$runtime $(, $mod::$instance )?>::call_functions ) )) }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with $_:ident $(with $kws:ident)* ) => { - $crate::__runtime_modules_to_metadata_calls_call!( $mod, $module, $runtime, $(with $kws)* ); + $crate::__runtime_modules_to_metadata_calls_call!( $mod, $module $( <$instance> )?, $runtime, $(with $kws)* ); }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, ) => { None @@ -125,7 +125,7 @@ macro_rules! __runtime_modules_to_metadata_calls_call { macro_rules! __runtime_modules_to_metadata_calls_event { ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with Event $(with $kws:ident)* @@ -133,23 +133,23 @@ macro_rules! __runtime_modules_to_metadata_calls_event { Some($crate::metadata::DecodeDifferent::Encode( $crate::metadata::FnEncode( $crate::paste::expr!{ - $runtime:: [< __module_events_ $mod >] + $runtime:: [< __module_events_ $mod $(_ $instance)?>] } ) )) }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with $_:ident $(with $kws:ident)* ) => { - $crate::__runtime_modules_to_metadata_calls_event!( $mod, $module, $runtime, $(with $kws)* ); + $crate::__runtime_modules_to_metadata_calls_event!( $mod, $module $( <$instance> )?, $runtime, $(with $kws)* ); }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, ) => { None @@ -161,29 +161,29 @@ macro_rules! __runtime_modules_to_metadata_calls_event { macro_rules! __runtime_modules_to_metadata_calls_storagename { ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with Storage $(with $kws:ident)* ) => { $crate::metadata::DecodeDifferent::Encode( $crate::metadata::FnEncode( - $mod::$module::<$runtime>::store_metadata_name + $mod::$module::<$runtime $(, $mod::$instance )?>::store_metadata_name ) ) }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with $_:ident $(with $kws:ident)* ) => { - $crate::__runtime_modules_to_metadata_calls_storagename!( $mod, $module, $runtime, $(with $kws)* ); + $crate::__runtime_modules_to_metadata_calls_storagename!( $mod, $module $( <$instance> )?, $runtime, $(with $kws)* ); }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, ) => { $crate::metadata::DecodeDifferent::Encode( @@ -197,29 +197,29 @@ macro_rules! __runtime_modules_to_metadata_calls_storagename { macro_rules! __runtime_modules_to_metadata_calls_storage { ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with Storage $(with $kws:ident)* ) => { Some($crate::metadata::DecodeDifferent::Encode( $crate::metadata::FnEncode( - $mod::$module::<$runtime>::store_metadata_functions + $mod::$module::<$runtime $(, $mod::$instance )?>::store_metadata_functions ) )) }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, with $_:ident $(with $kws:ident)* ) => { - $crate::__runtime_modules_to_metadata_calls_storage!( $mod, $module, $runtime, $(with $kws)* ); + $crate::__runtime_modules_to_metadata_calls_storage!( $mod, $module $( <$instance> )?, $runtime, $(with $kws)* ); }; ( $mod: ident, - $module: ident, + $module: ident $( <$instance:ident> )?, $runtime: ident, ) => { None diff --git a/substrate/srml/support/src/origin.rs b/substrate/srml/support/src/origin.rs index 9b76c3ac2b..2d97f218e0 100644 --- a/substrate/srml/support/src/origin.rs +++ b/substrate/srml/support/src/origin.rs @@ -28,34 +28,20 @@ macro_rules! impl_outer_origin { ( $(#[$attr:meta])* pub enum $name:ident for $runtime:ident { - $( $module:ident $( <$generic:ident> )* ),* $(,)* + $( $module:ident $( <$generic:ident $(, $instance:path )? > )? ),* $(,)? } ) => { $crate::impl_outer_origin! { $(#[$attr])* pub enum $name for $runtime where system = system { - $( $module $( <$generic> )*, )* + $( $module $( <$generic $(, $instance )? > )?, )* } } }; - ( - $(#[$attr:meta])* - pub enum $name:ident for $runtime:ident where system = $system:ident {} - ) => { - $crate::impl_outer_origin!( - $( #[$attr] )*; - $name; - $runtime; - $system; - Modules { }; - ; - ); - }; ( $(#[$attr:meta])* pub enum $name:ident for $runtime:ident where system = $system:ident { - $module:ident, - $( $rest_module:ident $( <$rest_generic:ident> )* ),* $(,)* + $( $module:ident $( <$generic:ident $(, $instance:path )?> )? ),* $(,)? } ) => { $crate::impl_outer_origin!( @@ -63,64 +49,30 @@ macro_rules! impl_outer_origin { $name; $runtime; $system; - Modules { $( $rest_module $( <$rest_generic> )*, )* }; - $module; - ); - }; - ( - $(#[$attr:meta])* - pub enum $name:ident for $runtime:ident where system = $system:ident { - $module:ident, - $( $rest_module:ident $( <$rest_generic:ident> )* ),* $(,)* - } - ) => { - $crate::impl_outer_origin!( - $( #[$attr] )*; - $name; - $runtime; - $system; - Modules { $( $rest_module $( <$rest_generic> )*, )* }; - $module<$runtime>; + Modules { $( $module $( <$generic $(, $instance )? > )*, )* }; ); }; + + // Replace generic param with runtime + ( $(#[$attr:meta])*; $name:ident; $runtime:ident; $system:ident; Modules { - $module:ident, - $( $rest_module:ident $( <$rest_generic:ident> )*, )* + $module:ident $( )?, + $( $rest_module:tt )* }; - $( $parsed_module:ident $( <$generic_param:ident> )* ),*; + $( $parsed:tt )* ) => { $crate::impl_outer_origin!( $( #[$attr] )*; $name; $runtime; $system; - Modules { $( $rest_module $( <$rest_generic> )*, )* }; - $( $parsed_module $( <$generic_param> )* ),*, $module; - ); - }; - ( - $(#[$attr:meta])*; - $name:ident; - $runtime:ident; - $system:ident; - Modules { - $module:ident, - $( $rest_module:ident $( <$rest_generic:ident> )*, )* - }; - $( $parsed_module:ident $( <$generic_param:ident> )* ),*; - ) => { - $crate::impl_outer_origin!( - $( #[$attr] )*; - $name; - $runtime; - $system; - Modules { $( $rest_module $( <$rest_generic> )*, )* }; - $( $parsed_module $( <$generic_param> )* ),*, $module<$runtime>; + Modules { $( $rest_module )* }; + $( $parsed )* $module $( <$runtime $(, $instance )? > )?, ); }; @@ -131,8 +83,8 @@ macro_rules! impl_outer_origin { $name:ident; $runtime:ident; $system:ident; - Modules {}; - $( $module:ident $( <$generic_param:ident> )* ),*; + Modules { }; + $( $module:ident $( <$generic_param:ident $(, $generic_instance:path )? > )* ,)* ) => { // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq)] @@ -142,7 +94,7 @@ macro_rules! impl_outer_origin { pub enum $name { system($system::Origin<$runtime>), $( - $module($module::Origin $( <$generic_param> )* ), + $module($module::Origin $( <$generic_param $(, $generic_instance )? > )* ), )* #[allow(dead_code)] Void($crate::Void) @@ -175,13 +127,13 @@ macro_rules! impl_outer_origin { } } $( - impl From<$module::Origin $( <$generic_param> )*> for $name { - fn from(x: $module::Origin $( <$generic_param> )*) -> Self { + impl From<$module::Origin $( <$generic_param $(, $generic_instance )? > )*> for $name { + fn from(x: $module::Origin $( <$generic_param $(, $generic_instance )? > )*) -> Self { $name::$module(x) } } - impl Into )*>> for $name { - fn into(self) -> Option<$module::Origin $( <$generic_param> )*> { + impl Into )*>> for $name { + fn into(self) -> Option<$module::Origin $( <$generic_param $(, $generic_instance )? > )*> { if let $name::$module(l) = self { Some(l) } else { diff --git a/substrate/srml/support/src/runtime.rs b/substrate/srml/support/src/runtime.rs index dd48509451..c575383b26 100644 --- a/substrate/srml/support/src/runtime.rs +++ b/substrate/srml/support/src/runtime.rs @@ -37,6 +37,10 @@ /// System: system, /// Test: test::{default, Log(Test)}, /// Test2: test_with_long_module::{Module}, +/// +/// // Module with instances +/// Test3_Instance1: test3::::{Module, Call, Storage, Event, Config, Origin}, +/// Test3_DefaultInstance: test3::{Module, Call, Storage, Event, Config, Origin}, /// } /// ) /// ``` @@ -55,9 +59,9 @@ /// - `Module` /// - `Call` /// - `Storage` -/// - `Event` or `Event` (if the event is generic) -/// - `Origin` or `Origin` (if the origin is generic) -/// - `Config` or `Config` (if the config is generic) +/// - `Event` or `Event` (if the event is generic) or `Event` (if also over instance) +/// - `Origin` or `Origin` (if the origin is generic) or `Origin` (if also over instance) +/// - `Config` or `Config` (if the config is generic) or `Config` (if also over instance) /// - `Log( $(IDENT),* )` /// - `Inherent $( (CALL) )*` - If the module provides/can check inherents. The optional parameter /// is for modules that use a `Call` from a different module as @@ -84,155 +88,60 @@ macro_rules! construct_runtime { } ) => { construct_runtime!( - $runtime; - $block; - $node_block; - $uncheckedextrinsic; - $log_internal < $( $log_genarg ),* >; - ; + { + $runtime; + $block; + $node_block; + $uncheckedextrinsic; + $log_internal < $( $log_genarg ),* >; + }; + {}; $( $rest )* ); }; ( - $runtime:ident; - $block:ident; - $node_block:ty; - $uncheckedextrinsic:ident; - $log_internal:ident <$( $log_genarg:ty ),+>; - $( - $expanded_name:ident: $expanded_module:ident::{ - $( - $expanded_modules:ident - $( <$expanded_modules_generic:ident> )* - $( ( $( $expanded_modules_args:ident ),* ) )* - ),* - } - ),*; + { $( $preset:tt )* }; + { $( $expanded:tt )* }; $name:ident: $module:ident, - $( - $rest_name:ident: $rest_module:ident $( - ::{ - $( - $rest_modules:ident - $( <$rest_modules_generic:ident> )* - $( ( $( $rest_modules_args:ident ),* ) )* - ),* - } - )*, - )* + $( $rest:tt )* ) => { construct_runtime!( - $runtime; - $block; - $node_block; - $uncheckedextrinsic; - $log_internal < $( $log_genarg ),* >; - $( - $expanded_name: $expanded_module::{ - $( - $expanded_modules - $( <$expanded_modules_generic> )* - $( ( $( $expanded_modules_args ),* ) )* - ),* - }, - )* $name: $module::{Module, Call, Storage, Event, Config}; - $( - $rest_name: $rest_module $( - ::{ - $( - $rest_modules - $( <$rest_modules_generic> )* - $( ( $( $rest_modules_args ),* ) )* - ),* - } - )*, - )* + { $( $preset )* }; + { $( $expanded )* $name: $module::{Module, Call, Storage, Event, Config}, }; + $( $rest )* ); }; ( - $runtime:ident; - $block:ident; - $node_block:ty; - $uncheckedextrinsic:ident; - $log_internal:ident <$( $log_genarg:ty ),+>; - $( - $expanded_name:ident: $expanded_module:ident::{ - $( - $expanded_modules:ident - $( <$expanded_modules_generic:ident> )* - $( ( $( $expanded_modules_args:ident ),* ) )* - ),* - } - ),*; + { $( $preset:tt )* }; + { $( $expanded:tt )* }; $name:ident: $module:ident::{ default, $( $modules:ident - $( <$modules_generic:ident> )* + $( <$modules_generic:ident $(, $modules_instance:ident)?> )* $( ( $( $modules_args:ident ),* ) )* ),* }, - $( - $rest_name:ident: $rest_module:ident $( - ::{ - $( - $rest_modules:ident - $( <$rest_modules_generic:ident> )* - $( ( $( $rest_modules_args:ident ),* ) )* - ),* - } - )*, - )* + $( $rest:tt )* ) => { construct_runtime!( - $runtime; - $block; - $node_block; - $uncheckedextrinsic; - $log_internal < $( $log_genarg ),* >; - $( - $expanded_name: $expanded_module::{ + { $( $preset )* }; + { + $( $expanded )* + $name: $module::{ + Module, Call, Storage, Event, Config, $( - $expanded_modules - $( <$expanded_modules_generic> )* - $( ( $( $expanded_modules_args ),* ) )* + $modules $( <$modules_generic $(, $modules_instance)?> )* + $( ( $( $modules_args ),* ) )* ),* }, - )* - $name: $module::{ - Module, Call, Storage, Event, Config, - $( - $modules $( <$modules_generic> )* $( ( $( $modules_args ),* ) )* - ),* }; - $( - $rest_name: $rest_module $( - ::{ - $( - $rest_modules - $( <$rest_modules_generic> )* - $( ( $( $rest_modules_args ),* ) )* - ),* - } - )*, - )* + $( $rest )* ); }; ( - $runtime:ident; - $block:ident; - $node_block:ty; - $uncheckedextrinsic:ident; - $log_internal:ident <$( $log_genarg:ty ),+>; - $( - $expanded_name:ident: $expanded_module:ident::{ - $( - $expanded_modules:ident - $( <$expanded_modules_generic:ident> )* - $( ( $( $expanded_modules_args:ident ),* ) )* - ),* - } - ),*; + { $( $preset:tt )* }; + { $( $expanded:tt )* }; $name:ident: $module:ident::{ $( $modules:ident @@ -240,69 +149,70 @@ macro_rules! construct_runtime { $( ( $( $modules_args:ident ),* ) )* ),* }, - $( - $rest_name:ident: $rest_module:ident $( - ::{ - $( - $rest_modules:ident - $( <$rest_modules_generic:ident> )* - $( ( $( $rest_modules_args:ident ),* ) )* - ),* - } - )*, - )* + $( $rest:tt )* ) => { construct_runtime!( - $runtime; - $block; - $node_block; - $uncheckedextrinsic; - $log_internal < $( $log_genarg ),* >; - $( - $expanded_name: $expanded_module::{ + { $( $preset )* }; + { + $( $expanded )* + $name: $module::{ $( - $expanded_modules - $( <$expanded_modules_generic> )* - $( ( $( $expanded_modules_args ),* ) )* + $modules $( <$modules_generic> )* + $( ( $( $modules_args ),* ) )* ),* }, - )* - $name: $module::{ - $( - $modules $( <$modules_generic> )* $( ( $( $modules_args ),* ) )* - ),* }; + $( $rest )* + ); + }; + ( // Instance module: we indicate the generic instance `I` with the full instance path + { $( $preset:tt )* }; + { $( $expanded:tt )* }; + $name:ident: $module:ident ::< $module_instance:ident >::{ $( - $rest_name: $rest_module $( - ::{ - $( - $rest_modules - $( <$rest_modules_generic> )* - $( ( $( $rest_modules_args ),* ) )* - ),* - } - )*, - )* + $modules:ident + $( <$modules_generic:ident $(, $modules_instance:ident )?> )* + $( ( $( $modules_args:ident ),* ) )* + ),* + }, + $( $rest:tt )* + ) => { + construct_runtime!( + { $( $preset )* }; + { + $( $expanded )* + $name: $module::<$module_instance>::{ + $( + $modules $( <$modules_generic $(, $modules_instance=$module::$module_instance)?> )* + $( ( $( $modules_args ),* ) )* + ),* + }, + }; + $( $rest )* ); }; // The main macro expansion that actually renders the Runtime code. ( - $runtime:ident; - $block:ident; - $node_block:ty; - $uncheckedextrinsic:ident; - $log_internal:ident <$( $log_genarg:ty ),+>; - $( - $name:ident: $module:ident::{ - $( - $modules:ident - $( <$modules_generic:ident> )* - $( ( $( $modules_args:ident ),* ) )* - ),* - } - ),*; + { + $runtime:ident; + $block:ident; + $node_block:ty; + $uncheckedextrinsic:ident; + $log_internal:ident <$( $log_genarg:ty ),+>; + }; + { + $( + $name:ident: $module:ident :: $( < $module_instance:ident >:: )? { + $( + $modules:ident + $( <$modules_generic:ident $(, I=$modules_instance:path)?> )* + $( ( $( $modules_args:ident ),* ) )* + ),* + }, + )* + }; ) => { #[derive(Clone, Copy, PartialEq, Eq)] #[cfg_attr(feature = "std", derive(Debug))] @@ -313,54 +223,59 @@ macro_rules! construct_runtime { impl $crate::runtime_primitives::traits::GetRuntimeBlockType for $runtime { type RuntimeBlock = $block; } + $crate::__decl_instance_import!( + $( $( $module < $module_instance > )? )* + ); $crate::__decl_outer_event!( $runtime; $( - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } + $name: $module:: $( < $module_instance >:: )? { $( $modules $( <$modules_generic $(, $modules_instance)?> )* ),* } ),* ); $crate::__decl_outer_origin!( $runtime; $( - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } + $name: $module:: $( < $module_instance >:: )? { $( $modules $( <$modules_generic $(, $modules_instance)?> )* ),* } ),* ); $crate::__decl_all_modules!( $runtime; ; - ; + {}; $( - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } - ),*; + $name: $module:: $( < $module_instance >:: )? { $( $modules ),* }, + )* ); $crate::__decl_outer_dispatch!( $runtime; ; $( - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } + $name: $module::{ $( $modules ),* } ),*; ); $crate::__decl_runtime_metadata!( $runtime; - ; + {}; $( - $name: $module::{ $( $modules )* } + $name: $module:: $( < $module_instance >:: )? { $( $modules )* } )* ); $crate::__decl_outer_log!( $runtime; $log_internal < $( $log_genarg ),* >; - ; + {}; $( - $name: $module::{ $( $modules $( ( $( $modules_args ),* ) )* ),* } - ),*; + $name: $module:: $( < $module_instance >:: )? { $( $modules $( ( $( $modules_args )* ) )* )* } + )* ); $crate::__decl_outer_config!( $runtime; - ; + {}; $( - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } - ),*; + $name: $module:: $( < $module_instance >:: )? { + $( $modules $( <$modules_generic $(, $modules_instance)?> )* ),* + }, + )* ); $crate::__decl_outer_inherent!( $runtime; @@ -392,121 +307,135 @@ macro_rules! __create_decl_macro { macro_rules! $macro_name { ( $runtime:ident; - $d( $name:ident : $module:ident::{ - $d( $modules:ident $d( <$modules_generic:ident> )* ),* + $d( $name:ident : $module:ident:: $d( < $module_instance:ident >:: )? { + $d( $modules:ident $d( <$modules_generic:ident $d(, $modules_instance:path)?> ),* ),* }),* ) => { $d crate::$macro_name!(@inner $runtime; ; - ; + {}; $d( - $name: $module::{ - $d( $modules $d( <$modules_generic> )* ),* - } - ),*; + $name: $module:: $d( < $module_instance >:: )? { + $d( $modules $d( <$modules_generic $d(, $modules_instance)?> )* ),* + }, + )* ); }; (@inner $runtime:ident; ; // there can not be multiple `System`s - $d( $parsed_modules:ident $d( <$parsed_generic:ident> )* ),*; + { $d( $parsed:tt )* }; System: $module:ident::{ - $ingore:ident $d( <$ignor:ident> )* $d(, $modules:ident $d( <$modules_generic:ident> )* )* - } - $d(, $rest_name:ident : $rest_module:ident::{ - $d( $rest_modules:ident $d( <$rest_modules_generic:ident> )* ),* - })*; + $d( $modules:ident $d( <$modules_generic:ident> )* ),* + }, + $d( $rest:tt )* ) => { $d crate::$macro_name!(@inner $runtime; $module; - $d( $parsed_modules $d( <$parsed_generic> )* ),*; - $d( - $rest_name: $rest_module::{ - $d( $rest_modules $d( <$rest_modules_generic> )* ),* - } - ),*; + { $d( $parsed )* }; + $d( $rest )* ); }; (@inner $runtime:ident; - $d( $system:ident )*; - $d( $parsed_modules:ident $d( <$parsed_generic:ident> )* ),*; - $name:ident: $module:ident::{ - $macro_enum_name $d( <$event_gen:ident> )* $d(, $modules:ident $d( <$modules_generic:ident> )* )* - } - $d(, $rest_name:ident : $rest_module:ident::{ - $d( $rest_modules:ident $d( <$rest_modules_generic:ident> )* ),* - })*; + $d( $system:ident )?; + { $d( $parsed:tt )* }; + $name:ident : $module:ident:: < $module_instance:ident >:: { + $macro_enum_name <$event_generic:ident, $event_instance:path> $d(, $ingore:ident $d( <$ignor:ident $d(, $ignore_instance:path)?> )* )* + }, + $d( $rest:tt )* ) => { $d crate::$macro_name!(@inner $runtime; - $d( $system )*; - $d( - $parsed_modules $d( <$parsed_generic> )* , )* - $module $d( <$event_gen> )*; - $d( - $rest_name: $rest_module::{ - $d( $rest_modules $d( <$rest_modules_generic> )* ),* - } - ),*; + $d( $system )?; + { + $d( $parsed )* + $module $module_instance <$event_generic, $event_instance>, + }; + $d( $rest )* ); }; (@inner $runtime:ident; - $d( $system:ident )*; - $d( $parsed_modules:ident $d( <$parsed_generic:ident> )* ),*; - $name:ident: $module:ident::{ - $ingore:ident $d( <$ignor:ident> )* $d(, $modules:ident $d( <$modules_generic:ident> )* )* - } - $d(, $rest_name:ident : $rest_module:ident::{ - $d( $rest_modules:ident $d( <$rest_modules_generic:ident> )* ),* - })*; + $d( $system:ident )?; + { $d( $parsed:tt )* }; + $name:ident : $module:ident:: < $module_instance:ident >:: { + $macro_enum_name $d( <$event_generic:ident> )* $d(, $ingore:ident $d( <$ignor:ident $d(, $ignore_instance:path)?> )* )* + }, + $d( $rest:tt )* + ) => { + compile_error!{concat!{ + "Module `", stringify!{$name}, "` must have `", stringify!{$macro_enum_name}, "`", + " but has `", stringify!{$macro_enum_name} $d(, "<", stringify!{$event_generic}, ">")*, "`", + ": Instantiated modules must have ", stringify!{$macro_enum_name}, + " generic over instance to be able to convert to outer ", stringify!{$macro_enum_name} + }} + }; + (@inner + $runtime:ident; + $d( $system:ident )?; + { $d( $parsed:tt )* }; + $name:ident : $module:ident:: { + $macro_enum_name $d( <$event_generic:ident $d(, $event_instance:path)?> )* $d(, $ingore:ident $d( <$ignor:ident $d(, $ignore_instance:path)?> )* )* + }, + $d( $rest:tt )* ) => { $d crate::$macro_name!(@inner $runtime; - $d( $system )*; - $d( $parsed_modules $d( <$parsed_generic> )* ),*; - $name: $module::{ $d( $modules $d( <$modules_generic> )* ),* } - $d( - , $rest_name: $rest_module::{ - $d( $rest_modules $d( <$rest_modules_generic> )* ),* - } - )*; + $d( $system )?; + { + $d( $parsed )* + $module $d( <$event_generic $d(, $event_instance)?> )*, + }; + $d( $rest )* ); }; (@inner $runtime:ident; - $d( $system:ident )*; - $d( $parsed_modules:ident $d( <$parsed_generic:ident> )* ),*; - $name:ident: $module:ident::{} - $d(, $rest_name:ident : $rest_module:ident::{ - $d( $rest_modules:ident $d( <$rest_modules_generic:ident> )* ),* - })*; + $d( $system:ident )?; + { $d( $parsed:tt )* }; + $name:ident : $module:ident:: $d( < $module_instance:ident >:: )? { + $ingore:ident $d( <$ignor:ident $d(, $ignore_instance:path)?> )* $d(, $modules:ident $d( <$modules_generic:ident $d(, $modules_instance:path)?> )* )* + }, + $d( $rest:tt )* ) => { $d crate::$macro_name!(@inner $runtime; - $d( $system )*; - $d( $parsed_modules $d( <$parsed_generic> )* ),*; - $d( - $rest_name: $rest_module::{ - $d( $rest_modules $d( <$rest_modules_generic> )* ),* - } - ),*; + $d( $system )?; + { $d( $parsed )* }; + $name: $module:: $d( < $module_instance >:: )? { $d( $modules $d( <$modules_generic $d(, $modules_instance)?> )* ),* }, + $d( $rest )* ); }; (@inner $runtime:ident; - $d( $system:ident )+; - $d( $parsed_modules:ident $d( <$parsed_generic:ident> )* ),*; - ; + $d( $system:ident )?; + { $d( $parsed:tt )* }; + $name:ident: $module:ident:: $d( < $module_instance:ident >:: )? {}, + $d( $rest:tt )* ) => { - $d crate::$macro_outer_name! { - pub enum $macro_enum_name for $runtime where system = $d( $system )* { - $d( - $parsed_modules $d( <$parsed_generic> )*, - )* + $d crate::$macro_name!(@inner + $runtime; + $d( $system )?; + { $d( $parsed )* }; + $d( $rest )* + ); + }; + (@inner + $runtime:ident; + $system:ident; + { $d( $parsed_modules:ident $d( $instance:ident )? $d( <$parsed_generic:ident $d(, $parsed_instance_full_path:path)?> )* ,)* }; + ) => { + $d crate::paste::item! { + $d crate::$macro_outer_name! { + + pub enum $macro_enum_name for $runtime where system = $system { + $d( + [< $parsed_modules $d(_ $instance )? >] $d( <$parsed_generic $d(, $parsed_instance_full_path)?> )*, + )* + } } } } @@ -524,99 +453,71 @@ macro_rules! __decl_all_modules { ( $runtime:ident; ; - $( $parsed_modules:ident :: $parsed_name:ident ),*; - System: $module:ident::{ - Module $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + { $( $parsed:tt )* }; + System: $module:ident::{ Module $(, $modules:ident )* }, + $( $rest:tt )* ) => { $crate::__decl_all_modules!( $runtime; $module; - $( $parsed_modules :: $parsed_name ),*; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + { $( $parsed )* }; + $( $rest )* ); }; ( $runtime:ident; - $( $system:ident )*; - $( $parsed_modules:ident :: $parsed_name:ident ),*; - $name:ident: $module:ident::{ - Module $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + $( $system:ident )?; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { Module $(, $modules:ident )* }, + $( $rest:tt )* ) => { $crate::__decl_all_modules!( $runtime; - $( $system )*; - $( $parsed_modules :: $parsed_name, )* $module::$name; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + $( $system )?; + { + $( $parsed )* + $module::$name $(<$module_instance>)?, + }; + $( $rest )* ); }; ( $runtime:ident; - $( $system:ident )*; - $( $parsed_modules:ident :: $parsed_name:ident ),*; - $name:ident: $module:ident::{ - $ingore:ident $( <$ignor:ident> )* $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + $( $system:ident )?; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { $ingore:ident $(, $modules:ident )* }, + $( $rest:tt )* ) => { $crate::__decl_all_modules!( $runtime; - $( $system )*; - $( $parsed_modules :: $parsed_name ),*; - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } - $( - , $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - )*; + $( $system )?; + { $( $parsed )* }; + $name: $module::{ $( $modules ),* }, + $( $rest )* ); }; ( $runtime:ident; - $( $system:ident )*; - $( $parsed_modules:ident :: $parsed_name:ident ),*; - $name:ident: $module:ident::{} - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + $( $system:ident )?; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? {}, + $( $rest:tt )* ) => { $crate::__decl_all_modules!( $runtime; - $( $system )*; - $( $parsed_modules :: $parsed_name ),*; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + $( $system )?; + { $( $parsed )* }; + $( $rest )* ); }; ( $runtime:ident; $system:ident; - $( $parsed_modules:ident :: $parsed_name:ident ),*; - ; + { $( $parsed_module:ident :: $parsed_name:ident $(<$instance:ident>)? ,)*}; ) => { pub type System = system::Module<$runtime>; $( - pub type $parsed_name = $parsed_modules::Module<$runtime>; + pub type $parsed_name = $parsed_module::Module<$runtime $(, $parsed_module::$instance )?>; )* type AllModules = ( $( $parsed_name, )* ); } @@ -726,84 +627,68 @@ macro_rules! __decl_runtime_metadata { // leading is Module : parse ( $runtime:ident; - $( $parsed_modules:ident { $( $withs:ident )* } )*; + { $( $parsed:tt )* }; $( { leading_module: $( $leading_module:ident )* } )? - $name:ident: $module:ident::{ + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { Module $( $modules:ident )* } - $( $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident )* - })* + $( $rest:tt )* ) => { $crate::__decl_runtime_metadata!( $runtime; - $( $parsed_modules { $( $withs )* } )* $module { $( $( $leading_module )* )? $( $modules )* }; - $( - $rest_name: $rest_module::{ - $( $rest_modules )* - } - )* + { + $( $parsed )* + $module $( < $module_instance > )? { $( $( $leading_module )* )? $( $modules )* } + }; + $( $rest )* ); }; // leading isn't Module : put it in leadings ( $runtime:ident; - $( $parsed_modules:ident { $( $withs:ident )* } )*; + { $( $parsed:tt )* }; $( { leading_module: $( $leading_module:ident )* } )? - $name:ident: $module:ident::{ + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { $other_module:ident $( $modules:ident )* } - $( $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident )* - })* + $( $rest:tt )* ) => { $crate::__decl_runtime_metadata!( $runtime; - $( $parsed_modules { $( $withs )* } )*; + { $( $parsed )* }; { leading_module: $( $( $leading_module )* )? $other_module } - $name: $module::{ + $name: $module:: $( < $module_instance >:: )? { $( $modules )* } - $( - $rest_name: $rest_module::{ - $( $rest_modules )* - } - )* + $( $rest )* ); }; // does not contain Module : skip ( $runtime:ident; - $( $parsed_modules:ident { $( $withs:ident )* } )*; + { $( $parsed:tt )* }; $( { leading_module: $( $leading_module:ident )* } )? - $name:ident: $module:ident::{} - $( $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident )* - })* + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? {} + $( $rest:tt )* ) => { $crate::__decl_runtime_metadata!( $runtime; - $( $parsed_modules { $( $withs )* } )*; - $( - $rest_name: $rest_module::{ - $( $rest_modules )* - } - )* + { $( $parsed )* }; + $( $rest )* ); }; // end of decl ( $runtime:ident; - $( $parsed_modules:ident { $( $withs:ident )* } )*; + { $( $parsed_modules:ident $( < $module_instance:ident > )? { $( $withs:ident )* } )* }; ) => { $crate::impl_runtime_metadata!( for $runtime with modules - $( $parsed_modules::Module with $( $withs )* , )* + $( $parsed_modules::Module $( < $module_instance > )? with $( $withs )* , )* ); } } - /// A private macro that generates Log enum for the runtime. See impl_outer_log macro. #[macro_export] #[doc(hidden)] @@ -811,80 +696,65 @@ macro_rules! __decl_outer_log { ( $runtime:ident; $log_internal:ident <$( $log_genarg:ty ),+>; - $( $parsed_modules:ident( $( $parsed_args:ident ),* ) ),*; - $name:ident: $module:ident::{ - Log ( $( $args:ident ),* ) $(, $modules:ident $( ( $( $modules_args:ident )* ) )* )* + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $(<$module_instance:ident>::)? { + Log ( $( $args:ident )* ) $( $modules:ident $( ( $( $modules_args:ident )* ) )* )* } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( ( $( $rest_modules_args:ident )* ) )* ),* - })*; + $( $rest:tt )* ) => { $crate::__decl_outer_log!( $runtime; $log_internal < $( $log_genarg ),* >; - $( $parsed_modules ( $( $parsed_args ),* ), )* $module ( $( $args ),* ); - $( - $rest_name: $rest_module::{ - $( $rest_modules $( ( $( $rest_modules_args ),* ) )* ),* - } - ),*; + { $( $parsed )* $module $(<$module_instance>)? ( $( $args )* )}; + $( $rest )* ); }; ( $runtime:ident; $log_internal:ident <$( $log_genarg:ty ),+>; - $( $parsed_modules:ident( $( $parsed_args:ident ),* ) ),*; - $name:ident: $module:ident::{ - $ignore:ident $( ( $( $args_ignore:ident ),* ) )* - $(, $modules:ident $( ( $( $modules_args:ident ),* ) )* )* + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $(<$module_instance:ident>::)? { + $ignore:ident $( ( $( $args_ignore:ident )* ) )* + $( $modules:ident $( ( $( $modules_args:ident )* ) )* )* } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( ( $( $rest_modules_args:ident )* ) )* ),* - })*; + $( $rest:tt )* ) => { $crate::__decl_outer_log!( $runtime; $log_internal < $( $log_genarg ),* >; - $( $parsed_modules ( $( $parsed_args ),* ) ),*; - $name: $module::{ $( $modules $( ( $( $modules_args ),* ) )* ),* } - $( - , $rest_name: $rest_module::{ - $( $rest_modules $( ( $( $rest_modules_args ),* ) )* ),* - } - )*; + { $( $parsed )* }; + $name: $module:: $(<$module_instance>::)? { $( $modules $( ( $( $modules_args )* ) )* )* } + $( $rest )* ); }; ( $runtime:ident; $log_internal:ident <$( $log_genarg:ty ),+>; - $( $parsed_modules:ident( $( $parsed_args:ident ),* ) ),*; - $name:ident: $module:ident::{} - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( ( $( $rest_modules_args:ident )* ) )* ),* - })*; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $(<$module_instance:ident>::)? {} + $( $rest:tt )* ) => { $crate::__decl_outer_log!( $runtime; $log_internal < $( $log_genarg ),* >; - $( $parsed_modules ( $( $parsed_args ),* ) ),*; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( ( $( $rest_modules_args ),* ) )* ),* - } - ),*; + { $( $parsed )* }; + $( $rest )* ); }; ( $runtime:ident; $log_internal:ident <$( $log_genarg:ty ),+>; - $( $parsed_modules:ident( $( $parsed_args:ident ),* ) ),*; - ; + { $( + $parsed_modules:ident $(< $parsed_instance:ident >)? ( $( $parsed_args:ident )* ) + )* }; ) => { - $crate::runtime_primitives::impl_outer_log!( - pub enum Log($log_internal: DigestItem<$( $log_genarg ),*>) for $runtime { - $( $parsed_modules ( $( $parsed_args ),* ) ),* - } - ); + $crate::paste::item! { + $crate::runtime_primitives::impl_outer_log!( + pub enum Log($log_internal: DigestItem<$( $log_genarg ),*>) for $runtime { + $( [< $parsed_modules $(_ $parsed_instance)? >] $(< $parsed_modules::$parsed_instance >)? ( $( $parsed_args ),* ) ),* + } + ); + } }; } @@ -894,93 +764,57 @@ macro_rules! __decl_outer_log { macro_rules! __decl_outer_config { ( $runtime:ident; - $( $parsed_modules:ident :: $parsed_name:ident $( < $parsed_generic:ident > )* ),*; - $name:ident: $module:ident::{ - Config $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { + Config $(< $config_generic:ident $(, $config_instance:path)?>)? $(, $modules:ident $( <$modules_generic:ident $(, $modules_instance:path)?> )* )* + }, + $( $rest:tt )* ) => { $crate::__decl_outer_config!( $runtime; - $( $parsed_modules :: $parsed_name $( < $parsed_generic > )*, )* $module::$name; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + { + $( $parsed )* + $module::$name $( $module_instance )? $(<$config_generic $(, $config_instance)?>)?, + }; + $( $rest )* ); }; ( $runtime:ident; - $( $parsed_modules:ident :: $parsed_name:ident $( < $parsed_generic:ident > )* ),*; - $name:ident: $module:ident::{ - Config $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? { + $ingore:ident $( <$ignor:ident $(, $ignore_instance:path)?> )* $(, $modules:ident $( <$modules_generic:ident $(, $modules_instance:path)?> )* )* + }, + $( $rest:tt )* ) => { $crate::__decl_outer_config!( $runtime; - $( $parsed_modules :: $parsed_name $( < $parsed_generic > )*, )* $module::$name; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + { $( $parsed )* }; + $name: $module:: $( < $module_instance >:: )? { $( $modules $( <$modules_generic $(, $modules_instance)?> )* ),* }, + $( $rest )* ); }; ( $runtime:ident; - $( $parsed_modules:ident :: $parsed_name:ident $( < $parsed_generic:ident > )* ),*; - $name:ident: $module:ident::{ - $ingore:ident $( <$ignor:ident> )* $(, $modules:ident $( <$modules_generic:ident> )* )* - } - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; + { $( $parsed:tt )* }; + $name:ident: $module:ident:: $( < $module_instance:ident >:: )? {}, + $( $rest:tt )* ) => { $crate::__decl_outer_config!( $runtime; - $( $parsed_modules :: $parsed_name $( < $parsed_generic > )*),*; - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } - $( - , $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - )*; + { $( $parsed )* }; + $( $rest )* ); }; ( $runtime:ident; - $( $parsed_modules:ident :: $parsed_name:ident $( < $parsed_generic:ident > )* ),*; - $name:ident: $module:ident::{} - $(, $rest_name:ident : $rest_module:ident::{ - $( $rest_modules:ident $( <$rest_modules_generic:ident> )* ),* - })*; - ) => { - $crate::__decl_outer_config!( - $runtime; - $( $parsed_modules :: $parsed_name $( < $parsed_generic > )*),*; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; - ); - }; - ( - $runtime:ident; - $( $parsed_modules:ident :: $parsed_name:ident $( < $parsed_generic:ident > )* ),*; - ; + {$( $parsed_modules:ident :: $parsed_name:ident $( $parsed_instance:ident )? $( < $parsed_generic:ident $(, $parsed_instance_full_path:path)? > )* ,)* }; ) => { $crate::paste::item! { $crate::runtime_primitives::impl_outer_config!( pub struct GenesisConfig for $runtime { $( - [< $parsed_name Config >] => $parsed_modules $( < $parsed_generic > )*, + [< $parsed_name Config >] => [< $parsed_modules $( _ $parsed_instance)? >] $( < $parsed_generic $(, $parsed_instance_full_path)? > )*, )* } ); @@ -1102,3 +936,14 @@ macro_rules! __decl_outer_inherent { ); }; } + +#[macro_export] +#[doc(hidden)] +// Those imports are used by event, config, origin and log macros to get access to its inner type +macro_rules! __decl_instance_import { + ( $( $module:ident <$instance:ident> )* ) => { + $crate::paste::item! { + $(use $module as [< $module _ $instance >];)* + } + }; +} diff --git a/substrate/srml/support/test/Cargo.toml b/substrate/srml/support/test/Cargo.toml new file mode 100644 index 0000000000..e1113eb468 --- /dev/null +++ b/substrate/srml/support/test/Cargo.toml @@ -0,0 +1,25 @@ +[package] +name = "srml-support-test" +version = "0.1.0" +authors = ["thiolliere "] +edition = "2018" + +[dev-dependencies] +serde = { version = "1.0", default-features = false } +serde_derive = { version = "1.0" } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } +runtime_io = { package = "sr-io", path = "../../../core/sr-io", default-features = false } +srml-support = { path = "../", default-features = false } +inherents = { package = "substrate-inherents", path = "../../../core/inherents", default-features = false } +primitives = { package = "substrate-primitives", path = "../../../core/primitives", default-features = false } + +[features] +default = ["std"] +std = [ + "serde/std", + "parity-codec/std", + "runtime_io/std", + "srml-support/std", + "inherents/std", + "primitives/std", +] diff --git a/substrate/srml/support/test/src/lib.rs b/substrate/srml/support/test/src/lib.rs new file mode 100644 index 0000000000..e69de29bb2 diff --git a/substrate/srml/support/test/tests/instance.rs b/substrate/srml/support/test/tests/instance.rs new file mode 100644 index 0000000000..373e3e23d0 --- /dev/null +++ b/substrate/srml/support/test/tests/instance.rs @@ -0,0 +1,457 @@ +// Copyright 2019 Parity Technologies (UK) Ltd. +// This file is part of Substrate. + +// Substrate is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Substrate is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Substrate. If not, see . + +#![recursion_limit="128"] + +#[cfg(feature = "std")] +use serde_derive::Serialize; +use runtime_io::{with_externalities, Blake2Hasher}; +use srml_support::rstd::prelude::*; +use srml_support::rstd as rstd; +use srml_support::codec::{Encode, Decode}; +use srml_support::runtime_primitives::{generic, BuildStorage}; +use srml_support::runtime_primitives::traits::{BlakeTwo256, Block as _, Verify, Digest}; +use srml_support::{Parameter, construct_runtime, decl_module, decl_storage, decl_event}; +use inherents::{ + ProvideInherent, InherentData, InherentIdentifier, RuntimeString, MakeFatalError +}; +use srml_support::{StorageValue, StorageMap}; +use primitives::{H256, sr25519}; + +pub trait Currency { +} + +// Mock +mod system { + use super::*; + + pub trait Trait: 'static + Eq + Clone { + type Origin: Into>> + From>; + type BlockNumber; + type Digest: Digest; + type Hash; + type AccountId; + type Event: From; + type Log: From> + Into>; + } + + pub type DigestItemOf = <::Digest as Digest>::Item; + + decl_module! { + pub struct Module for enum Call where origin: T::Origin { + pub fn deposit_event(_event: T::Event) { + } + } + } + impl Module { + pub fn deposit_log(_item: ::Item) { + unimplemented!(); + } + } + + decl_event!( + pub enum Event { + ExtrinsicSuccess, + ExtrinsicFailed, + } + ); + + /// Origin for the system module. + #[derive(PartialEq, Eq, Clone)] + #[cfg_attr(feature = "std", derive(Debug))] + pub enum RawOrigin { + Root, + Signed(AccountId), + Inherent, + } + + impl From> for RawOrigin { + fn from(s: Option) -> RawOrigin { + match s { + Some(who) => RawOrigin::Signed(who), + None => RawOrigin::Inherent, + } + } + } + + pub type Origin = RawOrigin<::AccountId>; + + pub type Log = RawLog< + ::Hash, + >; + + #[cfg_attr(feature = "std", derive(Serialize, Debug))] + #[derive(Encode, Decode, PartialEq, Eq, Clone)] + pub enum RawLog { + ChangesTrieRoot(H), + } + + pub fn ensure_root(o: OuterOrigin) -> Result<(), &'static str> + where OuterOrigin: Into>> + { + match o.into() { + Some(RawOrigin::Root) => Ok(()), + _ => Err("bad origin: expected to be a root origin"), + } + } +} + +// Test for: +// * No default instance +// * Custom InstantiableTrait +// * Origin, Inherent, Log, Event +mod module1 { + use super::*; + + pub trait Trait: system::Trait { + type Event: From> + Into<::Event>; + type Origin: From>; + type Log: From> + Into>; + } + + decl_module! { + pub struct Module, I: InstantiableThing> for enum Call where origin: ::Origin { + fn deposit_event() = default; + + fn one() { + Self::deposit_event(RawEvent::AnotherVariant(3)); + Self::deposit_log(RawLog::AmountChange(3)); + } + } + } + + impl, I: InstantiableThing> Module { + /// Deposit one of this module's logs. + fn deposit_log(log: Log) { + >::deposit_log(>::Log::from(log).into()); + } + } + + decl_storage! { + trait Store for Module, I: InstantiableThing> as Module1 { + pub Value config(value): u64; + pub Map: map u32 => u64; + pub LinkedMap: linked_map u32 => u64; + } + } + + decl_event! { + pub enum Event where Phantom = rstd::marker::PhantomData { + _Phantom(Phantom), + AnotherVariant(u32), + } + } + + #[derive(PartialEq, Eq, Clone)] + #[cfg_attr(feature = "std", derive(Debug))] + pub enum Origin, I> { + Members(u32), + _Phantom(rstd::marker::PhantomData<(T, I)>), + } + + pub type Log = RawLog< + T, + I, + >; + + /// A logs in this module. + #[cfg_attr(feature = "std", derive(serde_derive::Serialize, Debug))] + #[derive(parity_codec::Encode, parity_codec::Decode, PartialEq, Eq, Clone)] + pub enum RawLog { + _Phantom(rstd::marker::PhantomData<(T, I)>), + AmountChange(u32), + } + + pub const INHERENT_IDENTIFIER: InherentIdentifier = *b"12345678"; + + impl, I: InstantiableThing> ProvideInherent for Module { + type Call = Call; + type Error = MakeFatalError; + const INHERENT_IDENTIFIER: InherentIdentifier = INHERENT_IDENTIFIER; + + fn create_inherent(_data: &InherentData) -> Option { + unimplemented!(); + } + + fn check_inherent(_call: &Self::Call, _data: &InherentData) -> rstd::result::Result<(), Self::Error> { + unimplemented!(); + } + } +} + +// Test for: +// * default instance +// * use of no_genesis_config_phantom_data +mod module2 { + use super::*; + + pub trait Trait: system::Trait { + type Amount: Parameter + Default; + type Event: From> + Into<::Event>; + type Origin: From>; + type Log: From> + Into>; + } + + impl, I: Instance> Currency for Module {} + + decl_module! { + pub struct Module, I: Instance=DefaultInstance> for enum Call where origin: ::Origin { + fn deposit_event() = default; + } + } + + decl_storage! { + trait Store for Module, I: Instance=DefaultInstance> as Module2 { + pub Value config(value): T::Amount; + pub Map config(map): map u64 => u64; + pub LinkedMap config(linked_map): linked_map u64 => u64; + } + extra_genesis_skip_phantom_data_field; + } + + decl_event! { + pub enum Event where Amount = >::Amount { + Variant(Amount), + } + } + + #[derive(PartialEq, Eq, Clone)] + #[cfg_attr(feature = "std", derive(Debug))] + pub enum Origin, I=DefaultInstance> { + Members(u32), + _Phantom(rstd::marker::PhantomData<(T, I)>), + } + + pub type Log = RawLog< + T, + I, + >; + + /// A logs in this module. + #[cfg_attr(feature = "std", derive(serde_derive::Serialize, Debug))] + #[derive(parity_codec::Encode, parity_codec::Decode, PartialEq, Eq, Clone)] + pub enum RawLog { + _Phantom(rstd::marker::PhantomData<(T, I)>), + AmountChange(u32), + } + + pub const INHERENT_IDENTIFIER: InherentIdentifier = *b"12345678"; + + impl, I: Instance> ProvideInherent for Module { + type Call = Call; + type Error = MakeFatalError; + const INHERENT_IDENTIFIER: InherentIdentifier = INHERENT_IDENTIFIER; + + fn create_inherent(_data: &InherentData) -> Option { + unimplemented!(); + } + + fn check_inherent(_call: &Self::Call, _data: &InherentData) -> rstd::result::Result<(), Self::Error> { + unimplemented!(); + } + } +} + +// Test for: +// * Depends on multiple instances of a module with instances +mod module3 { + use super::*; + + pub trait Trait: module2::Trait + module2::Trait + system::Trait { + type Currency: Currency; + type Currency2: Currency; + } + + decl_module! { + pub struct Module for enum Call where origin: ::Origin { + } + } +} + +impl module1::Trait for Runtime { + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module1::Trait for Runtime { + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module2::Trait for Runtime { + type Amount = u16; + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module2::Trait for Runtime { + type Amount = u32; + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module2::Trait for Runtime { + type Amount = u32; + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module2::Trait for Runtime { + type Amount = u64; + type Event = Event; + type Origin = Origin; + type Log = Log; +} +impl module3::Trait for Runtime { + type Currency = Module2_2; + type Currency2 = Module2_3; +} + +pub type Signature = sr25519::Signature; +pub type AccountId = ::Signer; +pub type BlockNumber = u64; +pub type Index = u64; + +impl system::Trait for Runtime { + type Hash = H256; + type Origin = Origin; + type BlockNumber = BlockNumber; + type Digest = generic::Digest; + type AccountId = AccountId; + type Event = Event; + type Log = Log; +} + +construct_runtime!( + pub enum Runtime with Log(InternalLog: DigestItem) where + Block = Block, + NodeBlock = Block, + UncheckedExtrinsic = UncheckedExtrinsic + { + System: system::{Module, Call, Event, Log(ChangesTrieRoot)}, + Module1_1: module1::::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module1_2: module1::::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module2: module2::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module2_1: module2::::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module2_2: module2::::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module2_3: module2::::{Module, Call, Storage, Event, Config, Origin, Log(), Inherent}, + Module3: module3::{Module, Call}, + } +); + +pub type Header = generic::Header; +pub type Block = generic::Block; +pub type UncheckedExtrinsic = generic::UncheckedMortalCompactExtrinsic; + +fn new_test_ext() -> runtime_io::TestExternalities { + GenesisConfig{ + module1_Instance1: Some(module1::GenesisConfig { + value: 3, + .. Default::default() + }), + module1_Instance2: Some(module1::GenesisConfig { + value: 4, + _genesis_phantom_data: Default::default(), + }), + module2: Some(module2::GenesisConfig { + value: 4, + map: vec![], + linked_map: vec![], + }), + module2_Instance1: None, + module2_Instance2: None, + module2_Instance3: None, + }.build_storage().unwrap().0.into() +} + +#[test] +fn storage_instance_independance() { + with_externalities(&mut new_test_ext(), || { + let mut map = rstd::collections::btree_map::BTreeMap::new(); + for key in &[ + module2::Value::::key().to_vec(), + module2::Value::::key().to_vec(), + module2::Value::::key().to_vec(), + module2::Value::::key().to_vec(), + module2::Map::::prefix().to_vec(), + module2::Map::::prefix().to_vec(), + module2::Map::::prefix().to_vec(), + module2::Map::::prefix().to_vec(), + module2::LinkedMap::::prefix().to_vec(), + module2::LinkedMap::::prefix().to_vec(), + module2::LinkedMap::::prefix().to_vec(), + module2::LinkedMap::::prefix().to_vec(), + module2::Map::::key_for(0), + module2::Map::::key_for(0).to_vec(), + module2::Map::::key_for(0).to_vec(), + module2::Map::::key_for(0).to_vec(), + module2::LinkedMap::::key_for(0), + module2::LinkedMap::::key_for(0).to_vec(), + module2::LinkedMap::::key_for(0).to_vec(), + module2::LinkedMap::::key_for(0).to_vec(), + module2::Map::::key_for(1), + module2::Map::::key_for(1).to_vec(), + module2::Map::::key_for(1).to_vec(), + module2::Map::::key_for(1).to_vec(), + module2::LinkedMap::::key_for(1), + module2::LinkedMap::::key_for(1).to_vec(), + module2::LinkedMap::::key_for(1).to_vec(), + module2::LinkedMap::::key_for(1).to_vec(), + ] { + assert!(map.insert(key, ()).is_none()) + } + }); +} + +#[test] +fn storage_with_instance_basic_operation() { + with_externalities(&mut new_test_ext(), || { + type Value = module2::Value; + type Map = module2::Map; + type LinkedMap = module2::LinkedMap; + + assert_eq!(Value::exists(), false); + Value::put(1); + assert_eq!(Value::get(), 1); + assert_eq!(Value::take(), 1); + assert_eq!(Value::get(), 0); + Value::mutate(|a| *a=2); + assert_eq!(Value::get(), 2); + Value::kill(); + assert_eq!(Value::get(), 0); + + let key = 1; + assert_eq!(Map::exists(1), false); + Map::insert(key, 1); + assert_eq!(Map::get(key), 1); + assert_eq!(Map::take(key), 1); + assert_eq!(Map::get(key), 0); + Map::mutate(key, |a| *a=2); + assert_eq!(Map::get(key), 2); + Map::remove(key); + assert_eq!(Map::get(key), 0); + + assert_eq!(LinkedMap::exists(1), false); + LinkedMap::insert(key, 1); + assert_eq!(LinkedMap::get(key), 1); + assert_eq!(LinkedMap::take(key), 1); + assert_eq!(LinkedMap::get(key), 0); + LinkedMap::mutate(key, |a| *a=2); + assert_eq!(LinkedMap::get(key), 2); + LinkedMap::remove(key); + assert_eq!(LinkedMap::get(key), 0); + }); +} diff --git a/substrate/srml/system/Cargo.toml b/substrate/srml/system/Cargo.toml index ea2628a3a2..bd199b97f9 100644 --- a/substrate/srml/system/Cargo.toml +++ b/substrate/srml/system/Cargo.toml @@ -9,7 +9,7 @@ hex-literal = "0.1.0" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } diff --git a/substrate/srml/timestamp/Cargo.toml b/substrate/srml/timestamp/Cargo.toml index 0c089b60e6..413c487214 100644 --- a/substrate/srml/timestamp/Cargo.toml +++ b/substrate/srml/timestamp/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } inherents = { package = "substrate-inherents", path = "../../core/inherents", default-features = false } diff --git a/substrate/srml/treasury/Cargo.toml b/substrate/srml/treasury/Cargo.toml index 9bfb4b1725..825fc73532 100644 --- a/substrate/srml/treasury/Cargo.toml +++ b/substrate/srml/treasury/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false, features = ["derive"] } +parity-codec = { version = "3.2", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } srml-support = { path = "../support", default-features = false } diff --git a/substrate/srml/treasury/src/lib.rs b/substrate/srml/treasury/src/lib.rs index aa0eec6479..f571420593 100644 --- a/substrate/srml/treasury/src/lib.rs +++ b/substrate/srml/treasury/src/lib.rs @@ -36,7 +36,7 @@ type BalanceOf = <::Currency as ArithmeticType>::Type; /// `system::Trait` should always be included in our implied traits. pub trait Trait: system::Trait { /// The staking balance. - type Currency: ArithmeticType + Currency>; + type Currency: ArithmeticType + Currency::Currency as ArithmeticType>::Type>; /// Origin from which approvals must come. type ApproveOrigin: EnsureOrigin; diff --git a/substrate/srml/upgrade-key/Cargo.toml b/substrate/srml/upgrade-key/Cargo.toml index c548798dec..4bdbd6404c 100644 --- a/substrate/srml/upgrade-key/Cargo.toml +++ b/substrate/srml/upgrade-key/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] serde = { version = "1.0", optional = true } -parity-codec = { version = "3.1", default-features = false } +parity-codec = { version = "3.2", default-features = false } sr-std = { path = "../../core/sr-std", default-features = false } sr-primitives = { path = "../../core/sr-primitives", default-features = false } srml-support = { path = "../support", default-features = false }

*8f4Wfp$O&Sh`tfg_$Lh!X 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